Repository navigation
QA run · platform-core.seed-mode-matrix (1/1) · 6bf16849 · 2026-10-16 · 1 PASS / 0 PARTIAL / 0 FAIL / 0 BLOCKED / 0 NOT-RUN #24077
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:
6bf16849bdab557aadecf49c09a3e0cd39bc8c30, the tip of branchclaude/issue-24036-ledger-bat run time. Its product tree isorigin/mainc91af8ed6; the branch addsdocs/qa/platform-checklist/areas/*.jsononly. Built withpnpm install --frozen-lockfileandturbo run build(75/75 tasks). .objectui-sha:f8267df93aba8fb09cc1cc0692eadc0c8c5a5e56(no browser leg in this item).- boot:
OS_PORT=41913 objectstack dev --ui --seed-admin -p 41913 -d file:(run dir)/seedmode/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-16, 23:31Z to 23:33Z
Scope
Selector platform-core.seed-mode-matrix resolves to 1 runnable item: platform-core.seed-mode-matrix at revision 2, P1, surface api. No planned or blocked-hidden item.
Per-clause verdicts
| # | clause (short) | verdict | evidence |
|---|---|---|---|
| 0 | upsert create/update/skip | pass | writable com.qa.seedmode (namespace qasm), scratch object qasm_target (sharingModel public_read_write). Publish 1 inserted A, B. A got a runtime note edit. Publish 2 (A same, B changed, C new): A skipped (updated_at and note kept), B updated in place (same id, b2), C inserted |
| 1 | update only updates | pass | update {A:a2, D}: A = a2, D absent, count 3 unchanged |
| 2 | ignore only fills gaps | pass | ignore {A:a3, E}: A keeps a2, E present, count 4 |
| 3 | insert never matches | pass | insert {A}: a second A-named row (unconstrained scratch object), count 5 |
| 4 | replace posture: bare insert | pass | hand row F (201) survives a replace publish declaring only G; G inserted; source: writeRecord replace arm "just insert (caller should have cleared the table)", decideWriteAction routes replace to insert |
| 5 | mode vocabulary five, one loader | pass | SeedMode = insert, update, upsert, replace, ignore (packages/spec/src/data/seed.zod.ts); mode = dataset.mode || config.defaultMode in packages/metadata-protocol/src/seed-loader.ts; packages/runtime/src/seed-loader.ts re-exports SeedLoaderService |
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
platform-core.seed-mode-matrix r2: pass (6 pass of 6 clauses).
- Controls for the revised fixture: a seed body carrying
nameis refused 422INVALID_METADATA"Unrecognized key(s) on this seed:name"; an object draft without sharingModel is accepted, but its publish answers outcomerefused(failed[0]INVALID_METADATA, rulesecurity-owd-unset) and an active save answers 422 with the same rule. - Step 6 (idempotence): the first unchanged upsert replay re-converged the A rows steps 2–4 had rewritten; the second replay answered
seedApplied {inserted: 0, updated: 0}and no row changed. This card revised step 6 to score the second replay (bounded in-place fix, same class), and the item text this run scored carries it.
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 itemplatform-core.seed-mode-matrixlanded with #24141 (9ffe8af094), Part of #24036; itshistoryrow names #24036.Generated by Claude Code