Repository navigation
docs(spec): manage_connector_connections comments name the organization administrators' default grant - #28460
Conversation
…on administrators' default grant Three packages/spec comments still said the organization administrator holds the connector connection capability only by explicit grant. Ruling B (record 6545223261) made both shipped organization-administrator sets hold it by default; the comments now say so, and the spec test points at the plugin-security case that pins the exact holder list. Comments only. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01L9qibyawL9DFnt7gutTH6R
📓 Docs Drift CheckThis PR changes 1 package(s): 14 hand-written doc(s) NAME something this change touched and may need an implementation-accuracy re-verification:
⛔ 7 release-owned page(s) also name something this change touched. These are read-only:
What this run could not see
Coarse fallback — 168 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): Which tree this was computed onThis run read A worktree cut from an older # while this PR is open — GitHub drops the merge commit once it closes
git fetch origin ea3aa4b20ce76117faa4da8ea000c496f90b8549 && git checkout ea3aa4b20ce76117faa4da8ea000c496f90b8549
# afterwards, rebuild it from the two parents, which stay fetchable
git fetch origin 776c1d875b2d140b4c2419103a7ad8681c1d2610 4f75d57d70c822958a3d25d4cbccab15eb300700 && git checkout -B drift-repro 776c1d875b2d140b4c2419103a7ad8681c1d2610 && git merge --no-ff 4f75d57d70c822958a3d25d4cbccab15eb300700
node scripts/docs-audit/affected-docs.mjs --json 776c1d875b2d140b4c2419103a7ad8681c1d2610
|
|
triage#1 · os-tesla · session_01L9qibw58ehQ2gRHP2h2Puz Contract-review-claim: |
|
triage#1 · os-tesla · session_01L9qibw58ehQ2gRHP2h2Puz Contract reviewServed-tier: ① Derived judgments
② Rulings cited
③ Narrowing / widening
④ Behaviour / flags
Implemented-by: |
|
domain:spec#1 · os-tesla · session_01L9qibwb6hBqszPTYJobitm 维护者速读
席位核对 · ACCEPT ·
|
Requested by Tesla · project thread
Fixes #28453
Clause-②: no
Metadata-protocol: none
维护者速读
packages/spec里三处注释改为如实写明:平台管理员与两个组织管理员权限集(organization_admin、organization_admin_no_bypass)默认持有manage_connector_connections,其它岗位仍需显式授予。只改注释,不改任何代码、能力清单或测试断言。packages/spec/src/security/capabilities.ts的manage_connector_connections注释;packages/spec/src/identity/platform-admin-capabilities.test.ts改指向的 pin;packages/spec/src/identity/eval-user.zod.ts。git grep -n "organization administrator included" -- packages/spec,预期无命中。What changes
Three comments, reworded to what #28441 ships (ruling B, record 6545223261): platform administrators and the two shipped organization-administrator sets,
organization_adminandorganization_admin_no_bypass, holdmanage_connector_connectionsby default, and every other position holds it only by explicit grant.packages/spec/src/security/capabilities.ts: thePLATFORM_CAPABILITIESrow's line comment.packages/spec/src/identity/eval-user.zod.ts: the line comment above the entry inADMIN_FULL_ACCESS_CAPABILITIES.systemPermissions.packages/spec/src/identity/platform-admin-capabilities.test.ts: the case comment now says the organization-administrator sets hold it, and points at the pin feat(plugin-security): organization administrators hold manage_connector_connections by default (ADR-0143 D5, ruling B) #28441 added in plugin-security'sdefault-permission-sets.test.ts, the case[ADR-0143 D5] the connector connection capability ships with the platform administrator and both organization-administrator sets, and no other, which asserts the exact holder list.No code, capability list or test assertion changes.
Contract review: none owed. No
.describe()and no exported TSDoc moved: all three edits are//line comments inside initializers, not declaration docblocks.Changeset: none (label
skip-changeset). Measured afterpnpm --filter @objectstack/spec buildon 4f75d57: the new wording is absent from everydist/**/*.d.ts/.d.mtsfile (control: the capability'sdescriptionstring is found in dist). The bundler does carry the line comments into thedistJS chunks, so the comment bytes there change; no symbol, value or type does.Grep:
git grep -n "manage_connector_connections" -- packages/spec skills content/docsafter the edit shows no other spec sentence that contradicts the default grant. Hits outsidepackages/spec:content/docs/automation/connectors.mdx:535already says organization administrators hold it by default (updated in #28441); no hit inskills/.Tests
pnpm --filter @objectstack/spec exec vitest run --maxWorkers=2 src/identity/platform-admin-capabilities.test.tson 4f75d57:Test Files 1 passed (1),Tests 6 passed (6). No ablation: no tested behaviour moved.Acceptance notes
claude/project-thread-1t227ais the card thread's platform-assigned branch; claim 6546643088 names it.content/docs/permissions/permission-sets.mdx(theorganization_adminsummary row) was already judged out of scope in feat(plugin-security): organization administrators hold manage_connector_connections by default (ADR-0143 D5, ruling B) #28441's notes, since that row lists a subset of capabilities; not touched here.Verification
Comment-only proof
TypeScript
createPrinter({ removeComments: true })output of each changed file,origin/main(776c1d8) against HEAD (4f75d57):capabilities.ts EQUAL,eval-user.zod.ts EQUAL,platform-admin-capabilities.test.ts EQUAL.Derived gates on 4f75d57
node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstackderived 73 families from the 3-file diff. Each ran with stdin from/dev/null, exit captured by redirect before any pipe. All 73 exit 0. Three (check:doc-formula-expressions,check:dual-build-cjs-loads,check:lean-entry-closure) first exited 3, PREREQUISITE NOT MET, and were re-run after a whole-treepnpm turbo run build --filter='!@objectstack/docs' --concurrency=2(lock VERDICT command-exit 0).--ran:73 derived famil(ies) accounted for — 73 run, 0 NOT-MEASURED, exit 0.Generated by Claude Code