Linkage chore filed by the domain:services seat (#6021) on accepting PR #7206, per the scope ruling recorded on #7135. Filed with pm:queue only — domain:* is the triage seat's to apply (expected route: domain:spec, since packages/spec carries hard single ownership).
Blocked-by: #7206
Context
#6523 / PR #7068 converged 36 contract signatures onto the full ExecutionContext (#6206 ruling). The #7070 consumer split then re-annotated the implementations: PR #7140 (identity half: plugin-sharing, plugin-audit) and PR #7206 (services half: plugin-approvals, plugin-reports, closing #7135). The recorded coordination point said the second lander deletes the now-unreferenced SharingExecutionContext type; the services seat overrode that at claim time because the type is DEFINED at packages/spec/src/contracts/sharing-service.ts:191, and packages/spec transfers to the spec seat regardless of who needs it. Both halves therefore landed with the type still exported. This card is the deferred deletion.
File face (measured at origin/main @ 6146b67, re-verify at dispatch — #7206 must be MERGED first)
Remaining SharingExecutionContext references once #7206 lands:
| site |
refs |
note |
packages/spec/src/contracts/sharing-service.ts |
3 |
the definition (:191) + internal uses |
packages/spec/src/contracts/sharing-service.test.ts |
11 |
contract tests exercising the type |
packages/spec/src/contracts/approval-service.ts |
2 |
contract-file references |
packages/spec/src/contracts/report-service.ts |
2 |
contract-file references |
packages/plugins/plugin-sharing/src/index.ts |
1 |
the re-export — a public-surface removal, call it out in the changeset |
packages/plugins/plugin-sharing/src/exec-context-annotation.pin.ts |
1 |
pin references the retired name (its revert-detection depends on the type existing — the pin needs reworking or its negative cases re-anchoring, not blind deletion) |
packages/spec/api-surface/contracts.json, packages/spec/export-origins/contracts.json |
generated |
regenerate via the spec build (merge=os-regen paths — follow the four-step regen sequence, never text-merge) |
packages/spec/CHANGELOG.md + prose doc-comments in plugin-approvals/plugin-reports |
historical |
explanatory prose about what the casts replaced; fine to leave |
Cautions for the claimant
Refs: #7070, #7135 (services half, PR #7206), #7136 (identity half, PR #7140), #6523 / PR #7068, #6206 (ruling).
Linkage chore filed by the
domain:servicesseat (#6021) on accepting PR #7206, per the scope ruling recorded on #7135. Filed withpm:queueonly —domain:*is the triage seat's to apply (expected route:domain:spec, sincepackages/speccarries hard single ownership).Blocked-by: #7206
Context
#6523 / PR #7068 converged 36 contract signatures onto the full
ExecutionContext(#6206 ruling). The #7070 consumer split then re-annotated the implementations: PR #7140 (identity half: plugin-sharing, plugin-audit) and PR #7206 (services half: plugin-approvals, plugin-reports, closing #7135). The recorded coordination point said the second lander deletes the now-unreferencedSharingExecutionContexttype; the services seat overrode that at claim time because the type is DEFINED atpackages/spec/src/contracts/sharing-service.ts:191, andpackages/spectransfers to the spec seat regardless of who needs it. Both halves therefore landed with the type still exported. This card is the deferred deletion.File face (measured at
origin/main@6146b67, re-verify at dispatch — #7206 must be MERGED first)Remaining
SharingExecutionContextreferences once #7206 lands:packages/spec/src/contracts/sharing-service.ts:191) + internal usespackages/spec/src/contracts/sharing-service.test.tspackages/spec/src/contracts/approval-service.tspackages/spec/src/contracts/report-service.tspackages/plugins/plugin-sharing/src/index.tspackages/plugins/plugin-sharing/src/exec-context-annotation.pin.tspackages/spec/api-surface/contracts.json,packages/spec/export-origins/contracts.jsonmerge=os-regenpaths — follow the four-step regen sequence, never text-merge)packages/spec/CHANGELOG.md+ prose doc-comments in plugin-approvals/plugin-reportsCautions for the claimant
.pin.tsfiles added by refactor(plugin-sharing,plugin-audit): annotate enforcement on the fullExecutionContextand delete the double-casts (#7136) #7140/refactor(plugin-approvals,plugin-reports): annotate enforcement onto the fullExecutionContext(#7135) #7206 use the retired type in their reverse-verification story ("narrows back toSharingExecutionContext" is the failure they catch). Retiring the type changes what "narrowing back" can even mean — the pins' negative cases and doc headers need a deliberate pass, not a find-and-delete.check:api-surface/check:export-originswill (correctly) flag the export removals; the changeset should carry the public-surface callout forplugin-sharing's re-export and the spec export.Refs: #7070, #7135 (services half, PR #7206), #7136 (identity half, PR #7140), #6523 / PR #7068, #6206 (ruling).