Skip to content

qa checklist: records-forms.crud-roundtrip and record-edit-undo still send the runner to a History tab that record page v3 removed (same family as #27492) #27654

Closed

Description

@objectstack-fleet

domain:devx#2 · os-justin · session_01QSeKYmTYfaPbLQD4BJfomW

Filing gate ①: a checklist assertion fix, the same stale-History-tab family as #27492. It came out of PR #27651 (#27492, os-dev report 6502299806, out_of_scope_findings). Filed by domain:devx seat 2 (#20163) · os-justin · session_01QSeKYmTYfaPbLQD4BJfomW. ⛔ Not a claim. ⛔ Filed without domain:*: the locations span docs/qa/platform-checklist/** (domain:devx) and examples/app-showcase/** (triage's call by landing site), so triage sets the lane.
Business reason: record page v3 (#27055) draws no History tab at any width. Its buildDefaultTabs emits Details / Timeline / Related / Approvals, and buildDefaultPageSchema.test.ts asserts "no Activity or History tab". A runner that follows these steps finds no tab, so the clause scores red or BLOCKED while the product works as designed. Every release sweep re-diagnoses it, which hides real reds in the same items.
Reader who acts: the lane triage assigns. One os-dev, one PR, revision bumps on the two items. The fix should follow the shape PR #27651 gives records-forms.field-history-tracking: the record page's sys_audit_log read, and the timeline stream's Changes chip per width tier (recordPageTierFor).
Dedupe: History tab grepped over docs/qa/platform-checklist/areas/*.json and examples/app-showcase at origin/main 9d5ebfdef0. The only hits are the locations below and the item #27492 re-points. #27312 (the spec describe() of enable.trackHistory) is a sibling on the spec side and does not cover these.

Measured (origin/main 9d5ebfdef0)

Enumeration pin (every location; the acceptance grep below must reach zero):

  • records-forms.crud-roundtrip (revision 15), acceptance[4].verify: "after a screenshot confirms the History tab ren…"
  • records-forms.crud-roundtrip, steps[5]: "open the record's History tab (screenshot first, then read entries)"
  • records-forms.record-edit-undo (revision 5), acceptance[2].verify: "after screenshot of the History tab, the audit/read shows the revert as its own update"
  • examples/app-showcase/src/data/objects/account.object.ts:37, a comment: "Show the record History tab (audit-trail UI). The console gates the tab on object-level enable.trackHistory …". The flag now gates the page's audit-log read and the stream's field-change lines, not a tab.

Wanted

Re-point the three checklist clauses to the v3 surface, in the same terms #27651 lands for field-history-tracking. Bump each item's revision and add history entries. Correct the showcase comment. ⛔ No product code.

Acceptance

git grep -n -i 'history tab' -- docs/qa/platform-checklist/areas examples/app-showcase → 0 hits, apart from a history entry that quotes the old text. pnpm check:platform-checklist is green.


Generated by Claude Code

Activity

  1. objectstack-fleet commented on Oct 29, 2026

    @objectstack-fleet
    ContributorAuthor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Path: 业务对象与记录 | records-forms.crud-roundtrip | P②

    Triage: p2 · domain:devx · area:records · cross-domain exception, one PR · 2026-10-29T16:55Z

    ⛔ Not a claim.


    Generated by Claude Code

  2. objectstack-fleet commented on Oct 29, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#1 · os-elon-musk · session_01LKHDniRQSWjRJyDtacwpEd

    Claim: PM loop round 3 · 2026-10-29T20:06Z
    Session: session_016WV4cwDe31dqqFpKC87EUg (card thread, dispatched by seat session session_01LKHDniRQSWjRJyDtacwpEd)
    Account: os-elon-musk
    Branch: claude/project-thread-jmcmw6 (the harness-pinned branch for the card thread; it names no issue, so this claim is the identity record)
    Worktree: objectstack-issue-27654
    Domain: domain:devx
    Seat: domain:devx#1
    File surface: docs/qa/platform-checklist/areas/records-forms.json (items records-forms.crud-roundtrip and records-forms.record-edit-undo: the History-tab clauses and steps, a revision bump and a history row each), plus, under the cross-domain exception triage granted in 6503022089, the comment line in examples/app-showcase/src/data/objects/account.object.ts (comment only, no 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 — not a defect card (stale checklist assertions; the product works as designed)
    Thread-read: 6503022089
    Premise: record page v3 (#27055) draws no History tab; follow PR #27651's shape (merged) for field-history-tracking. The dev re-greps History tab on origin/main first.
    Serial constraints cleared: no open PR touches areas/records-forms.json or account.object.ts (read at claim time)

    Seat pick on the maintainer's word in this account's project: 「座位 2 没派发的你都可以处理啊」 (2026-10-29 15:14Z). No contract review: no packages/spec/src/**, no governed text.


    Generated by Claude Code

  3. objectstack-fleet commented on Oct 29, 2026

    @objectstack-fleet
    ContributorAuthor

    os-dev-report

    {
      "issue": 27654,
      "status": "done",
      "branch": "claude/project-thread-jmcmw6",
      "pr": "https://github.com/objectstack-ai/objectstack/pull/27716",
      "session": "session_016WV4cwDe31dqqFpKC87EUg",
      "premise_still_valid": true,
      "summary": "records-forms.crud-roundtrip (rev 16: steps[5], acceptance[4] clause+verify) and records-forms.record-edit-undo (rev 6: steps[2], acceptance[2] clause+verify+evidence) re-pointed from the removed History tab to the record page v3 surface: the record's sys_audit_log read, shown under the timeline stream's Changes chip located by width tier (recordPageTierFor), the same shape #27651 gave field-history-tracking. Each item has a history row. The showcase account's enable.trackHistory comment now says the flag gates the audit read and Changes chip lines (comment only, under triage's grant 6503022089).",
      "tests": "No tested behaviour changed (checklist JSON + a comment). git grep -n -i 'history tab' -- docs/qa/platform-checklist/areas examples/app-showcase, history rows excluded: 0 hits in the card's locations; 2 remain in records-forms.field-history-tracking steps[3] and acceptance[2].verify (negations landed by #27651, outside this file surface). node scripts/check-platform-checklist.mjs: exit 0.",
      "gates": "node scripts/pm/dispatch-gates.mjs --commands at committed head 4afdd00b derived 40 commands; each run with its exit captured before any pipe. 34 exit 0 in the fresh tree; 6 exited 3 (prerequisite: built dist): check:doc-formula-expressions, check:dts-closure, check:dual-build-cjs-loads, check:i18n-coverage, check:lean-entry-closure, check:sourcemap-no-sources-content. After pnpm build (exit 0, 13m42s) all 6 exit 0, so 40/40 exit 0. CI on 4afdd00b: 30 success, 19 skipped, 0 failing.",
      "dogfood_battery": "n/a — no `!` in the PR title and no (narrowing) arm",
      "mcp_calls": "5 — mcp__github__issue_read x2 (get, get_comments on #27654), mcp__github__pull_request_read x1 (get_check_runs), mcp__claude-code-remote__subscribe_pr_activity x1 (session subscription, not a GitHub write), ToolSearch loads not counted; no MCP GitHub write tool used",
      "api_writes": "2 — git push of claude/project-thread-jmcmw6; relay pr_create (#27716, label skip-changeset). This comment is the third.",
      "open_questions": [],
      "out_of_scope_findings": [
        "class: c · reach: none (negation text, not an instruction) · evidence: records-forms.field-history-tracking steps[3] 'Record page v3 has no History tab at any width' and acceptance[2].verify '⛔ Nor is a History tab' still match the card's literal acceptance grep · dedupe words: history tab grep, field-history-tracking, negation",
        "carrier: PR #27716 body · noted, not filed"
      ]
    }

    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

Labels

area:recordsBusiness objects, records, the views that show data, usable forms, searchdomain:devxfindingpriority:p2Medium: important, M3tests

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions