- Unit / connector fixtures:
tests/connector_{codex,cline,gemini,claude,opencode,amp}.rs(basic parse/normalize); minimal since_ts/dedupe coverage still missing. - UI snapshots / CLI smoke:
tests/ui_{footer,help,hotkeys,snap}.rs. - Search:
search::queryunit covers filters+pagination basics. - Integration/E2E: none.
- Install scripts: none.
- Watch/incremental: none.
- Logging assertions: none.
- Benchmarks: present but only runtime checks (no assertions in CI).
- Connectors (bd-unit-connectors-complete)
- Add regression fixtures for since_ts routing, external_id dedupe, idx resequencing, snippet mapping, created_at handling.
- Assert per-connector agent/workspace tagging and source_path normalization.
- Storage (bd-unit-storage)
schema_versiongetter error surfaces; migration happy-path check.rebuild_ftsrepopulates after manual delete.- Transaction rollback on insert failure leaves DB consistent.
- Append-only path in
insert_conversation_treerespectsexternal_iduniqueness.
- Indexer (bd-unit-indexer)
- Full run with
--fulltruncates tables/index; append-onlyadd_messagespreserves prior messages; since_ts routing per connector; watch_state persistence.
- Full run with
- Search (bd-unit-search)
- Filters interaction (agent/workspace/time) and pagination boundaries; snippet highlight ordering.
- TUI (bd-unit-tui-components)
- Snapshot tests for search bar tips, filter pill clear hotkeys, detail tabs visibility and state when no selection.
- Watch / incremental (bd-e2e-watch-incremental)
- Touch fixture → targeted reindex only for affected connector; watch_state.json high-water mark bump.
- Installers (bd-e2e-install-scripts)
- install.sh / install.ps1 checksum enforcement (good vs bad), DEST honored, local
file://artifacts.
- install.sh / install.ps1 checksum enforcement (good vs bad), DEST honored, local
- Logging (bd-logging-coverage)
- Structured tracing spans for connectors/indexer/search with assertions on key events.
- E2E smoke (bd-e2e-index-tui-smoke)
- Seed fixtures, run
index --full, launchtui --once, assert doc count and UI renders without panic.
- Seed fixtures, run
- CI wiring (bd-ci-e2e-job)
- Add CI job that runs install + e2e smokes (watch optional), with timeouts and artifact caching.
- Docs/help (bd-docs-testing)
- README testing matrix, env knobs, help text alignment with added tests.
- bd-unit-connectors: fixtures + per-connector tests (see below).
- bd-unit-storage: Sqlite schema/version/transaction tests.
- bd-unit-indexer: full vs incremental vs append-only coverage.
- bd-unit-search: filter/highlight/pagination tests.
- bd-unit-tui-components: snapshot tests for bar/pills/detail tabs.
- bd-e2e-index-tui-smoke: seed fixtures, run index --full, launch tui --once, assert logs.
- bd-e2e-watch-incremental: watch run + file touch, assert targeted reindex + watch_state bump.
- bd-e2e-install-scripts: checksum pass/fail, DEST install.
- bd-logging-coverage: tracing span assertions.
- bd-ci-e2e-job: wire above into CI with timeouts.
- bd-docs-testing: README testing matrix + env knobs.
- Keep fixtures under
tests/fixtures/(already present for all connectors) and extend as needed for since_ts and append-only scenarios. - Add installer tar/zip + matching
.sha256pairs for positive/negative checksum tests (localfile://), small (<50KB) to keep CI fast. - Provide mini watch-mode playground (temp home) with connector-specific paths to validate targeted reindexing.
- Land storage + indexer unit tests (unblock downstream beads).
- Add tracing/log capture helper in
tests/utilshared by logging + watch tests. - Extend connector fixtures for since_ts/append-only, then add regression tests.
- Add installer checksum fixtures and e2e harness.