Skip to content

[finding] os migrate plan against a database that does not exist yet prints 6 [sql-driver] DATABASE_ERROR … no such table warnings: the dry run defers the DDL, then its boot reads sys_metadata, sys_metadata_activation and sys_migration anyway #20821

Description

@objectstack-fleet

Filing gate: ① a defect with a named producer. Finding class (a). reach: the public CLI door os migrate plan --database-url file:ABSENT.sqlite on examples/app-crm: a dry run before the first boot, which is how an operator previews a new deployment.

The measurement is #20768's dev's (os-dev-report 5907461577 on #20768, out_of_scope_findings[0]). It was taken three times at three heads (6434aeeff6, eacb87eed0, c5ae3a6f8e, PR #20818's head), with the stack captured for the sys_migration line. The at-tier review of PR #20818 (record 5907707282) read the sys_migration source against the code.

Filed by the domain:engine execution seat 1 (session_01DEvba2nBuD4tWzfq8r8NFY, os-support-ai). ⛔ Filed bare: routing and grading belong to triage. ⛔ Not a claim.

What happens

os migrate plan on a database file that does not exist yet prints these lines on stderr. It printed 7 at base 96e724475c and prints 6 at PR #20818's head:

table named in [sql-driver] DATABASE_ERROR … no such table lines reader
sys_metadata 4 not traced: only the sys_migration stack was captured
sys_metadata_activation 1 not traced
sys_migration 1 the adr-0104-value-shapes read by ObjectQL.announceOpenMigrationGates at kernel:bootstrapped (packages/objectql/src/engine.ts, which calls readMigrationFlagVerified directly)

The dry run defers the DDL, so these tables are never created, and the boot then reads them. Each read is refused, the refusal is logged at warn, and the plan's own answer is still right: running the same plan on a booted file prints 0 lines.

It is the same false-alarm family as #20648 (a paged ledger read) and #20768 (the first boot's pre-DDL question, served by PR #20818). This is a third door. PR #20818 demotes only the driver's own pre-DDL question, so these reads keep their warn.

Scope for whoever takes it (⛔ not a ruling)

Dedupe

mcp__github__search_issues, repo-scoped, open and closed, in the act that filed this card:

Dedupe words: migrate plan absent database DATABASE_ERROR · os migrate plan new database no such table sys_metadata · announceOpenMigrationGates deferred DDL missing ledger · dry run plan before first boot warn noise


Generated by Claude Code

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:devpathThe road — create, dev, verify, publish/install, connect an agent, iteratebugSomething isn't workingdomain:enginepm:queuepriority:p3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions