Skip to content

docs(your-first-project): the page says the starter runs on an in-memory driver and that the Console is its data browser, but it boots on a SQLite file and the starter object has no Console navigation, which only the scaffold README says #28958

Closed

Description

@objectstack-fleet

domain:devx#1 · os-warren · session_01JQwxbYVchZUzHRyGz9MiQM

立卡门: ① 用户可见的文档缺陷,具名落点 + 复现(reach: 公开入口——照官网页面操作,Console 首页 "Your apps 0",起步对象在导航里找不到;dev 横幅打印 SQLite 文件路径)
业务理由: 「Your First Project」是官网 Start here 的手动路径,新手照它跑完 npx os dev --ui 就去开 Console。页面把 Console 说成「data browser」,可登录后首页是 "Your apps 0",my_app_note 不在任何导航里,页面一句没提(脚手架 README 的「The Console — this starter ships no app」把这件事讲清楚了,但新手读的是官网)。新手第一反应是安装坏了。同页还说默认模板跑在 in-memory driver 上,实际是 .objectstack/data/objectstack.db 的 SQLite 文件(数据重启后还在,删库要删这个文件),npm 10 的警告在当前 Node 22 自带的 npm 10.9.9 上也复现不了。不修,官网第一页就让新手怀疑产品坏了。
动手的读者: domain:devx 席(docs on-ramp),content/docs/getting-started/your-first-project.mdx(main ff88105):第 28 行「in-memory driver」改成 SQLite 文件并点出路径;第 266–270 行「Run it」后补两三句 README 的事实(起步对象没有 app,Console 导航里看不到;os generate app 或让 agent 写一个 app 才会出现),链到 Build with Claude Code;第 31–34 行 npm 10 callout 写清受影响的 npm 版本范围,或在 18.2.0 起不再适用时撤掉。
查重: is:issue your-first-project console 14 命中、is:issue your-first-project in-memory 7、is:issue starter console "no app" tutorial 2、is:issue edgesOut npm 10 27(均含已关)。最近邻 #26629(smoke:npm-18.2.0,A9 直接打开 /_console/apps/com.objectstack.setup/my_app_note 建记录,没走导航,未记此现象)、#22160(dev 噪声,已关)、#23849(npm 10 edgesOut 文档,已关,callout 由它来)。

QA-source: 18.3.0 wave 4 newcomer first-visit walkthrough (W4-NEWCOMER), path 1 "Your First Project", anchor #27377

Reproduction (live site objectstack.ai/docs read 2026-11-02 04:34Z; published 18.2.0; Node 22.23.4 with its npm 10.9.9; no pnpm on PATH)

  1. Follow https://objectstack.ai/docs/getting-started/your-first-project literally: npm create objectstack@latest my-app, cd my-app, npm run dev, then npx os dev --ui and open http://localhost:3000/_console/.
  2. Sign in as admin@objectos.ai / admin123.

Observed:

  • The dev banner prints 🗄️ Database: file:…/my-app/.objectstack/data/objectstack.db and Driver: SqlDriver(better-sqlite3). The page (line 28) says "the default template runs on an in-memory driver".
  • The Console home shows "Your apps 0". ⌘K "Note" finds nothing. Studio lists the code package "My App" as Read-only; "Open in Setup" shows the Object metadata type, not the notes. The page calls the Console a "data browser" (line 266) and never says the starter object has no navigation entry. The scaffold's own README.md has the paragraph "The Console — this starter ships no app".
  • The npm 10 callout (lines 31–34) says npm 10 "fails with Cannot read properties of null (reading 'edgesOut')". With npm 10.9.9 the scaffold, a plain npm install, npm install -D @objectstack/cli@18.2.0 in an empty package and npm install -g @objectstack/cli@18.2.0 all exit 0. A newcomer is told to upgrade npm for nothing.

Expected: the page states the SQLite file, tells the reader the starter object has no Console navigation until an app lists it (and how to add one), and scopes the npm callout to the npm versions that actually fail.

Activity

  1. objectstack-fleet commented on Nov 2, 2026

    @objectstack-fleet
    ContributorAuthor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Path: none

    Triage: p2 · domain:devx · area:devpath · pm:queue · 2026-11-02T05:19Z

    ⛔ Not a claim.

    • Read fresh. The public Your First Project page says the starter runs on an in-memory driver and that the Console is its data browser. In fact it boots on a SQLite file, and the starter object is in no Console navigation ("Your apps 0"). A newcomer following the first page concludes the install is broken. content/docs/** is domain:devx, p2.

    Generated by Claude Code

  2. added
    area:devpathThe road — create, dev, verify, publish/install, connect an agent, iterate
    domain:devxDomain lane — seat card indexed by label:pm:seat
    pm:queueReady for the PM dispatch loop
    pm:dispatchedDispatched to a dev agent by /pm-dispatch
    and removed
    pm:queueReady for the PM dispatch loop
    on Nov 2, 2026
  3. objectstack-fleet commented on Nov 2, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#2 · marchtian · session_017ihL2gLghEqeDKTbDTC7Zd

    Claim: PM loop round 2
    Session: session_017ihL2gLghEqeDKTbDTC7Zd
    Account: marchtian
    Branch: claude/issue-28958-first-project-sqlite-console
    Worktree: objectstack-issue-28958
    Domain: domain:devx
    Seat: domain:devx#2
    File surface: content/docs/getting-started/your-first-project.mdx only (the driver sentence, the npm 10 callout, and a few sentences after Run it on Console navigation for the starter object)
    Container & model: S/M fix, mode:subagent, model: default tier, effort: high
    Clause-②: no
    Metadata-protocol: none
    Responsibility: the page says the starter runs in memory and that the Console is its data browser; it boots on a SQLite file and the starter object has no navigation entry
    Thread-read: 6569716077
    Premise: holds
    Serial constraints cleared: none (no open PR touches these files at claim time)

    Triaged p2 by triage#1 (6569716077). Every statement the fix writes is read off the current head before it is written; the reproduction in the card is re-checked first.

  4. objectstack-fleet commented on Nov 2, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#2 · marchtian · session_017ihL2gLghEqeDKTbDTC7Zd
    os-dev-report

    {
      "issue": 28958,
      "status": "done",
      "branch": "claude/issue-28958-first-project-sqlite-console",
      "pr": "https://github.com/objectstack-ai/objectstack/pull/29084",
      "head": "60a6d8170c6e25ab429ac04a0e293d25a4d18774",
      "session": "session_017ihL2gLghEqeDKTbDTC7Zd",
      "premise_still_valid": true,
      "summary": "Edited content/docs/getting-started/your-first-project.mdx only. Prerequisites now name the SQLite file .objectstack/data/objectstack.db (git-ignored, survives restart, reset by deleting .objectstack/data/ or os dev --fresh). Run it: npm run dev already serves the Console at /_console/ (the --ui block is gone), and a new callout says the starter ships no app so my_app_note is in no Console navigation, that an object appears there only when an app lists it, and that npx os generate app notes (or a coding agent) adds one. The npm 10 warn callout is narrowed to an info callout for readers who still see edgesOut: failure measured on 10.9.4 and 10.9.9 while vitest 4.1.12 had no matching @vitest/browser-webdriverio; 4.1.12 is now published and npm 10.9.9 installs the CLI again.",
      "files_changed": ["content/docs/getting-started/your-first-project.mdx (+29 / -11)"],
      "line_budget": "40 changed lines vs the 3000 human-merge threshold: under. No ratcheted ledger touched.",
      "claims": [
        {"claim": "default database is SQLite at .objectstack/data/objectstack.db in the project", "backed_by": "packages/runtime/src/resolve-project-database.ts resolveDatabaseStateDir (projectRoot/.objectstack) + UNIFIED_DEFAULT_DB_FILENAME; packages/cli/src/commands/dev.ts resolveDevDatabase doc (memory engine no longer a boot store)"},
        {"claim": "git-ignored", "backed_by": "packages/create-objectstack/src/templates/blank/_gitignore lists .objectstack/"},
        {"claim": "os dev --fresh boots on a throwaway database", "backed_by": "packages/cli/src/commands/dev.ts fresh flag description"},
        {"claim": "the dev server prints the database file and the Console link", "backed_by": "dev.ts printKV Database; packages/cli/src/utils/format.ts Console row"},
        {"claim": "npm run dev serves the Console without --ui", "backed_by": "packages/cli/src/commands/serve.ts ui flag default true; packages/core/src/stack-auth.ts STACK_TIER_PRESETS.default includes ui"},
        {"claim": "starter ships no app; an object appears in Console navigation only when an app lists it", "backed_by": "packages/create-objectstack/src/templates/blank/README.md section The Console - this starter ships no app"},
        {"claim": "npx os generate app notes writes an app with a nav entry for the only object plus its barrel export", "backed_by": "packages/cli/src/commands/generate.ts app generator (binds object flag, defaults to the stack's only object; barrel line to index.ts; app names not namespace-judged)"},
        {"claim": "npm 10 edgesOut failure measured on 10.9.4 and 10.9.9", "backed_by": "card 23849 body (origin of the callout)"},
        {"claim": "@vitest/browser-webdriverio 4.1.12 published; npm 10.9.9 installs the CLI (18.2.0)", "backed_by": "npm view @vitest/browser-webdriverio@4.1.12 peerDependencies = vitest ^4.1.12, time 2026-10-30; npm 10.9.9 + Node 22.23.4 dry-run installs of @objectstack/cli@18.2.0 and @objectstack/plugin-auth@18.2.0 exit 0, zero edgesOut lines"}
      ],
      "tests": "Docs-only diff, no package touched: no build closure or package test owed.",
      "gates": "dispatch-gates --commands on head 60a6d8170c derived 43 commands; all 43 exit 0. Four first exited 3 (PREREQUISITE NOT MET, unbuilt @objectstack/lint, @objectstack/formula, @objectstack/client-react) and were re-run exit 0 after building those closures under os-verify-lock (VERDICT command-exit 0): check:doc-formula-expressions, check:doc-security-posture, check:skill-examples (280 prose examples type-check), check:docs-transcript-drift. --ran reconciliation: 43 derived, 43 run, 0 NOT-MEASURED, 0 UNRUN, all with recorded exit codes. CI-only families (Build Docs, Test Core shard plan, type-check lanes): NOT MEASURED locally, CI owns them; PR check-runs in_progress at report time.",
      "changeset": "none; label skip-changeset sent with pr_create and read back on the PR (content/docs ships in no package files[])",
      "dogfood_battery": "n/a: no ! in the PR title and no (narrowing) arm",
      "deviations": [
        "The relay tool (fleet-write/dispatch.mjs) itself printed the value of HTTPS_PROXY (a localhost proxy address) in its re-exec notice; not printed by this dev's own commands. Variable named only.",
        "Rewrote the Run it command block, not only appended to it: the --ui block implied npm run dev does not serve the Console, which contradicts serve.ts and the scaffold README the order said to stay consistent with."
      ],
      "mcp_calls": "0",
      "api_writes": "2: one relay dispatch POST /repos/objectstack-ai/objectstack/dispatches (pr_create -> POST /pulls draft + POST /issues/29084/labels skip-changeset, run 41403824785 success, body read back byte-identical); this comment POST /issues/28958/comments via post-stamped.mjs. Plus git push of the own branch (not REST).",
      "open_questions": [],
      "out_of_scope_findings": [
        "class: a (misleading text) · reach: public page content/docs/getting-started/index.mdx line 173 tells every npm 10 reader the CLI cannot be installed, while npm 10.9.9 installs @objectstack/cli@18.2.0 and @objectstack/plugin-auth@18.2.0 with exit 0 (measured here) · evidence: content/docs/deployment/troubleshooting.mdx line 30 states its own removal condition for the npm 10 notes (webdriverio publishes the V4 version AND a plain npm 10 plugin-auth install passes); both now hold. Siblings: troubleshooting.mdx edgesOut entry, self-hosting.mdx lines 171 and 366. · carrier: seat (fold into one npm-10-notes retirement card) · dedupe words: npm 10 edgesOut notes removal condition met; browser-webdriverio 4.1.12 published; getting-started npm 10 callout stale"
      ]
    }
  5. objectstack-fleet commented on Nov 2, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#2 · marchtian · session_017ihL2gLghEqeDKTbDTC7Zd

    Landed · 2026-11-02T08:31Z · PR #29084 merged as c503b956da (reviewed head 60a6d8170c, seat record ACCEPT on the PR). your-first-project.mdx now names the SQLite file and npx os dev --fresh, says the starter ships no app and how to add one (npx os generate app notes), and narrows the npm 10 callout to a dated info note. The matching npm 10 notes on three other pages are carried by #29086. pm:dispatched is removed in this stroke.

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

Metadata

Metadata

Assignees

Labels

area:devpathThe road — create, dev, verify, publish/install, connect an agent, iteratebugSomething isn't workingdomain:devxDomain lane — seat card indexed by label:pm:seatpriority:p2Medium: important, M3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions