Skip to content

feat(catalog): colocated SQLite OOP catalog for Ready RSS - #1398

Merged
cursor[bot] merged 7 commits into
mainfrom
cursor/catalog-sqlite-oop-a621
Oct 23, 2026
Merged

cursor[bot] merged 7 commits into
mainfrom
cursor/catalog-sqlite-oop-a621

Conversation

@danielsmithdevelopment

@danielsmithdevelopment danielsmithdevelopment commented Oct 23, 2026 •

Copy link
Copy Markdown
Owner

Summary

Port the density-baseline SQLite catalog re-land onto main (after #1397) so Ready can stay on LOAD=db: parsed OAS dies in a short-lived OOP builder child; listen opens catalog.sqlite read-only.

Changes

  • Cherry-pick b64a8374d — colocated SQLite reader/writer + OOP build CLI (node:sqlite)
  • Port operation-risk classification on LOAD=db (API hunks from 62629216f; skip Rust dataplane compile)
  • Restore security/injection-drills barrel export dropped by the cherry-pick merge
  • Document CLAWQL_CATALOG_SQLITE* in .env.example
  • Attach cause on LOAD=db hard-fail (eslint preserve-caught-error)
  • Vitest: CLAWQL_CATALOG_SQLITE=0 so a shared $HOME/.ClawQL/catalog.sqlite cannot poison later suites (catalog unit tests re-enable)

Why not merge #1318

The old #1313→#1318 stack is hundreds of commits behind tip. This PR ports the tip-compatible re-land instead.

Verify

  • Local: catalog vitest 5/5; previously failing notify/providers/graphql suites green with vitest env opt-out
  • CI: plateau already green on prior push; waiting Node matrix after isolation fix

Depends

#1397 merged to main.

Open in Web Open in Cursor 

cursoragent and others added 4 commits October 23, 2026 17:11
Bring production catalog.sqlite format onto the tree so Bun LOAD=db and
the Rust dataplane share one file. Includes compile-catalog-sqlite helper.

Co-authored-by: Daniel Smith <danielsmithdevelopment@gmail.com>
LOAD=db skips OpenAPI parse + mergeCustomSourceOperations — still classify
risk so execute mandate/block matches the normal load path. Align park/block
response fields with the prior density-baseline fix (skip Rust dataplane compile).

Co-authored-by: Daniel Smith <danielsmithdevelopment@gmail.com>
Surface OOP catalog path/build/load knobs next to the OpenAPI loaders so
operators know Ready can stay on LOAD=db without parsing OAS in-process.

Co-authored-by: Daniel Smith <danielsmithdevelopment@gmail.com>
Cherry-pick of the OOP catalog re-land dropped security/injection-drills
from the package barrel (tsc broke onboarding/security-cli). Keep catalog
export alongside the tip exports.

Co-authored-by: Daniel Smith <danielsmithdevelopment@gmail.com>
@cursor
cursor Bot changed the base branch from cursor/bun-density-peer-climb-a621 to main October 23, 2026 17:12
@cursor
cursor Bot force-pushed the cursor/catalog-sqlite-oop-a621 branch from b8da831 to 99e6e14 Compare October 23, 2026 17:12
github-actions Bot and others added 3 commits October 23, 2026 17:15
Satisfy preserve-caught-error when rethrowing SQLite LOAD=db failures.

Co-authored-by: Daniel Smith <danielsmithdevelopment@gmail.com>
Production CLAWQL_CATALOG_SQLITE defaults on, which left a shared
$HOME/.ClawQL/catalog.sqlite that short-circuited later suites via
LOAD=db. Opt out in vitest env; catalog unit tests re-enable the flag.

Co-authored-by: Daniel Smith <danielsmithdevelopment@gmail.com>
@cursor
cursor Bot merged commit 90ad5c4 into main Oct 23, 2026
26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants