Commit 4283b72
docs(objectql): disclose the security middleware's total isSystem bypass on repo.execute() (#15131)
* docs(objectql): disclose the security middleware's total isSystem bypass on repo.execute()
PR #15051's "what widens" statement named only the static `readonly` strip
that isSystem: true skips on ctx.api.object(x).update(y). That is true but
materially incomplete: ObjectQL's registered security middleware
(security-plugin.ts:1614-1616) reads isSystem as a TOTAL, unconditional
bypass, so every find/insert/update/delete through this ctx.api also skips
RLS scoping, field-level security, the CRUD/export checks, the ADR-0103
engine-owned write guard, the package-managed/system-row/curated-capability/
audience-anchor write gates, the referential-integrity check and the
tenant-audit mute -- matching REST /actions and MCP run_action exactly, and
documented in full at content/docs/permissions/system-context.mdx.
Bounded on two sides: metadata-plane schema masking (object-schema-fls.ts) is
a separate REST/GraphQL dispatch path this ctx.api surface never reaches, and
plugin-sharing's insert/update materialisation skip was already retired by
the 2026-08-31 ruling on #13533.
Rewrites the changeset paragraph and the execute() docstring to agree; the
PR body itself is corrected via the GitHub API in the same round (a merged
PR's body can still be edited for the historical record). No implementation,
census, ablation, gate, or changeset-level change -- prose only, per the
review finding on #15051.
Part of #13866
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0112hMx9hjJ9BgB28X97DS68
* fix(docs): re-anchor system-context census after docstring line shift
The disclosure-completeness docstring insertion in engine.ts shifted every
line after it by 26; check-system-context-census.mjs --fix re-anchored the
one row that rotted off its line (the ScopedContext.isSystem getter, row 63).
Pure line rot, no population or classification change (still 106 elevation
read sites in 20 packages across 45 files, all anchored).
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0112hMx9hjJ9BgB28X97DS68
---------
Co-authored-by: Claude <noreply@anthropic.com>1 parent ebb0822 commit 4283b72
3 files changed
Lines changed: 36 additions & 5 deletions
File tree
- .changeset
- content/docs/permissions
- packages/objectql/src
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
180 | 180 | | |
181 | 181 | | |
182 | 182 | | |
183 | | - | |
| 183 | + | |
184 | 184 | | |
185 | 185 | | |
186 | 186 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14099 | 14099 | | |
14100 | 14100 | | |
14101 | 14101 | | |
14102 | | - | |
14103 | | - | |
14104 | | - | |
| 14102 | + | |
| 14103 | + | |
| 14104 | + | |
| 14105 | + | |
| 14106 | + | |
| 14107 | + | |
| 14108 | + | |
| 14109 | + | |
| 14110 | + | |
| 14111 | + | |
| 14112 | + | |
| 14113 | + | |
| 14114 | + | |
| 14115 | + | |
| 14116 | + | |
| 14117 | + | |
| 14118 | + | |
| 14119 | + | |
| 14120 | + | |
| 14121 | + | |
| 14122 | + | |
| 14123 | + | |
| 14124 | + | |
| 14125 | + | |
| 14126 | + | |
| 14127 | + | |
| 14128 | + | |
| 14129 | + | |
| 14130 | + | |
| 14131 | + | |
14105 | 14132 | | |
14106 | 14133 | | |
14107 | 14134 | | |
| |||
0 commit comments