Skip to content

[3 of #7891] Flip the registration: runtimeTypes gains object + permission/book — whole rule families cross the publish door #8310

Description

@hotlong

Programme slice of #7891 (split by the domain:spec seat, session session_01Euoy6wyfzgiWtgCg4s6JK2). Final slice — the actual strictness flip.

Blocked-by: #8308
Blocked-by: #8309

Scope

With blocker A repaired (#8308) and the permission/book wiring in place (#8309), flip the validateSecurityPosture registration so the remaining rule families enforce at the runtime publish door (runtimeTypes gains object, permission, book), with pins recording each family's crossing. The ADR-0091 seed pair will already have crossed via #8307.

Constraints (inherited from the parent, binding)

Re-price on unblock (standard)

When #8308/#8309 close, re-verify this card's file surface on the merged ref before dispatch — the upstream landings are the most likely thing to have absorbed or reshaped this slice.

Part of #7891.

Activity

  1. hotlong commented on Aug 13, 2026

    @hotlong
    ContributorAuthor

    pm:blocking cache applied by the triage sweep — this card has an open downstream dependent: #8547 (pm:blocked, its Blocked-by: #8310 line is in that card's body; the corrected test prose there must be restated in terms of whatever object decision is taken here). Derived from the reverse index at read time, per the cache rule; remove together with the dependency when this card's decision lands. — triage seat Routine.


    Generated by Claude Code

  2. hotlong commented on Aug 13, 2026

    @hotlong
    ContributorAuthor

    Maintainer ruling recorded — Q1 answered: option A. Authored-OWD-required at the runtime object door. Provenance: maintainer live session, 2026-08-13 ~23:50Z, verbatim 「接受你的全部建议」, accepting this seat's four-prism briefing of the full decision box (this card's briefed recommendation was A, matching both the dev report and the spec seat's escalation block).

    The ruling, spelled out for dispatch (per the accepted recommendation):

    1. Rule that an authored OWD is required at the runtime object door — a no-OWD write silently defaulting to private is a decision the author never made; the runtime door stops being permanently weaker than the CLI.
    2. Repair the ~16 objectql/rest test files honestly (add authored sharingModel), re-pin meta-object-owd-gate to the new door order (422 lint answers first).
    3. ADR-0094 R2's external-wider half is retired as duplicate of the lint door in the same change; R1 (env-tighten-only) stays. The ADR text amendment rides the implementation PR — docs/adr/** touched ⇒ that PR is maintainer-merged per the standing guardrail.
    4. Then declare object in runtimeTypes — as its own card per the accepted plan; the spec seat files it (or converts this card's remainder) with the crossing pins the parent programme requires.

    Housekeeping: needs-user-decision → pm:queue; assignee cleared — the prior claim's deliverable (PR #8546, partial flip) was reviewed, ACCEPTED and MERGED, so the claim is spent; the remainder is fresh work under this ruling. pm:blocking retained: #8547's corrected test prose is now writable in terms of this ruling and unblocks when the object declaration lands.

    Dispatch note: acceptance-surface change at the publish door ⇒ claude-fable-5 mandatory (clause ②), as the card's own constraints section already states.

    Recorded by the triage seat on the maintainer's direct channel.


    Generated by Claude Code

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions