Repository navigation
revert: PR #30222 (main red #30255) - #30262
Conversation
…records a member can read The platform baseline names sys_comment (read, create, edit) and sys_activity (read). The rows stay decided by plugin-audit's parent-record gates: a member reads and posts comments, and reads the history, of exactly the records they can read. No delete bit, no row policy, no export. A real-stack pin covers a readable record, an unreadable one (row scope and object level), an external member with and without an explicit grant, an object with enable.feeds false, and the console feed read's access-denied log count. Claude-Session: https://claude.ai/code/session_01Utp6CatT2ajve5PJf1Hhzj Co-authored-by: Claude <noreply@anthropic.com>
…-24iijl Claude-Session: https://claude.ai/code/session_01Utp6CatT2ajve5PJf1Hhzj Co-authored-by: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Utp6CatT2ajve5PJf1Hhzj Co-authored-by: Claude <noreply@anthropic.com>
…ned main red This reverts commit 490d136, the landing of the member_default feed grants, together with its changeset. On a boot that does not install @objectstack/plugin-audit (the verify harness's showcase), neither object is registered, so the permission-set clone door's save refuses a copy of member_default with 422 INVALID_METADATA on both grants. The ruling stands; only the landing is undone, and the forward fix follows. Claude-Session: https://claude.ai/code/session_01Utp6CatT2ajve5PJf1Hhzj Co-authored-by: Claude <noreply@anthropic.com>
|
domain:server#2 · os-bill · session_01Utp6Cbvcmv8YWFhFJwzjKL 维护者速读
席位核对 — ACCEPT · domain:server#2 · head
|
📓 Docs Drift CheckNothing in this diff resolved to a documentable surface (no symbol, route or SDK anchor derived from 1 changed package(s)), so this run has no opinion about the docs. What this run could not see
Coarse fallback — 17 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): |
|
domain:server#2 · os-bill · session_01Utp6Cbvcmv8YWFhFJwzjKL Changeset confirmation (route 0, #18375 ruling D):
Confirmed by the lane seat that owns both #30108 and #30255. |
|
domain:server#2 · os-bill · session_01Utp6Cbvcmv8YWFhFJwzjKL Check Changeset, route 0 (#18375): this PR deletes a pending release note and adds none, so the check stays red and no
Please confirm in writing here. Report taken 2026-11-05T04:20Z. Generated by Claude Code |
Requested by Bill · project thread
domain:server#2 · os-bill · session_01Utp6Cbvcmv8YWFhFJwzjKL
维护者速读
490d136f):member_default去掉sys_comment和sys_activity两行,连同它的测试和 changeset,文件恢复到合并前的原样。Dogfood Regression Gate (2/3)连红两次。没装审计插件的启动里,这两个对象没有注册,克隆member_default被保存门以 422 拒收。按 main 红的约定先止血。packages/plugins/plugin-security/src/objects/default-permission-sets.ts的差异。git diff 314ad955 HEAD -- packages/plugins/plugin-security .changeset为空。Refs #30255
Refs #30108
Clause-②: no
Metadata-protocol: none
What this does
Reverts the squash commit
490d136f(PR #30222, #30108's landing): the twomember_defaultgrants (sys_commentread, create and edit;sys_activityread), the comment block above them, the integration test file, the flipped pins inmember-default-explicit-allow.test.tsandcomment-reaction-own-record-floor.test.ts, and the changeset.changeset/30108-member-default-feed-grants.md.The five paths are byte-identical to their state in
314ad955, the commit before the landing:git diff 314ad955 HEADover them is empty. No later commit onmaintouched them.#30108's ruling A stands. Only the landing is undone, and the forward fix follows in its own PR, as the seat directed.
Why main went red
Measured in run 41961254209 (
797f9257),Dogfood Regression Gate (2/3), casepermission-set-clone-door.dogfood.test.ts"a platform set (the lock-and-clone rule's commonest source) copies into its shipping package's pair": the clone answered422 INVALID_METADATAwith two findings,objects.sys_commentandobjects.sys_activity, each "no package registers an object of that name and none is saved here".@objectstack/verify'sbootStackconstructs noAuditPlugin(fact 3 ofpackages/cli/src/commands/serve-audit-registration.contract.test.ts), and the showcase'srequiresdoes not nameaudit, so neither object is registered on that boot. The save door's unknown-grant refusal (#28990,packages/metadata-protocol/src/protocol-save-door-refusals.ts) judges every grant of a new item, and a clone is a new item. The same refusal reaches any deployment that does not install@objectstack/plugin-audit, not only the dogfood boot.The merge queue skips the dogfood shards, so the PR's own checks did not run this case.
Verification
See the seat hand-off for the local run of the dogfood case on this head.
Generated by Claude Code