cv-importer-tests zero-budget semantic-index
CV importer
Pin the @cv/importer translators and the cutover planner: cell-origin and files translation, jobs and settings projection, the plan-workspace-cutover readiness scorer, and the dry-run integration that walks v1 + v2 SQLite snapshots without writing to D1.
Behaviours 0 Tests 59 Graph 60 nodes · 59 edges Runner - CircleCI - Source qa/suites/cv-importer-tests.yaml
Test witnesses
These tests belong to the suite. Missing implementation links stay visible until a code-backed graph claim records them.
| Test | Status | Implementation | Open |
|---|---|---|---|
IMPORT_ORIGIN constant is the expected token @cv/importer · vitest · src/__tests__/cell-origin.test.ts | catalog | missing implementation link | Test |
backfills non-empty evaluations @cv/importer · vitest · src/__tests__/cell-origin.test.ts | catalog | missing implementation link | Test |
does not backfill empty evaluations / eval_reasoning @cv/importer · vitest · src/__tests__/cell-origin.test.ts | catalog | missing implementation link | Test |
handles multiple jobs independently @cv/importer · vitest · src/__tests__/cell-origin.test.ts | catalog | missing implementation link | Test |
returns a backfill for every non-null column that has no existing origin row @cv/importer · vitest · src/__tests__/cell-origin.test.ts | catalog | missing implementation link | Test |
skips columns that already have an existing origin row @cv/importer · vitest · src/__tests__/cell-origin.test.ts | catalog | missing implementation link | Test |
accumulates count when the same file is referenced in multiple jobs @cv/importer · vitest · src/__tests__/files.test.ts | catalog | missing implementation link | Test |
counts a single cv file reference @cv/importer · vitest · src/__tests__/files.test.ts | catalog | missing implementation link | Test |
counts multiple references across cv, cl, and misc @cv/importer · vitest · src/__tests__/files.test.ts | catalog | missing implementation link | Test |
detects a phantom file (v1 count=0 but recomputed=1) @cv/importer · vitest · src/__tests__/files.test.ts | catalog | missing implementation link | Test |
handles file not referenced by any job (recomputed=0) @cv/importer · vitest · src/__tests__/files.test.ts | catalog | missing implementation link | Test |
recomputed) @cv/importer · vitest · src/__tests__/files.test.ts | catalog | missing implementation link | Test |
returns 0 for all files when jobs have no files references @cv/importer · vitest · src/__tests__/files.test.ts | catalog | missing implementation link | Test |
returns empty arrays when all ref_counts are correct @cv/importer · vitest · src/__tests__/files.test.ts | catalog | missing implementation link | Test |
aggregates counts from multiple workspace results @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
computes the correct cell_origin backfills @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
dedupes jobcache ensure_ad commands for duplicate imported URLs @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
detects ref_count drift for the file @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
detects retired settings keys @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
does NOT write to v2 DB in dry-run mode @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
enrolls imported workspace job links into the jobcache command outbox @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
handles a workspace not found in v1 gracefully @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
keeps eval_* ids in order_state columns (S10 passthrough) @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
keeps format in settings and does NOT inject it into cv_profile (§2.5 deferral) @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
migrates v1 stack cl_profile to Node tree @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
migrates v1 stack cv_profile to Node tree @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
returns a WorkspaceImportResult with the correct shape @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
second run produces update action @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
synthesizes a personal-info node @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
writes the workspace row to v2 DB @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
writes workspace job links to v2 DB @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
writes workspace sub-docs without workspace document columns @cv/importer · vitest · src/__tests__/integration-dry-run.test.ts | catalog | missing implementation link | Test |
migrates old tailored_cv to Node tree @cv/importer · vitest · src/__tests__/jobs.test.ts | catalog | missing implementation link | Test |
migrates v1 stack to Node tree @cv/importer · vitest · src/__tests__/jobs.test.ts | catalog | missing implementation link | Test |
passes through already-Node tailored_cl @cv/importer · vitest · src/__tests__/jobs.test.ts | catalog | missing implementation link | Test |
passes through an already-Node tree without re-migration @cv/importer · vitest · src/__tests__/jobs.test.ts | catalog | missing implementation link | Test |
preserves all other columns unchanged @cv/importer · vitest · src/__tests__/jobs.test.ts | catalog | missing implementation link | Test |
preserves null tailored_cv @cv/importer · vitest · src/__tests__/jobs.test.ts | catalog | missing implementation link | Test |
repoints workspace_id to v2WorkspaceId @cv/importer · vitest · src/__tests__/jobs.test.ts | catalog | missing implementation link | Test |
returns null status for empty string @cv/importer · vitest · src/__tests__/jobs.test.ts | catalog | missing implementation link | Test |
returns null status for null input @cv/importer · vitest · src/__tests__/jobs.test.ts | catalog | missing implementation link | Test |
classifies append, matching, divergent, and missing jobs-doc workspaces @cv/importer · vitest · src/__tests__/plan-workspace-cutover.test.ts | catalog | missing implementation link | Test |
formats a compact markdown report for operator review @cv/importer · vitest · src/__tests__/plan-workspace-cutover.test.ts | catalog | missing implementation link | Test |
S10 re-inserts eval_* ids that get stripped by a custom partial parse @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
does NOT inject a node when a personal-info node already exists @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
does not set format on already-node lang trees @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
does not set format on migrated lang trees @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
handles empty order_state gracefully @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
handles empty settings gracefully @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
handles null / invalid JSON gracefully @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
injects a personal-info node when settings.info is present and profile lacks one @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
injects the personal-info node as the FIRST child @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
keeps format in settings when present (§2.5 deferral — per-lang move not implemented) @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
preserves an existing format field on already-node trees (pass-through, no mutation) @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
preserves eval_* column ids through Zod (string[] passthrough) @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
preserves valid settings keys @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
reports format.checkClosing as a retired nested key @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
reports retired top-level keys that Zod strips @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |
returns false when settings.info is empty @cv/importer · vitest · src/__tests__/settings.test.ts | catalog | missing implementation link | Test |