Repository navigation
QA run · records-forms.validation-rule-type-matrix (1/1) · 55a806a7 · 2026-10-17 · 1 PASS / 0 PARTIAL / 0 FAIL / 0 BLOCKED / 0 NOT-RUN #24095
Description
Run record for the re-run #24036 (half B) asks for after revising this item. Runner: an os-dev subagent dispatched by the domain:devx seat 2 PM (session session_016PVjjuVPte5XEJvaQx1E4t). Protocol: .claude/skills/checklist-test/SKILL.md + docs/qa/platform-checklist/RUNNER.md. Executed sequentially (no subagent tool in this runner).
Environment fingerprint
- framework:
55a806a78c0442243a8ac22e7dbc6f7b2c4b3bb0on branchclaude/issue-24036-ledger-b, the commit the app was built from. Its product tree isorigin/main8a83cebc1; the branch addsdocs/qa/platform-checklist/areas/*.jsononly, and its later commits touch those files alone. Built withpnpm install --frozen-lockfileandturbo run build(75/75 tasks). .objectui-sha:f8267df93aba8fb09cc1cc0692eadc0c8c5a5e56(no browser leg in this item).- boot:
OS_PORT=41921 objectstack dev --ui --seed-admin -p 41921 -d file:(run dir)/api2/data.dbfromexamples/app-showcase, its own port and file DB (the CLI also provisioned the siblingdata.telemetry.db), stopped by its own process-group id afterwards. - persona(s): the seeded admin (
admin@objectos.ai), identity proven withGET /api/v1/auth/get-sessionbefore the first cell - timestamps: 2026-10-17, 00:13Z
Scope
Selector records-forms.validation-rule-type-matrix resolves to 1 runnable item: records-forms.validation-rule-type-matrix at revision 3, P1, surface api. No planned or blocked-hidden item.
Per-clause verdicts
| # | clause (short) | verdict | evidence |
|---|---|---|---|
| 0 | six per-type codes | pass | each 400 VALIDATION_FAILED: project born active → invalid_initial_state; project active→planned and account active→prospect → invalid_transition; bad tax_id and bad billing_email → invalid_format; off-schema support_config → json_schema_violation; non-JSON string → invalid_json; end before start, spent above 120% of budget and churned-without-reason → rule_violation |
| 1 | error targets the declared field | pass | state_machine → status; format → tax_id / billing_email; json_schema → support_config; cross_field → start_date (fields[0]); script and conditional → _record |
| 2 | no rejected write persists | pass | every rejected create leaves the object count unchanged (5→5, 16→16, 17→17, 18→18, 6→6, 7→7, 20→20); every rejected PATCH leaves the row byte-identical on re-read |
| 3 | happy-path twins land | pass | planned 201, planned→active 200, valid tax_id / email / support_config 201, end on or after start 201, spent 110 of 100 201, churned with reason 200 |
| 4 | advisory warning flags, never blocks | pass | PATCH health green→red 200; the answer carries warnings: [{rule: project_health_progression, severity: warning, field: health, code: invalid_transition}]; re-read health red; server log WARN Validation rule 'project_health_progression' (warning): Health changed by more than one step … |
Reproduction rules
No clause scored fail, so none is owed. No authentication or authorization hole was found; nothing here is withheld under the RUNNER rule-2 carve-out.
Derived item verdict
records-forms.validation-rule-type-matrix r3: pass (5 pass of 5 clauses).
- Checklist-accuracy finding of this run, fixed on the branch before this record: the revision first said the warnings entry's code is
rule_violation. The live entry carriesinvalid_transition, becauseadvisoryEvent(rule-validator.ts) copies field and code from the rule's own violation, and this rule is a state machine. The clause now names field and code as measured; the record scores that text.
Checklist-accuracy findings and fixture gaps from this run close out on #24036.
Generated by Claude Code
Activity
objectstack-fleet commentedon Oct 17, 2026
Close-out (
domain:devxseat 2): every clause PASS; nothing to extract. Ruling C on #24127 (maintainer): a verification re-run of a ledger edit no longer carries aqa-runrecord, and the existing ones close out now. The revised itemrecords-forms.validation-rule-type-matrixlanded with #24141 (9ffe8af094), Part of #24036; itshistoryrow names #24036.Generated by Claude Code