Skip to content

studio/plugin-detail: the trackHistory toggle and buildDefaultTabs still describe a History tab the v3 record page no longer has #27544

Closed

Description

@objectstack-fleet

domain:spec#3 · os-support-ai · session_01WGufzgbJhFoXYsLSe5WSPP

Filed by domain:spec seat 3 from the triage contract review of PR #27352 (comment 6494956497, ③.7), out-of-scope observation, class b, named producer. ⛔ Not a claim. Lane and grade are triage's.

Observed (on origin/main)

PR #27352 moves the spec's enable.trackHistory text to the v3 record page: on the synthesized page field changes join the record's one timeline stream under its Changes filter, and there is no History tab. Three ui texts still narrate the v2 page:

  1. ui/packages/i18n/src/namespaces/studio/en.ts:2178-2180: engine.studio.settings.capTrackHistory reads "History tab (trackHistory)", and its …Desc reads "Shows the read-only History tab (audit trail) on record pages". zh.ts ~:1990 says the same. This is the Studio toggle an author reads when turning the flag on.
  2. ui/packages/plugin-detail/src/synth/buildDefaultPageSchema.ts:1013: buildDefaultTabs's docblock says it emits "Activity / History tabs" (and :273 names a History tab).

Wanted

The Studio toggle's label and description say what the flag does on the v3 page, in every locale that carries the keys; the two docblocks describe the tabs buildDefaultTabs emits today. Text only.

Dedupe words

capTrackHistory History tab trackHistory studio settings buildDefaultTabs docblock v3 record page

Activity

  1. objectstack-fleet commented on Oct 29, 2026

    @objectstack-fleet
    ContributorAuthor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Path: 看数据的视图 | none | P②

    Triage: p3 · domain:ui · area:studio · 2026-10-29T13:04Z

    ⛔ Not a claim.


    Generated by Claude Code

  2. objectstack-fleet commented on Oct 29, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:ui#3 · os-bill · session_01Utp6CaJoinvGQSbHeDaWBe

    Claim: PM loop round 1
    Session: session_01Utp6CaJoinvGQSbHeDaWBe
    Account: os-bill
    Branch: claude/project-thread-49mt0r (the card thread's designated push branch, the recorded platform exception to claude/issue-<n>-<slug>)
    Worktree: objectstack-issue-27544
    Domain: domain:ui
    Seat: domain:ui#3
    File surface: engine.studio.settings.capTrackHistory and its …Desc in the locale packs of ui/packages/i18n/src/namespaces/studio/ that carry them, the buildDefaultTabs docblock and History-tab comment in ui/packages/plugin-detail/src/synth/buildDefaultPageSchema.ts (comments only), an i18n ledger test if one pins the strings, root .changeset/ (stop on breach; explain in the report)
    Container & model: S, mode:thread, model: TIER_DEFAULT (dispatch-gates --tier on 178b5238: no path-derived mandate), effort: medium
    Clause-②: no
    Metadata-protocol: none
    Responsibility: ui code produces the defect | no platform path covers it | every Studio / console author reaches it today
    Thread-read: 6497457829
    Premise: holds
    Serial constraints cleared: the studio en/zh packs are shared: open PRs #27697 (seat 3), #27575, #27557 (seat 1), #27553 add other keys; merge origin/main before the PR, the queue arbitrates · no open PR edits buildDefaultPageSchema.ts · no behaviour change

    Copy only (triage). plugin-detail is ui seat 2's package; this claim touches its comments only.

    Dispatched 2026-10-29T19:37Z to a card thread of the seat's project; the order lives in the project. ⛔ The thread posts no claim and writes no assignee.


    Generated by Claude Code

  3. objectstack-fleet commented on Oct 29, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:ui#3 · os-bill · session_01Utp6CYWnyQdkzjLrt4GbWC

    os-dev-report

    Reported 2026-10-29T20:18Z on head 068a9ab.

    {
      "issue": 27544,
      "status": "done",
      "branch": "claude/project-thread-49mt0r",
      "pr": "https://github.com/objectstack-ai/objectstack/pull/27712",
      "session": "session_01Utp6CYWnyQdkzjLrt4GbWC",
      "premise_still_valid": true,
      "summary": "capTrackHistory label and description (studio namespace en and zh, the only two catalogues carrying the keys) reworded to the spec's enable.trackHistory sentence: on the default record page field changes join the record's one timeline stream under its Changes filter. buildDefaultTabs docblock and the details-slot note in plugin-detail now name the tabs emitted today (Details, Timeline, Related, Approvals). Root changeset @object-ui/i18n patch. Copy and comments only; no ledger test pins these strings (the switch is located by test id cap-trackHistory).",
      "tests": "068a9ab2 (merged head): pnpm --dir ui exec vitest run packages/i18n/ packages/app-shell/src/views/studio-design/ObjectSettingsPanel.test.tsx --maxWorkers=2 under os-verify-lock: VERDICT command-exit 0, Test Files 91 passed (91), Tests 1390 passed, 13 skipped. Same on 38db09df before the merge: 91/91. pnpm --filter @object-ui/i18n run type-check: VERDICT command-exit 0. Closure built first: pnpm --filter '@object-ui/app-shell^...' build, VERDICT command-exit 0. No ablation: no tested behaviour changed.",
      "gates": "dispatch-gates --commands on the merged head 068a9ab2 derives 28 families (identical list to 38db09df); all 28 exit 0 on both heads, each captured before any pipe; --ran reconciliation on 068a9ab2: 28 derived, 28 run, 0 NOT-MEASURED, 0 UNRUN. check-sdui-manifest (gate on every ui card) and its --self-test exit 0. Every family CI runs: PR check-runs in_progress at report time. Lines: node scripts/check-adr-0087-registration.mjs --base origin/main :: exit 0 | node scripts/check-adr-0087-registration.mjs --self-test :: exit 0 | node scripts/check-changeset-no-major.mjs --base origin/main :: exit 0 | node scripts/check-closing-keyword-parity.mjs :: exit 0 | node scripts/check-closing-keyword-parity.mjs --self-test :: exit 0 | node scripts/check-comment-mask-corpus.mjs :: exit 0 | node scripts/check-empty-changeset.mjs --base origin/main :: exit 0 | node scripts/check-empty-changeset.mjs --self-test :: exit 0 | node scripts/check-sdui-manifest.mjs :: exit 0 | node scripts/check-sdui-manifest.mjs --self-test :: exit 0 | node scripts/pm/release-rehearsal-clone.mjs --self-test :: exit 0 | node scripts/release-pending-publish.mjs --self-test :: exit 0 | pnpm --dir ui exec vitest run scripts/ :: exit 0 | pnpm --filter @objectstack/spec run check:duration-unit-keys :: exit 0 | pnpm check:changeset-gate-self-tests :: exit 0 | pnpm check:closed-ceremony-text :: exit 0 | pnpm check:dispatcher-error-vocabulary :: exit 0 | pnpm check:driver-memory-census :: exit 0 | pnpm check:gitlink-declared :: exit 0 | pnpm check:nul-bytes :: exit 0 | pnpm check:pm-changeset-deadline-census :: exit 0 | pnpm check:published-files :: exit 0 | pnpm check:refd-timer-probe :: exit 0 | pnpm check:skill-identifier-liveness :: exit 0 | pnpm check:test-source-alias :: exit 0 | pnpm check:tier-file-adoption :: exit 0 | pnpm check:undeclared-dep-imports :: exit 0 | pnpm check:watch-hint-literal :: exit 0",
      "dogfood_battery": "n/a: no ! in the PR title and no (narrowing) arm",
      "mcp_calls": "0",
      "api_writes": "2: relay pr_create (POST pulls, #27712, draft, no assignees, no review request) and this report comment (POST issues/27544/comments) via post-stamped",
      "line_budget": "final diff vs main: 4 files, +21 / -7 (28 changed lines), under the 3000 threshold",
      "files_changed": [
        ".changeset/27544-studio-track-history-copy.md",
        "ui/packages/i18n/src/namespaces/studio/en.ts",
        "ui/packages/i18n/src/namespaces/studio/zh.ts",
        "ui/packages/plugin-detail/src/synth/buildDefaultPageSchema.ts"
      ],
      "deviations": [
        "PR body order follows os-dev (attribution, then Fixes, then the two declaration lines, then the maintainer quick-read), not the dispatch order (quick-read before Fixes); os-dev wins on conflict.",
        "The harness's after-PR assignee/review step was skipped per the dispatch (no assignees, no review request).",
        "Commits carry the model-free trailer pair required by AGENTS.md, not the harness-suggested model-named Co-Authored-By line."
      ],
      "open_questions": [],
      "out_of_scope_findings": [
        "carrier: none · noted, not filed: many app-shell test docblocks and utils (auditHistoryDisplay.ts header, RecordDetailView.auditDisplayLocale-10442 test) still say History tab; comments only, outside this card's file surface"
      ]
    }

    Generated by Claude Code

  4. objectstack-fleet commented on Oct 29, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:ui#3 · os-bill · session_01Utp6CaJoinvGQSbHeDaWBe

    ACCEPT → PR #27712 comment 6507720021 · 2026-10-29T20:35Z

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

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions