Skip to content

Commit a305b94

Browse files
docs(adr-0142): mark the D3 amendment on the status line; annotate plan item 1 as superseded (#27096)
<!-- claude-projects-attribution: {"github_login":"os-support-ai"} --> _Requested by **Yibo Wang** · [project thread](https://claude.ai/code/project/chan_01BVUyyPie8gHwoPM18iABwB?thread=cmsg_01BVUyyPie8gHwoPM18iABwBEyP5fgvDswGwJU9prPHL9U)_ Part of #27016 ## What changes The two should-fixes from the delta contract review on #27044 (comment `6461102189`), both in ADR-0142: - The `**Status**:` line gains `· **Amended** (2026-10-28, ruling 6457475657 on #25769, letter A)`, saying that D3's `current_user.queues` producer is `@objectstack/plugin-security`, kernel-side, under the reserved key `queues`. This is the amended-status-line convention the README states, in the form ADR-0028/0050/0055 use. `docs/adr/README.md`'s ADR-0142 row is regenerated (`node scripts/adr-index.mjs`). - Execution plan item 1's clause "the queue service and its `queues` membership-resolver key in `plugin-sharing`" is kept as history and annotated: *superseded 2026-10-28 by D3 as amended: plugin-security resolves `queues` kernel-side*. The stale `Proposed` status is left alone: the review places that flip with #26337, the PR that landed the implementation. ## Why #27044 amended D3 to ruling A but left the record carrying option B's mechanism in the plan, undated, and no marker on the status line. Seat 1 chose to land #27044 from the queue and take these as a follow-up. ## Verification - `node scripts/adr-index.mjs --check`: exit 0. - Diff against `main`: 2 files, +3/−3, docs only. Nothing publishes, so no changeset (`skip-changeset`). Clause-②: no Metadata-protocol: none ## Human Minimum Each item is one rule from [CONTRIBUTING.md › Human Minimum](https://github.com/objectstack-ai/objectstack/blob/main/CONTRIBUTING.md#human-minimum), which links the AGENTS.md text that states it. - [x] 1. Schemas start as Zod; `packages/spec` holds no runtime logic. - [x] 2. Every name I added uses the casing for its kind. - [ ] 3. No formatter ran; `pnpm lint` passes. (No formatter ran. `pnpm lint` is CI's repo-wide run.) - [x] 4. One issue, one branch off an up-to-date `main`, one pull request. - [x] 5. A change that publishes carries a changeset, and both declaration lines are filled in here and in the changeset. (Publishes nothing.) - [x] 6. `packages/spec` touched: its generated artifacts are regenerated and committed. (Not touched.) - [x] 7. No hand edits to `content/docs/references/`, `packages/*/CHANGELOG.md` or `content/docs/releases/`. - [x] 8. Title, body and comments are in English. - [x] The *Before Submitting* list in CONTRIBUTING.md is done. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01WGufzhD6Fqfyavauv2KoGA --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent b7433d9 commit a305b94

2 files changed

Lines changed: 3 additions & 3 deletions

File tree

‎docs/adr/0142-ownership-queue-membership-claim-and-assignment-rules.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# ADR-0142: An ownership queue is a platform primitive — a queue entity, membership through the existing recipient kinds, claim through the ownership-transfer gate, and declarative assignment rules evaluated on insert
22

3-
**Status**: Proposed (2026-10-25). `docs/adr/**` is Tier H (Prime Directive #14): this record becomes **Accepted** by the
3+
**Status**: Proposed (2026-10-25) · **Amended** (2026-10-28, ruling [`6457475657`](https://github.com/objectstack-ai/objectstack/issues/25769#issuecomment-6457475657) on #25769, letter A) — D3's `current_user.queues` producer is `@objectstack/plugin-security`, kernel-side, under the reserved key `queues`; see the note in D3. `docs/adr/**` is Tier H (Prime Directive #14): this record becomes **Accepted** by the
44
maintainer's merge, and ⛔ the one PR under [Execution plan](#execution-plan-after-acceptance) is cut after that merge,
55
never before it. Until a published `@objectstack/*` release carries that PR, HotCRM keeps the STOPGAP module this record
66
exists to retire. **This record declares; it implements nothing** — no schema, no code, no changeset.
@@ -803,7 +803,7 @@ objection names the number.
803803
`packages/spec/liveness/queue.json` and `packages/spec/liveness/assignment_rule.json`, every property classified with
804804
evidence (the liveness gate has no generator); regenerated artifacts per AGENTS.md's spec table for the rest. Server:
805805
`sys_queue`, `sys_queue_member`, `sys_assignment_cursor`, the queue service and its `queues` membership-resolver key
806-
in `plugin-sharing`, with the access path at D3's four sites; the `queue` column in `applySystemFields` with its
806+
in `plugin-sharing` (*superseded 2026-10-28 by D3 as amended: plugin-security resolves `queues` kernel-side*), with the access path at D3's four sites; the `queue` column in `applySystemFields` with its
807807
writers and the registration refusal for a declared `queue`; the gate's claim / release / move admissions and explain
808808
reasons in `plugin-security`; in `objectql`, the by-id write precondition with its readback, the assignment seam and
809809
the two strategies behind the contract, the two keys in `METADATA_ARRAY_KEYS`, the `kernel:ready` boot refusal and

‎docs/adr/README.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,7 @@ A bare `ADR-0006` names the decision; its current text is [0006-project-environm
209209
| [ADR-0138](./0138-guest-model-anonymous-principal-doors-grants-and-organization.md) | The guest model — one anonymous principal, a closed list of doors, one grants channel, one organization rule,… | Accepted — 2026-10-13, accepted by the maintainer's approval of the pull r… | 2026-10-13 | — | — |
210210
| [ADR-0139](./0139-engine-internal-semi-join-leaf-readable-parent-ids.md) | One engine-internal semi-join leaf — "the ids of object X this caller may read" — pushed down by ObjectQL, ne… | Accepted — 2026-10-11, accepted by the merge that landed it on `main` | 2026-10-11 | — | — |
211211
| [ADR-0141](./0141-inter-app-dependency-declared-checked-before-install.md) | An app may depend on another installed app — declared in `manifest.dependencies`, checked once before install… | Proposed — 2026-10-25; first draft 2026-10-24. `docs/adr/` is Tier H (Prim… | 2026-10-25 | — | — |
212-
| [ADR-0142](./0142-ownership-queue-membership-claim-and-assignment-rules.md) | An ownership queue is a platform primitive — a queue entity, membership through the existing recipient kinds,… | Proposed — 2026-10-25. `docs/adr/` is Tier H (Prime Directive #14): this r… | 2026-10-25 | — | — |
212+
| [ADR-0142](./0142-ownership-queue-membership-claim-and-assignment-rules.md) | An ownership queue is a platform primitive — a queue entity, membership through the existing recipient kinds,… | Proposed — 2026-10-25 · Amended (2026-10-28, ruling `6457475657` on #25769… | 2026-10-25 | — | — |
213213
| [ADR-0143](./0143-outbound-connector-auth-is-open-tier.md) | Outbound connector auth is open tier — OAuth2 grants, vendor app-credential exchange and request signing in o… | Proposed — 2026-10-27. `docs/adr/` is Tier H (Prime Directive #14): the ma… | 2026-10-27 | — | — |
214214

215215
## ObjectUI registry — `ui/docs/adr/` (`ui-` prefix)

0 commit comments

Comments
 (0)