Repository navigation
test(plugin-security): retire the declared-permission seeder suites (#15204 stage 6b-2, T1) - #22897
Draft
objectstack-fleet[bot] wants to merge 5 commits into
Draft
objectstack-fleet[bot] wants to merge 5 commits into
objectstack-fleet[bot] wants to merge 5 commits into
Conversation
…n seeders ahead of their retirement (#15204 stage 6b-2, T-PR) Claude-Session: https://claude.ai/code/session_013XKtmoR5QCUSTMjiQ3os49 Co-authored-by: Claude <noreply@anthropic.com>
…stage 6b-2a (#15204 stage 6b-2, T-PR) Claude-Session: https://claude.ai/code/session_013XKtmoR5QCUSTMjiQ3os49 Co-authored-by: Claude <noreply@anthropic.com>
Contributor
📓 Docs Drift CheckNothing in this diff resolved to a documentable surface (no symbol, route or SDK anchor derived from 0 changed package(s)), so this run has no opinion about the docs. What this run could not see
Coarse fallback — 0 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): |
This was referenced Oct 11, 2026
…et at the function (#15204 stage 6b-2, T1) The #11451 fence rode the declared-permission seeder's suite, which this PR deletes; the behaviour survives in permission-set-projection's overlay pass. Pinned on both reads, with a predicate-carrying positive control. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013XKtmoR5QCUSTMjiQ3os49
… directly before the code they pin (#15204 stage 6b-2, T1) Moved from the 6b-2a PR: no pin of a behaviour 6b-2 deletes leaves main before 6b-2. Their double-contract ledger entries go with them. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013XKtmoR5QCUSTMjiQ3os49
… stage 6b-2, T1) This reverts commit e98ff4c. Per the seat's correction, T2 carries the deletion so T1 stays under the 3,000-line threshold. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013XKtmoR5QCUSTMjiQ3os49
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of #15204
Clause-②: no
T1 of stage 6b-2: tests only. It deletes the suites that pin the declared-permission seeder, drift, the
managed_bynormalizer and the seed-refusal diagnostics, and trims the cases in shared suites that pin them. It is split off the 6b-2 code PR (#22900) so that PR falls under 3,000 changed lines (the ruling: tests land inside or before their code PR). No production file changes. The modules these suites pinned are deleted by #22900.Landing, as sequenced by the seat: T1, T2 and the 6b-2 code PR (#22900) stay drafts until #22900's own gates clear (the #22865 pickers and objectui PR-4), then land back to back, T1 → T2 → #22900. That way the publish materializer and the seeders are never live on
mainwith their pins gone. 6b-2a (#22899) is independent and goes to the maintainer separately.Deleted (whole files)
bootstrap-declared-permissions.test.tswalled-platform-bucket-diagnostic.test.tspermission-set-drift.test.tsbootstrap-seed-round-trips.test.tsdeclared-permission-reload-projection.test.tsnormalize-managed-by.test.tsTrimmed (only the cases that pin a deleted module)
per-organization-catalog.test.ts: case 6 (resolver bleed) is kept.permission-set-name-collision.test.ts: the shared-derivation describe is kept.read-fault-distinguishability.test.ts: reading 1 goes.engine-find-bare-array.pin.test.ts: blocks 3 and 6 go.seed-name-lookup-degradation-audible.test.ts: the lit control reports throughseed-refusal-sinkdirectly, not through the retiring diagnostics module.builtin-capabilities.boot.test.ts: the platform-name-refusal constant goes.objects/rbac-objects.test.ts: thedrift_statuspin goes (the field leaves in 6b-2).Re-pinned here
The #11451 fence (a caller that passes no predicate emits only the
wherekeyname) rodebootstrap-seed-round-trips.test.ts, but the behaviour it pins outlives the seeder:permission-set-projection.ts' overlay pass callsbuildExistingByNamewith no predicate. It is now pinned at the function inseed-name-lookup-degradation-audible.test.ts, on both the batched read and the per-item degradation read, with a predicate-carrying positive control. Ablation: making both reads spread{ managed_by: undefined }turned both fences red ("expected [ 'name', 'managed_by' ] to deeply equal [ 'name' ]"), the control stayed green, and restoring the file (same sha) brought 8/8 back.Gate ledgers
The double-contract ledgers (
engine-double-contract.{baseline,pinned}.json,objectql-double-limit.baseline.json) drop the deleted suites' entries.Size
16 files, +86 / −2,749 (2,835 changed lines).
Verification
On this branch:
check:engine-double-contractandcheck:objectql-double-limitgreen. The 7 trimmed suites: 7 files, 60 passed; with the new fence,seed-name-lookup-degradation-audibleis 8 passed.check:where-matchergreen. plugin-security typecheck green.check:adr-0087-registration,check:changeset-no-major,check:cli-command-ids,check:nul-bytesgreen. Not covered after this PR: no retained test importsbootstrap-declared-permissions,permission-set-drift,normalize-managed-byorseed-refusal-diagnostics. Only the boot-level suites exercise them in passing. They run unpinned until #22900 removes them, which is why the seat lands this PR directly before #22900.Merge note: this PR and #22899 delete adjacent entries in
scripts/engine-double-contract.baseline.jsonandscripts/objectql-double-limit.baseline.json, so whichever lands second meets a textual conflict there. The resolution is to drop both entries.Test-only:
skip-changeset.🤖 Generated with Claude Code
https://claude.ai/code/session_013XKtmoR5QCUSTMjiQ3os49