Tooling around the single Test Case Runs Notion database that drives the
Bloom test board (grouped by Status, sub-grouped by Area, filtered to the
current suite run).
clone-test-suite-run/— the ongoing maintenance tool. After a suite run finishes, clones the latest run's cards into a new suite run (resetting status, clearing run-specific fields, unchecking the body checklist). This is the day-to-day entry point. (Scaffolding; see its README.)assign-case-id/— source of record for the val.town webhook val that assigns the nextTest Case IDto cards created directly in Notion (a Notion "Page added" automation posts each new card to it; it fills blank IDs with live-max + 1). See its README for the wiring.lib/notion.mjs— shared Notion plumbing: HTTP client (auth + retry), generic page/database operations, and the rich-text / block helpers. Both the clone tool and the import build on it.import/— the one-and-done historical import that populated the database from the Bloom test-plan spreadsheets. Frozen; kept for reference and in case a re-import is ever needed. Seeimport/schema.mdfor the data model.import/one-off/— after-the-fact repair passes. Currently:restore-column-b-links/(July 2026), which restored the spreadsheet hyperlinks that the CSV export had dropped intotest-case-runs.jsonand the live 6.4 / 6.5 cards. See its README.
notion-config.json— shared config: the parent page and the live database id.
Both tools read the integration token from the BLOOM_TESTCASE_NOTION (or
NOTION_TOKEN) environment variable.