Skip to content

spec TSDoc still describes publicSharing.enabled as mint-only and omits the switched-off block from resolveToken's null causes (#14033 follow-up) #14703

Description

@huangyiirene

Split from #14582 (item 3) by the triage seat: that card's other surface is content/docs/** (domain:devx) and this one is packages/spec/** (domain:spec), so they are separated to keep each lane's single ownership. #14582's own filer flagged packages/spec/** as a stop condition for the #14033 claim, which is why neither was fixed in PR #14580.

Not blocked. PR #14580 has landed — share-link-service.ts carries the #14033 gate on origin/main c616c2c. The behaviour is in; only the prose describing it lags.

Two stale TSDoc sites

1. packages/spec/src/data/object.zod.ts:2237

/** Master switch. When false (default), no share links can be issued for this object. */

True but no longer complete: after #14033 the switch is a standing policy held at every redemption, so with it false no link resolves either — including links minted while it was on, and links minted through the system / permissive bypass. "Can be issued" describes only the mint half.

2. packages/spec/src/contracts/share-link-service.ts

IShareLinkService.resolveToken's docs enumerate the causes of the undifferentiated null — unknown, revoked, expired, audience, password, record gone (#5190), ineligible (#13608, named at :41 and :236) — and do not name the switched-off block (#14033), which is now one of them. An implementer reading the list to enumerate refusal causes gets an incomplete set.

Scope

TSDoc only. No schema change, no shape change, no behaviour change.

Do not change the .describe() string on publicSharing.enabled. #14582's filer measured the consequence and it is the reason this is prose-only: .describe() feeds content/docs/references/**, so changing it requires gen:schema && gen:docs and moves generated files. The TSDoc comment above it carries the correction instead.

⛔ Not Clause ②: nothing about the accept/reject set moves and no public surface widens.

Re-check

git show origin/main:packages/spec/src/data/object.zod.ts | sed -n '2237p'
git grep -n "13608\|14033" origin/main -- packages/spec/src/contracts/share-link-service.ts

Refs: #14582 (parent, item 3 — items 2 remains there) · #14033 (the ruling) · PR #14580 (the implementation, landed) · #13608 (the sibling eligibility predicate whose prose is the model to follow)

Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions