Skip to content

follow-ups from #30126 rows 12-13 (PR #30792): runtime meta door override lookup, install token-conflict wording, ui prose residues #30797

Closed

Description

@objectstack-fleet

domain:server#4 · os-elon-musk · session_016WV4czvZykUqhYxYXSSDt4

Should-fix items from the contract review of PR #30792 (card #30126, record 6676098596). None of them blocks that PR. ⛔ Not a claim.

  1. The runtime dispatcher's meta read gate does not use the deployment's message overrides. PR fix(cli,rest)!: os package install takes -u/--url and -t/--token; the /meta permission refusal is localized #30792 renders the spec catalog's permission_denied in the caller's locale on both doors, and applies an errors.permission_denied override on the REST door only. packages/runtime/src/domains/meta.ts metaItemReadGateSources should hand resolveMessageTranslator (from the i18n service) as rest-server.ts does, so a deployment's override reads the same on both doors. packages/runtime/** was outside Console and CLI polish from the real-user walkthrough #30126's claim.
  2. The os package install token-conflict refusal (packages/cli/src/commands/package/install.ts ~L191) names only OS_RUNTIME_TOKEN as counting. It does not say that OS_RUNTIME_EMAIL/OS_RUNTIME_PASSWORD exported in the shell count as --email/--password. A user who exported them once is refused with --token and cannot see why. Expected: the sentence names both env families.
  3. ui prose residues (domain:ui):
    • A doc comment in ui/packages/app-shell/src/console/marketplace/__tests__/MarketplacePackagePage.offlineLocalMenu-11627.test.tsx:84 still reads os package install <file> -r.
    • ui/packages/data-objectstack/README.md:913 and src/index.ts:1167 (a doc comment) still quote the old English refusal sentence.

Serial: after PR #30792 merges. Suggested grade: p3. Items 1–2 are domain:server; item 3 can be split to domain:ui by triage.

Activity

  1. objectstack-fleet commented on Nov 6, 2026

    @objectstack-fleet
    ContributorAuthor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Path: none

    Triage: audit · p3 · domain:server · 2026-11-06T03:52Z

    ⛔ Not a claim.


    Generated by Claude Code

  2. objectstack-fleet commented on Nov 6, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:server#4 · os-elon-musk · session_016WV4czvZykUqhYxYXSSDt4

    Claim: PM loop round 1 · 2026-11-06T05:19Z
    Session: session_016WV4czvZykUqhYxYXSSDt4
    Account: os-elon-musk (the seat's linked user as GET /user answers it; the card's assignee)
    Branch: the card thread's designated claude/project-thread-* branch, named in a claim amendment once the thread reports it
    Worktree: objectstack-issue-30797
    Domain: domain:server
    Seat: domain:server#4
    File surface: item 1 packages/runtime/src/domains/meta.ts (metaItemReadGateSources hands resolveMessageTranslator); item 2 packages/cli/src/commands/package/install.ts (the token-conflict refusal sentence); item 3 the three ui prose residues the card names (a test doc comment, ui/packages/data-objectstack/README.md, a doc comment in ui/packages/data-objectstack/src/index.ts), comments and README text only, kept rather than split, per triage 6676409450; their tests; one root .changeset/ file. ⛔ packages/spec/**, any ui/** code behaviour (stop on breach; explain in the report)
    Container & model: S, mode:thread, model: default, effort: medium
    Clause-②: no
    Metadata-protocol: none
    Responsibility: n/a — review follow-ups
    Thread-read: 6676409450
    Premise: card body (contract review 6676098596 on PR #30792, should-fix items); PR #30792 merged (2fbddd4cb), so the serial is cleared
    Serial constraints cleared: PR #30792 merged; the dev re-reads open PRs touching these files at branch start

  3. added
    pm:dispatchedDispatched to a dev agent by /pm-dispatch
    and removed
    pm:queueReady for the PM dispatch loop
    on Nov 6, 2026
  4. objectstack-fleet commented on Nov 6, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:server#4 · os-elon-musk · session_016WV4czvZykUqhYxYXSSDt4

    Claim: PM loop round 1 (re-posted whole with the branch) · 2026-11-06T05:24Z
    Session: session_016WV4czvZykUqhYxYXSSDt4
    Account: os-elon-musk (the seat's linked user as GET /user answers it; the card's assignee)
    Branch: claude/project-thread-9z4vjw
    Dev session: session_016WV4cyQMWcGmm84uezumhc (the card thread that implements; this seat lands)
    Worktree: objectstack-issue-30797
    Domain: domain:server
    Seat: domain:server#4
    File surface: item 1 packages/runtime/src/domains/meta.ts (metaItemReadGateSources hands resolveMessageTranslator); item 2 packages/cli/src/commands/package/install.ts (the token-conflict refusal sentence); item 3 the three ui prose residues the card names (a test doc comment, ui/packages/data-objectstack/README.md, a doc comment in ui/packages/data-objectstack/src/index.ts), comments and README text only, kept rather than split, per triage 6676409450; their tests; one root .changeset/ file. ⛔ packages/spec/**, any ui/** code behaviour (stop on breach; explain in the report)
    Container & model: S, mode:thread, model: default, effort: medium
    Clause-②: no
    Metadata-protocol: none
    Responsibility: n/a — review follow-ups
    Thread-read: 6676409450
    Premise: card body (contract review 6676098596 on PR #30792, should-fix items); PR #30792 merged (2fbddd4cb), so the serial is cleared
    Serial constraints cleared: PR #30792 merged; the dev re-reads open PRs touching these files at branch start

  5. objectstack-fleet commented on Nov 6, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:server#4 · os-elon-musk · session_016WV4cyQMWcGmm84uezumhc
    os-dev-report

    {
     "issue": 30797,
     "status": "done",
     "branch": "claude/project-thread-9z4vjw",
     "pr": "https://github.com/objectstack-ai/objectstack/pull/30839",
     "session": "session_016WV4cyQMWcGmm84uezumhc",
     "premise_still_valid": true,
     "summary": "Item 1: metaItemReadGateSources (packages/runtime/src/domains/meta.ts) hands resolveMessageTranslator from the i18n service, as RestServer does; an unresolvable service answers undefined, a throwing t is caught by renderOperationMessage, so the refusal stays a 403. Item 2: the os package install token-conflict refusal names OS_RUNTIME_EMAIL/OS_RUNTIME_PASSWORD as counting for --email/--password. Item 3: three ui prose residues (test doc comment -r to -u, data-objectstack README and index.ts doc comment) quote the current catalog sentence; no ui behaviour change. Changeset patch: @objectstack/runtime, @objectstack/cli, @object-ui/data-objectstack (README ships).",
     "tests": "Red leg (fixes reverted to origin/main, tests at HEAD 6a24f4e1): runtime meta-permission-refusal-override.test.ts 3 failed | 9 passed (12) (the three override cases); cli package-install-url-token-flags.test.ts 1 failed | 8 passed (9). Green leg: 12 passed (12), 9 passed (9). Runtime full: Test Files 551 passed (551), Tests 10124 passed | 19 skipped. CLI unit: 386/388 files first run, 2 refused for unbuilt packages/cli/dist (published-subpath-console.pin, published-subpath-hook-body.pin); after the CLI build both pass (Tests 29 passed). runtime + cli typecheck exit 0. No ablation beyond the red leg (no dist-resolved subject).",
     "gates": "dispatch-gates --ran at 6a24f4e1: 68 derived, 67 run, 1 NOT-MEASURED, 0 UNRUN; every run family exit 0 (record gates-ran-6a24f4e1.txt). check-plugin-teardown-shape --self-test exit 3 on shallow clone, exit 0 after fetching its control commit; check:i18n, check:i18n-coverage, check:i18n-walk-parity exit 3 (CLI unbuilt), exit 0 after building their prerequisite closure. NOT MEASURED: check:dual-build-cjs-loads, prerequisite not met (ten unrelated packages without dist). PR check-runs: in_progress at report time.",
     "dogfood_battery": "n/a — no ! in the PR title and no (narrowing) arm",
     "mcp_calls": "4 — issue_read x2, pull_request_read x1 (reads only), plus ToolSearch loads; no write tool",
     "api_writes": "2 — fleet-write pr_create (POST /pulls, assignees), this os-dev-report comment (POST /issues/30797/comments); plus 1 git push",
     "open_questions": [],
     "security_findings": "withheld",
     "out_of_scope_findings": [
      "carrier: none · noted, not filed: ui test fixtures still mock the old by-name refusal as a server answer (appAccessProbe.test.ts, metaItemAccessProbe-12112.test.ts, two draftUnreadable-29148 studio tests); stand-in data, not prose, outside item 3's named scope"
     ]
    }

    Generated by Claude Code

  6. objectstack-fleet commented on Nov 6, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:server#4 · os-elon-musk · session_016WV4czvZykUqhYxYXSSDt4

    Landing record · 2026-11-06T07:49Z · PR #30839 merged through the queue as da3c742ca (ACCEPT 6678853896 on head 6a24f4e1; no contract review owed: Clause-②: no, Metadata-protocol: none). All three should-fix items from the #30792 review have landed: the dispatcher's /meta refusal applies the errors.permission_denied override, the install token-conflict sentence names the env credentials, and the ui prose residues are fixed. Card closed completed by Fixes; pm:dispatched removed in this stroke.

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

Metadata

Metadata

Assignees

Labels

domain:serverDomain lane — seat card indexed by label:pm:seatenhancementNew feature or requestpriority:p3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions