Skip to content

docs(qa): wave-3 checklist accuracy slice S10 — the 18 W3-RT findings at 6e11a929 (#27377) - #28748

Merged
objectstack-fleet[bot] merged 2 commits into
mainfrom
claude/issue-28701-wave3-slice-s10
Nov 1, 2026
Merged

objectstack-fleet[bot] merged 2 commits into
mainfrom
claude/issue-28701-wave3-slice-s10

Conversation

@objectstack-fleet

Copy link
Copy Markdown
Contributor

Requested by 田騏 · project thread

Fixes #28701
Part of #27377

Clause-②: no
Metadata-protocol: none

维护者速读

  • 改了什么:按 W3-RT(QA run · release-18.3.0-w3-retest (13/13) · 6e11a929 · 2026-11-01 · 11 PASS / 0 PARTIAL / 2 FAIL / 0 BLOCKED / 0 NOT-RUN #28656,6e11a929)留下的 18 条清单准确性发现,逐条对照当前 main 源码复核后改了平台测试清单:5 个区文件、10 个条目,每个条目 revision +1 并追加一行 history。18 条全部落地修改,没有一条在上游已修好。
  • 为什么改:这些条目里有已修好却仍写着「今天失败」的 knownGaps(表达式编辑器的 RLS 警告级、仪表盘全局筛选、汇总字段),有被 ui vitest 守卫拒绝的测试命令,有会被 400/403 拒绝的邮件流程配方,以及过时的记录页标签栏说明。不改,下一轮跑测试的人会多走手工核对或报出假问题,[sweep] v18.3.0 release test sweep #27377 发版巡检锚点也无法收口。
  • 风险与回滚:只改 QA 清单 JSON,不动产品代码、不进任何发布包;没有任何判据被放宽,只补得更准或更严(例如仪表盘 acceptance[4] 现在要求重载时必须弹出离开提示)。回滚就是 revert 本 PR。
  • 先看:docs/qa/platform-checklist/areas/studio-authoring.json 的 expression-editors(删掉一条 knownGap、改写 Studio: an expression the engine refuses (RLS USING on a formula field, a null-unsafe validation predicate) keeps autosaving — the server verdict is shown on the field but never holds the save #27482 那条的事实部分,acceptance[4] 的「no PUT issued」原样保留);同文件 dashboard-widget-and-filter-types 的 acceptance[4].verify(三种情形分开判);integration-system.json 的 email-template-render knownGaps[1](邮件流程配方)。
  • 两分钟验证:仓库根运行 pnpm check:platform-checklist,预期最后一行以 check-platform-checklist: OK — 16 areas, 352 items 开头。
  • 需要你做的:无,席位落地。

What changes

QA run #28656 (W3-RT, at 6e11a929) parked 18 checklist-accuracy findings on anchor comment 6557904764. Each row was re-verified against source at 1c5b1773ec before it was edited. All 18 rows are edited, across 10 items in the five area files the card names. None had already landed upstream. Every edited item gets revision +1 and one history row citing #28656 and #28701. Main's history stays an exact prefix (checked item by item against a parsed copy). No file outside the five is touched. No clause is weakened.

# item · clause outcome source confirmation
1 studio-authoring.expression-editors knownGaps[3] edited: the warning-tier gap is dropped (the old [4] becomes [3]) celAuthoring.ts lintCelPredicate / rlsPredicateVerdict keep the rule's error severity; celAuthoring.test.ts pins it for USING and CHECK. The 0 PUTs is #28656's
2 same item, knownGaps[4] (now [3]) edited, factual half only: the editor half is #27482 (open); #27612/#27643/#27644 landed; the residual is the first autosave of each newly refused text. acceptance[4]'s "no PUT issued" is left as it was PermissionMatrixEditor.serverVerdictHold-27482.test.tsx case (b); issue and PR states read from GitHub
3 same item, knownGaps[1], [2], acceptance[7].verify edited: cd ui && pnpm exec vitest run --maxWorkers=1 packages/app-shell/src/views/metadata-admin/celAuthoring.test.ts ui/scripts/vitest-invocation-guard.mjs: the --filter … exec form runs in the package directory and gets the package-cwd verdict
4 same item, steps[3] edited: the listbox caps at 8; type a member prefix MAX_CEL_SUGGESTIONS = 8. That system fields come first is #28656's reading
5 studio-authoring.access-owd-and-suggestions knownGaps[1] edited: D10 dropped; D13 kept with its API half, 409 SUGGESTION_STATE PackageOwdOverviewPanel.refusalClearsOnRevert-26846.test.tsx; suggested-audience-bindings.ts
6 studio-authoring.held-edit-leave-guard steps[7] edited: a 404 NO_DRAFT before and after Leave is the "unchanged" reading noPendingDraftError in metadata-protocol/src/protocol.ts; meta-item-absent-404.test.ts
7 studio-authoring.dashboard-widget-and-filter-types knownGaps[0] edited: dropped (the key goes with it) PR #27784 merged; InterfacesPillar.heldListItem-27459.test.tsx. The live pass is #28656's
8 same item, acceptance[4].verify edited: three cases judged separately. A reload while held must raise the leave-site prompt (stronger than before) the same pin's "filling the Field in sends one save carrying the item and the Label edit"
9 same item, steps[4] / steps[2] edited: a text filter commits on Enter or blur; "unbound" means filterBindings false for every filter DashboardFilterBar.tsx TextFilter; dashboard-filters.ts resolveBoundField (source only, as W3-RT also says)
10 studio-authoring.summary-field-authoring knownGaps[0] / negative[0] edited: the knownGap is dropped; negative[0] is now a plain FAIL condition PR #27720 merged; DataPillar.summaryHeld-27461.test.tsx, ObjectFieldInspector.summaryAggregand-27461.test.tsx. The live pass is #28656's
11 studio-authoring.app-and-nav-properties steps[0] edited: use a same-origin logo (/_console/vite.svg), as a runner-environment note ui/apps/console/public/vite.svg. The proxy block is #28656's reading
12 records-forms.field-history-tracking steps[3] edited: open the stream from the Activity tab, the 动态 panel header, or ?related=timeline RecordPageColumns.tsx tab row (Overview · Activity · panels). The 1440/1000/700 px reading is #28656's
13 same item, automated.ref edited: the live spec needs the vite console (LIVE_APP_URL, default port 5180) ui/playwright.live.config.ts; the spec's root-relative page.goto
14 integration-system.email-template-render knownGaps[1] edited: a type:'api' flow with {triggerType:'api', hookId, secret}, a notify node with no inline title/message, fired as the admin io-node-config.zod.ts (template and inline title/message are mutually exclusive); validateApiTriggerSecret. The 403 rule comes from flow-start-admission.ts; see Acceptance notes
15 same item, steps[7] edited: objectstack compile --output or --no-restart, with an unchanged listener PID packages/cli/src/commands/dev.ts (restart defaults on), compile.ts --output
16 approvals.dynamic-approver-routing steps[4] edited: the wire key is outputs on the approvals route; outputs.next_reviewers params on the action door approvals-routes.ts reads body.outputs; action-execution.ts folds the outputs. family
17 api-backend.formula-stdlib-matrix acceptance[5] / steps[6] edited: both promotion doors named. The clause now asks for both refusals protocol.runtime-authoring-gate.test.ts (publishMetaItem refused with 422 INVALID_METADATA); rest-route-ledger.ts meta.publishItem
18 approvals.dynamic-approver-routing, carried line 6539452860 edited: knownGaps[0]'s "not yet driven live" sentence now records #28656's live read live-only, as #28656 read it. The carried line itself is a comment on #27377, not text in this file

Tests

Docs only: no package source changes, so no build closure and no package test suite is owed (os-dev local-verification scope ① and ②). skip-changeset: the diff touches only docs/qa/platform-checklist/areas/*.json, which no package ships.

Acceptance notes

Verification

Gates (head 4ca7c24, after one merge of origin/main)

node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstack derived 16 families at 4ca7c24988: 5 paths, +82 / -39, under the 3000 human-merge line. Each ran with stdin from /dev/null. Exit codes were captured before any output was read:

  • node scripts/check-adr-links.mjs :: exit 0
  • node scripts/check-adr-links.mjs --self-test :: 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/ci/plan-test-core-shards.mjs --self-test :: exit 0
  • pnpm --filter @objectstack/lint run check:doc-formula-expressions :: exit 0, after turbo run build --filter=@objectstack/formula --filter=@objectstack/lint (lock VERDICT command-exit 0). The first run was a prerequisite refusal (exit 3) that measured nothing
  • pnpm check:ci-filter-parity :: exit 0
  • pnpm check:cross-package-test-inputs :: exit 0
  • pnpm check:doc-authoring :: exit 0
  • pnpm check:driver-memory-census :: exit 0
  • pnpm check:gitlink-declared :: exit 0
  • pnpm check:nul-bytes :: exit 0
  • pnpm check:platform-checklist :: exit 0 (OK — 16 areas, 352 items)
  • pnpm check:refd-timer-probe :: exit 0
  • pnpm check:watch-hint-literal :: exit 0

A first sweep before pnpm install met prerequisite refusals (exit 3, nothing measured) on six gates. Every family above is from the run after the install.

--ran reconciliation: "16 derived famil(ies) accounted for — 16 run, 0 NOT-MEASURED (a DERIVED zero — all 16 recorded an exit code and none of them is 3)" (exit 0).

🤖 Generated with Claude Code

… at 6e11a92

Re-verified each W3-RT (QA run #28656) checklist-accuracy row against
source before editing; ten items across five area files, each with
revision +1 and one history row.

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017ihL2gLghEqeDKTbDTC7Zd
@objectstack-fleet objectstack-fleet Bot added the skip-changeset PR has no user-facing published change; bypasses the changeset gate label Nov 1, 2026
@github-actions github-actions Bot added the size/m label Nov 1, 2026
@objectstack-fleet

Copy link
Copy Markdown
Contributor Author

domain:devx#2 · marchtian · session_017ihL2gLghEqeDKTbDTC7Zd

席位核对 — ACCEPT · domain:devx#2 · head 4ca7c249885c23e8f1e9a58793fd31239dd71db9 · 2026-11-01T17:06Z

Checked against GitHub and the PR head, not against the report (os-dev-report 6561014899 on #28701).

@objectstack-fleet
objectstack-fleet Bot marked this pull request as ready for review November 1, 2026 17:07
@objectstack-fleet
objectstack-fleet Bot enabled auto-merge November 1, 2026 17:07
@objectstack-fleet
objectstack-fleet Bot added this pull request to the merge queue Nov 1, 2026
Merged via the queue into main with commit 7a48bf7 Nov 1, 2026
48 checks passed
@objectstack-fleet
objectstack-fleet Bot deleted the claude/issue-28701-wave3-slice-s10 branch November 1, 2026 17:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/m skip-changeset PR has no user-facing published change; bypasses the changeset gate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs(qa): wave-3 checklist accuracy slice S10 — the 18 W3-RT findings at 6e11a929 (#27377)

1 participant