Commit 712e185
`bootstrapPlatformAdmin` seeded the default permission sets without writing
`managed_by`, so the value fell to the declaration's `defaultValue: 'admin'`.
`os meta resync` reconciles only platform-owned rows, so every shipped default
set took the skip branch (measured: resynced 0 / resyncSkipped 8) and each skip
was logged as an "intentional override" for a row no admin had touched.
Implements the maintainer ruling of 2026-08-15 (Option A):
- the seed insert stamps `managed_by: 'platform'` explicitly, matching
`bootstrap-builtin-positions.ts` and `bootstrap-system-capabilities.ts`;
- FORWARD ONLY -- no migration, no restamp of existing 'admin' rows, since a
stored 'admin' cannot be told apart from a real Setup takeover and rewriting
it could silently overwrite admin edits on the next resync;
- the skip warn drops its "(intentional override)" claim of intent;
- the seeder docblock records what pre-ruling installs carry and why they keep
the skip;
- two comments claiming the posture "keeps the platform defaults env-authored --
the posture bootstrapDeclaredPermissions relies on" are removed: measured
false, since bootstrapDeclaredPermissions special-cases only 'package'.
The #8804 pin suite now asserts both sides: a fresh install stores 'platform'
and resyncs every set, and a pre-ruling 'admin' row is still skipped with its
content intact.
Claude-Session: https://claude.ai/code/session_01Y26DJEHSBhhAQ6wwfsHNza
Co-authored-by: Claude <noreply@anthropic.com>
1 parent 2420641 commit 712e185
3 files changed
Lines changed: 306 additions & 90 deletions
File tree
- .changeset
- packages/plugins/plugin-security/src
Lines changed: 64 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
0 commit comments