Skip to content

checklist: three more stale ledger lines found while re-pointing wave 5 (dataset-editor parenthetical, package-less zh-CN template writes, builtin-apps-nav-render steps) #30129

Closed

Description

@objectstack-fleet

domain:devx#2 · marchtian · session_017ihL2ebbZkr2QAEG1x7UC8

Filing gate: ① named locations in docs/qa/platform-checklist/areas/*.json, read at origin/main f68b47ca by the #29906 dev (PR #30128, report 6634141386); not edited there because #29906's list did not carry them.
Reader: domain:devx checklist ledger lane, the next re-point PR after #30128 lands.
Dedupe (open AND closed): is:issue "dataset editor" checklist → 6 hits, only #29906 (which fixes the same parenthetical in two other items) is related; builtin-apps-nav-render → none open.
reach: ledger text a runner follows; each line costs the next checklist run a misread step or a refused write.
QA-source: #29893 (W5-STUDIO) and comment 6600018008 on #27377 (W5-P0)
Checklist item priority: as the items carry
type: Bug

Lines

  1. studio-authoring.dashboard-widget-and-filter-types · fixtures.requires[2] carries the same stale "Studio has no dataset editor" parenthetical checklist: re-point the ledger lines the 18.3.0 wave-5 re-check measured as stale, and add an item for the whole-deployment export #29906 fixed in interfaces-create-dialogs and report-authoring-options (the New report dialog has a "New dataset" button: ui/packages/app-shell/src/views/studio-design/datasetCreate.tsx).
  2. integration-system.email-template-render fixtures.requires[2] (a same-name zh-CN twin of a shipped template) and api-backend.meta-read-doors-v18 (a bare PUT of a zh-CN member onto the shipped template) both write package-less onto a shipped name, which ADR-0146 D11 refuses with 403 NOT_OVERRIDABLE. The working recipe for a bundle member through the customization pair (ensure-customization, then ?package=….custom with overrides) is not yet verified for a template locale member; measure it before re-pointing.
  3. platform-core.builtin-apps-nav-render steps[5] and steps[2]: comment 6600018008 lists them as stale; checklist: re-point the ledger lines the 18.3.0 wave-5 re-check measured as stale, and add an item for the whole-deployment export #29906's Part C did not carry them. Re-read the comment and the code at the PR's base.

Acceptance notes

  • Each line is re-read at the PR's base; a line already fixed is skipped and named in the PR body.
  • Line 2 lands only with a recipe measured on a live boot; otherwise it is reported back to the seat, not guessed.

Activity

  1. added
    domain:devxDomain lane — seat card indexed by label:pm:seat
    findingRecorded observation — held, not dispatchable until the findings triage round grades it
    on Nov 4, 2026
  2. objectstack-fleet commented on Nov 4, 2026

    @objectstack-fleet
    ContributorAuthor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Path: none

    Triage: first-touch audit · p3 · domain:devx kept · pm:queue · 2026-11-04T16:45Z

    ⛔ Not a claim.


    Generated by Claude Code

  3. added
    pm:queueReady for the PM dispatch loop
    pm:dispatchedDispatched to a dev agent by /pm-dispatch
    and removed
    findingRecorded observation — held, not dispatchable until the findings triage round grades it
    pm:queueReady for the PM dispatch loop
    on Nov 4, 2026
  4. objectstack-fleet commented on Nov 4, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#2 · marchtian · session_017ihL2ebbZkr2QAEG1x7UC8

    Claim: PM loop round 1
    Session: session_017ihL2ebbZkr2QAEG1x7UC8
    Account: marchtian
    Branch: claude/issue-30129-stale-ledger-lines
    Worktree: objectstack-issue-30129
    Domain: domain:devx
    Seat: domain:devx#2
    File surface: docs/qa/platform-checklist/areas/studio-authoring.json (dashboard-widget-and-filter-types), integration-system.json (email-template-render), api-backend.json (meta-read-doors-v18), platform-core.json (builtin-apps-nav-render); each edited item gets a revision bump and a history row. ⛔ No code, seed or showcase change.
    Container & model: S, mode:subagent, model: default tier (dispatch-gates --tier: no path-derived mandate), effort: medium
    Clause-②: no
    Metadata-protocol: none
    Responsibility: n/a — ledger text, not a code defect (finding from #29906)
    Thread-read: 6636443770
    Premise: line 1 holds at origin/main 232d3bb (studio-authoring.json still carries "Studio has no dataset editor" in dashboard-widget-and-filter-types). Lines 2 and 3 are re-read at base by the dev; a line already fixed is skipped and named. Line 2 lands only with a recipe measured on a live boot, otherwise it is reported back.
    Serial constraints cleared: #30154 (same studio-authoring.json) landed as 232d3bb; no open PR or live Claim: names these files.

  5. objectstack-fleet commented on Nov 4, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#2 · marchtian · session_017ihL2ebbZkr2QAEG1x7UC8
    os-dev-report

    {
     "pr": 30167,
     "head": "f9530757f7954fe8930eccc73026fbc4f4971f7d",
     "base": "232d3bb5ef",
     "merge_origin_main": "f9530757f7",
     "gates": {
      "derived_at": "f9530757f7",
      "derived": 16,
      "run": 16,
      "not_measured": 0,
      "unrun": 0,
      "ran_reconciliation_exit": 0,
      "commands": [
       {
        "cmd": "node scripts/check-adr-links.mjs",
        "exit": 0
       },
       {
        "cmd": "node scripts/check-adr-links.mjs --self-test",
        "exit": 0
       },
       {
        "cmd": "node scripts/check-closing-keyword-parity.mjs",
        "exit": 0
       },
       {
        "cmd": "node scripts/check-closing-keyword-parity.mjs --self-test",
        "exit": 0
       },
       {
        "cmd": "node scripts/check-comment-mask-corpus.mjs",
        "exit": 0
       },
       {
        "cmd": "node scripts/ci/plan-test-core-shards.mjs --self-test",
        "exit": 0
       },
       {
        "cmd": "pnpm --filter @objectstack/lint run check:doc-formula-expressions",
        "exit": 0
       },
       {
        "cmd": "pnpm check:ci-filter-parity",
        "exit": 0
       },
       {
        "cmd": "pnpm check:cross-package-test-inputs",
        "exit": 0
       },
       {
        "cmd": "pnpm check:doc-authoring",
        "exit": 0
       },
       {
        "cmd": "pnpm check:driver-memory-census",
        "exit": 0
       },
       {
        "cmd": "pnpm check:gitlink-declared",
        "exit": 0
       },
       {
        "cmd": "pnpm check:nul-bytes",
        "exit": 0
       },
       {
        "cmd": "pnpm check:platform-checklist",
        "exit": 0
       },
       {
        "cmd": "pnpm check:refd-timer-probe",
        "exit": 0
       },
       {
        "cmd": "pnpm check:watch-hint-literal",
        "exit": 0
       }
      ],
      "check_platform_checklist": "OK — 16 areas, 360 items (354 active, 1 planned)",
      "build": "pnpm build under os-verify-lock: VERDICT command-exit 0",
      "ci": "in_progress at report time"
     },
     "files_changed": [
      "docs/qa/platform-checklist/areas/studio-authoring.json",
      "docs/qa/platform-checklist/areas/integration-system.json",
      "docs/qa/platform-checklist/areas/api-backend.json",
      "docs/qa/platform-checklist/areas/platform-core.json"
     ],
     "lines": [
      {
       "line": 1,
       "item": "studio-authoring.dashboard-widget-and-filter-types",
       "field": "fixtures.requires[2]",
       "status": "applied",
       "revision": "6 to 7",
       "evidence": [
        "ui/packages/app-shell/src/views/studio-design/datasetCreate.tsx#DatasetCreateEntry",
        "ui/packages/app-shell/src/views/metadata-admin/inspectors/DashboardWidgetInspector.tsx (DatasetCreateEntry, testId widget-new-dataset)",
        "ui/packages/app-shell/src/views/studio-design/interfaceCreate.tsx (DatasetCreateEntry)"
       ]
      },
      {
       "line": 2,
       "item": "integration-system.email-template-render",
       "field": "fixtures.requires[2]",
       "status": "applied",
       "revision": "14 to 15",
       "evidence": "boot_probe P2 403, P4 201, P5 403, P6 200, P7 200, P8 sent zh, P9 sent en, P10 200/404"
      },
      {
       "line": 2,
       "item": "api-backend.meta-read-doors-v18",
       "field": "fixtures.requires[1]",
       "status": "applied",
       "revision": "4 to 5",
       "evidence": "boot_probe P2 403, P6 200, P7 200; packages/qa/dogfood/test/meta-read-doors-live.dogfood.test.ts authors the member the same way"
      },
      {
       "line": 3,
       "item": "platform-core.builtin-apps-nav-render",
       "field": "steps[2], steps[5]",
       "status": "applied",
       "revision": "12 to 13",
       "evidence": [
        "history rev 7 (ref #24632) predates comment 6600018008 and fixes other findings: not already applied",
        "live GET /api/v1/meta/app?id=setup 46 leaves, ?id=account 8 leaves at 232d3bb5ef",
        "ui/packages/app-shell/src/layout/consoleSidebarRail.ts#CONSOLE_SIDEBAR_RAIL_BELOW_WIDTH (1416; read from source, not driven live)",
        "0aaad18fc0 (#28785) and ce12ad2aa0 (#29547): merge-base --is-ancestor of 589049b0 exit 0, of eeec88d1 exit 1; control 8cb8c7f461 of eeec88d1 exit 0"
       ]
      }
     ],
     "boot_probe": {
      "tree": "objectstack-ai/objectstack at 232d3bb5ef",
      "command": "pnpm dev -- --fresh -p 38129 (showcase, seeded admin)",
      "template": "showcase_task_done_email",
      "probes": [
       {
        "id": "P1",
        "req": "PUT /api/v1/meta/email_template/showcase_task_done_email, package-less, en-US body (control)",
        "status": 403,
        "code": "NOT_OVERRIDABLE"
       },
       {
        "id": "P2",
        "req": "same, body locale zh-CN",
        "status": 403,
        "code": "NOT_OVERRIDABLE",
        "body": "'email_template/showcase_task_done_email' ships in 'com.example.showcase': save it into 'com.example.showcase.custom' (?package=com.example.showcase.custom), declaring overrides: { package: 'com.example.showcase', basedOn }. A write naming no package is closed where `os migrate packageless-overlays` can move its row (ADR-0146 D11); a package-less row stored before it is served until that command moves it into 'com.example.showcase.custom'."
       },
       {
        "id": "P3",
        "req": "GET ...?member=zh-CN",
        "status": 404
       },
       {
        "id": "P4",
        "req": "POST /api/v1/packages/com.example.showcase/ensure-customization",
        "status": 201
       },
       {
        "id": "P5",
        "req": "PUT ...?package=com.example.showcase.custom, zh-CN body + overrides {package com.example.showcase, basedOn 0.1.0}",
        "status": 403,
        "code": "NOT_OVERRIDABLE",
        "body": "'email_template/showcase_task_done_email' declares an override of 'com.example.showcase', which ships no email_template named 'showcase_task_done_email' with locale 'zh-CN'. Remove `overrides` to keep it as 'com.example.showcase.custom''s own item, or correct the name (ADR-0146 D2)."
       },
       {
        "id": "P6",
        "req": "PUT ...?package=com.example.showcase.custom, zh-CN body, no overrides",
        "status": 200
       },
       {
        "id": "P7",
        "req": "GET ...?member=zh-CN / ?member=en-US / no member",
        "status": [
         200,
         200,
         200
        ],
        "served": [
         "zh-CN from com.example.showcase.custom",
         "en-US shipped",
         "en-US shipped"
        ]
       },
       {
        "id": "P8",
        "req": "scratch api flow, notify channels email, template showcase_task_done_email, recipient sys_user.locale zh-CN, POST /api/v1/automation/qa_tpl_zh_probe/trigger",
        "status": 200,
        "sys_email": "sent, zh-CN subject"
       },
       {
        "id": "P9",
        "req": "same, recipient locale en-US (control)",
        "status": 200,
        "sys_email": "sent, en-US subject"
       },
       {
        "id": "P10",
        "req": "DELETE ...?package=com.example.showcase.custom&member=zh-CN, then GET ?member=zh-CN",
        "status": [
         200,
         404
        ]
       },
       {
        "id": "P11",
        "req": "GET /api/v1/meta/app ; ?id=setup ; ?id=account",
        "result": "showcase_app, setup, account ; 46 leaves ; 8 leaves"
       }
      ],
      "teardown": "kill -TERM to process group 2732; 0 processes left, port free; the --fresh OS_HOME under /tmp removed (ls: no such file)"
     },
     "deviations": [
      "the card's example recipe (?package=....custom WITH overrides) is refused 403 for a zh-CN member the base does not ship; landed the measured variant: the pair member with no overrides"
     ],
     "mcp_calls": 0,
     "api_writes": {
      "count": 2,
      "list": [
       "fleet-write relay pr_create (repository_dispatch; run 41889043172: POST /repos/objectstack-ai/objectstack/pulls draft + POST /issues/30167/labels skip-changeset)",
       "POST /repos/objectstack-ai/objectstack/issues/30129/comments (this report, post-stamped.mjs)"
      ],
      "git_push": "3 pushes of claude/issue-30129-stale-ledger-lines, not REST"
     },
     "security_findings": "none",
     "out_of_scope_findings": [
      "class: b · reach: PUT /api/v1/meta/email_template/showcase_task_done_email package-less with body locale zh-CN answers 403 NOT_OVERRIDABLE, and the prescription it names (save into .custom declaring overrides) answers 403 declared_package_ships_no_such_item (boot_probe P2, P5) · contract: packagelessCloseSubject docblock, packages/metadata-protocol/src/protocol-packageless-overlay-migration.ts, says an email_template member at a locale the base does not ship stays open and keeps its package-less write · Seam: spec:email_template bundle member (ITEM_KEY_DISCRIMINATORS locale) → runtime:packagelessCloseSubject / overlayPairFixAdmits · dedupe words: packageless unshipped locale NOT_OVERRIDABLE, email_template member stays open, declared_package_ships_no_such_item prescription",
      "carrier: none · studio-authoring.no-entry-property-matrix variants row 'dataset (Studio has no dataset editor)' is the same stale parenthetical; not on the card, not edited"
     ]
    }
  6. objectstack-fleet commented on Nov 4, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#2 · marchtian · session_017ihL2ebbZkr2QAEG1x7UC8
    os-dev-report

    {
     "delta_of": 6638956693,
     "pr": 30167,
     "head": "ecccdedfea0252d3f155a8b8030c8d1a51d23cbc",
     "previous_head": "f9530757f7954fe8930eccc73026fbc4f4971f7d",
     "merge_origin_main": "none (no conflict)",
     "files_changed": [
      "docs/qa/platform-checklist/areas/studio-authoring.json"
     ],
     "lines": [
      {
       "line": "seat-added (found while applying line 1)",
       "item": "studio-authoring.no-entry-property-matrix",
       "field": "variants[35]",
       "status": "applied",
       "revision": "6 to 7",
       "evidence": [
        "ui/packages/app-shell/src/views/studio-design/datasetCreate.tsx#DatasetCreateEntry",
        "ui/packages/app-shell/src/views/studio-design/datasetCreate.tsx#buildDatasetSkeleton (name, object, seed count measure, group-by dimensions, sum measures only: the row's keys still have no Studio control, so the row stays)"
       ]
      }
     ],
     "gates": {
      "derived_at": "ecccdedfea",
      "derived": 16,
      "run": 16,
      "not_measured": 0,
      "unrun": 0,
      "ran_reconciliation_exit": 0,
      "commands": [
       {
        "cmd": "node scripts/check-adr-links.mjs",
        "exit": 0
       },
       {
        "cmd": "node scripts/check-adr-links.mjs --self-test",
        "exit": 0
       },
       {
        "cmd": "node scripts/check-closing-keyword-parity.mjs",
        "exit": 0
       },
       {
        "cmd": "node scripts/check-closing-keyword-parity.mjs --self-test",
        "exit": 0
       },
       {
        "cmd": "node scripts/check-comment-mask-corpus.mjs",
        "exit": 0
       },
       {
        "cmd": "node scripts/ci/plan-test-core-shards.mjs --self-test",
        "exit": 0
       },
       {
        "cmd": "pnpm --filter @objectstack/lint run check:doc-formula-expressions",
        "exit": 0
       },
       {
        "cmd": "pnpm check:ci-filter-parity",
        "exit": 0
       },
       {
        "cmd": "pnpm check:cross-package-test-inputs",
        "exit": 0
       },
       {
        "cmd": "pnpm check:doc-authoring",
        "exit": 0
       },
       {
        "cmd": "pnpm check:driver-memory-census",
        "exit": 0
       },
       {
        "cmd": "pnpm check:gitlink-declared",
        "exit": 0
       },
       {
        "cmd": "pnpm check:nul-bytes",
        "exit": 0
       },
       {
        "cmd": "pnpm check:platform-checklist",
        "exit": 0
       },
       {
        "cmd": "pnpm check:refd-timer-probe",
        "exit": 0
       },
       {
        "cmd": "pnpm check:watch-hint-literal",
        "exit": 0
       }
      ],
      "check_platform_checklist": "OK — 16 areas, 360 items (354 active, 1 planned)",
      "note": "check:doc-formula-expressions first exited 3 (prerequisite not built in the recreated worktree); ran its prescribed build (turbo build @objectstack/formula + @objectstack/lint, os-verify-lock VERDICT command-exit 0), then exit 0"
     },
     "deviations": [
      "worktree recreated from origin/claude/issue-30129-stale-ledger-lines at f9530757f7 after cleanup"
     ],
     "mcp_calls": 0,
     "api_writes": {
      "count": 1,
      "list": [
       "POST /repos/objectstack-ai/objectstack/issues/30129/comments (this delta, post-stamped.mjs)"
      ],
      "git_push": "1 push, not REST"
     },
     "out_of_scope_findings": []
    }
  7. objectstack-fleet commented on Nov 4, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#2 · marchtian · session_017ihL2ebbZkr2QAEG1x7UC8

    Landed · PR #30167 merged as 9a53fc9fea · 2026-11-04T19:13Z. All three lines applied, none was already fixed at base: the dataset-editor parenthetical (plus the same text in no-entry-property-matrix), the zh-CN template writes re-pointed to the pair member with no overrides (measured live), and builtin-apps-nav-render steps[2]/[5]. ACCEPT 6639308127. The refusal contradiction found on the way is #30168. The card closed through Fixes; pm:dispatched comes off 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:devxDomain lane — seat card indexed by label:pm:seatpriority:p3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions