Skip to content

docs(lint): backlink R11's doc comment to #8323's measured cross-tenant oracle - #8598

Merged
qq9340100 merged 1 commit into
mainfrom
claude/issue-8584-r11-oracle-backlink
Aug 14, 2026
Merged

docs(lint): backlink R11's doc comment to #8323's measured cross-tenant oracle#8598
qq9340100 merged 1 commit into
mainfrom
claude/issue-8584-r11-oracle-backlink

Conversation

@qq9340100

Copy link
Copy Markdown
Collaborator

Fixes #8584

What

One-line backlink added to the doc comment of lintUnscopedDeclaredIndexes (rule unique/unscoped-declared-index, R11, ADR-0120 D5a, packages/lint/src/data-model-rules.ts), pointing at #8323's end-to-end measurement of the cross-tenant 409-vs-201 oracle — the concrete harm this rule's warning exists to prevent.

 * 17.x: warning. Protocol 18 rejects the spelling at validate/publish (#5082).
 * Advisory — never fails a build in 17.x.
 *
 * Concrete harm: #8323 measured the cross-tenant 409-vs-201 oracle end to end.
 *
 * Wiring: own AUTHORING_RULES entry (validate/build), and `lintDataModel`

Why

Follow-through from the #8379 closure (maintainer ruling A, 2026-08-13: closed as already-satisfied). Part 3 of the #8323 ruling was drafted without knowing R11 already delivered its substance, because the connection between the rule and the measured oracle lived nowhere in the tree. This line makes the next sweep/ruling find R11 instead of re-deriving (or re-mandating) it.

Verified against #8323's evidence

Confirmed from #8323's body (not the title) that R11's DECLARED-INDEX bare-unique: true spelling is exactly the shape #8323 measured end-to-end: sys_capability and sys_user_preference (both tenant-scoped, plain unique fields) produced a single global unique index, and the cross-tenant probe showed 409 UNIQUE_VIOLATION on a value invisible to the caller (GETtotal 0) — the 409-vs-201 oracle named in the added line. R11's own doc comment already states the mechanism ("materializes over exactly its fields, i.e. installation-wide") and cites the same #4986/#5082 lineage; the added line makes the connection to #8323's measurement explicit rather than leaving it implicit in the mechanism description.

Scope


Generated by Claude Code

…nt oracle

lintUnscopedDeclaredIndexes (unique/unscoped-declared-index, R11,
ADR-0120 D5a) already ships the publish-time advisory for the bare
`unique: true` declared-index spelling that materializes a global
unique index. The concrete harm that warning exists to prevent — the
cross-tenant 409-vs-201 oracle — was measured end to end on #8323, but
the connection lived nowhere in the tree, which is why part 3 of the
#8323 ruling was drafted without knowing R11 already delivered its
substance (#8379). One doc-comment line closes that gap for the next
sweep or ruling.

Fixes #8584

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jqe56GnYFddggeAyfkZFVz
@vercel

vercel Bot commented Aug 14, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
objectstack Ignored Ignored Aug 14, 2026 12:49am

Request Review

@qq9340100 qq9340100 added the skip-changeset PR has no user-facing published change; bypasses the changeset gate label Aug 14, 2026 — with Claude
@github-actions

Copy link
Copy Markdown
Contributor

📓 Docs Drift Check

This PR changes 1 package(s): @objectstack/lint.

3 hand-written doc(s) reference the affected code and may need an implementation-accuracy re-verification:

  • content/docs/automation/hook-bodies.mdx (via @objectstack/lint)
  • content/docs/deployment/validating-metadata.mdx (via packages/lint)
  • content/docs/permissions/authorization.mdx (via @objectstack/lint)

1 release-owned page(s) also reference the affected code. These are read-only:

  • content/docs/releases/v17.mdx (via @objectstack/lint)

content/docs/releases/ is RELEASE-OWNED (AGENTS.md "Documentation Guardrails"): release
notes are written centrally at release time, and a code PR that edits them is the exact PR
that guardrail exists to stop. They are still audited — read-only. If one of them is actually
wrong, file an issue or open a dedicated docs-only PR; do not edit it here.

Advisory only. To re-verify, run the docs-accuracy-audit workflow scoped to these files:
node scripts/docs-audit/affected-docs.mjs origin/main → pass the list as args.docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/xs skip-changeset PR has no user-facing published change; bypasses the changeset gate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs-only: backlink #8323's measured cross-tenant oracle from R11's (unique/unscoped-declared-index) doc comment

2 participants