-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathcoverage.config.json
More file actions
124 lines (124 loc) · 9.65 KB
/
coverage.config.json
File metadata and controls
124 lines (124 loc) · 9.65 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
{
"$schema": "./coverage.config.schema.json",
"description": "WARNING-ONLY PACKAGES: Time-limited exceptions for packages with coverage/test failures. Each entry MUST have an expiry date. When expired, CI will fail until issues are resolved or config is updated with justification.",
"warningOnly": [
{
"package": "1-framework/0-foundation/contract",
"reason": "S1.C cross-reference encoding added CrossReference shape to Contract.roots and domain field support to canonicalization.ts. The new canonicalization branches (domain-plane key ordering, domain-unbound type params preservation) are exercised end-to-end through emit integration tests but fall ~2% below the 94% branch threshold. Direct canonicalization branch tests deferred to a follow-up slice.",
"addedDate": "2026-05-29",
"expiryDays": 90,
"assignee": null,
"linear": "TML-2624",
"notes": "Recovery via dedicated canonicalization.ts branch tests covering the domain-plane ordering and typeParams preservation paths."
},
{
"package": "3-targets/3-targets/postgres",
"reason": "operation-resolver.ts and runner.ts have descriptor-pipeline coverage gaps. The legacy planner is exhaustively integration-tested but bypasses the new resolver. Targeted tests added for dataTransform lifecycle and addColumn/alterColumnType options; per-kind glue coverage deferred until the descriptor pipeline replaces the legacy planner.",
"addedDate": "2026-04-15",
"expiryDays": 90,
"assignee": null,
"linear": null,
"notes": "See packages/3-targets/3-targets/postgres/test/migrations/operation-resolver.integration.test.ts for the targeted coverage. Coverage will recover naturally when existing legacy-planner integration tests migrate to the descriptor pipeline."
},
{
"package": "3-targets/3-targets/sqlite",
"reason": "runner.ts, statement-builders.ts, codecs.ts, default-normalizer.ts, and other foundational files moved into target-sqlite to break a workspace cycle. They are exhaustively exercised by full target↔adapter↔driver tests in adapter-sqlite/test/migrations and the e2e framework's sqlite migrations suite, but those run in a separate vitest config so the per-package coverage report doesn't see them. Mirrors the equivalent Postgres situation.",
"addedDate": "2026-04-27",
"expiryDays": 90,
"assignee": null,
"linear": null,
"notes": "See packages/3-targets/6-adapters/sqlite/test/migrations/* (runner.basic, runner.errors, runner.idempotency, planner-introspection.integration, render-typescript.roundtrip) and test/e2e/framework/test/sqlite/migrations/* for the integration coverage. Recovery requires either reorganizing coverage scopes or adding unit-level tests inside target-sqlite."
},
{
"package": "3-extensions/sql-orm-client",
"reason": "Several test files were moved from packages/3-extensions/sql-orm-client/test/ into test/integration/test/sql-orm-client/ to break a workspace build cycle (the package depended on pgvector / postgres test fixtures through its devDependencies). The covered behaviour is still exercised end-to-end in test/integration; only the per-package coverage report regressed because those tests no longer run under the package's vitest config.",
"addedDate": "2026-05-22",
"expiryDays": 90,
"assignee": null,
"linear": "TML-2526",
"notes": "Recovery requires either reorganising coverage scopes (so integration tests count toward this package's report) or adding equivalent unit-level tests inside the package that don't need pgvector fixtures."
},
{
"package": "1-framework/2-authoring/contract",
"reason": "M9 target-extensible-IR refactor introduced composed-helpers-scaffolding.ts (currently 0%) — module-level scaffolding exercised through composed authoring flows in target packages rather than direct unit tests at the framework layer. Per-module unit coverage tracked as a follow-up before 0.9 release.",
"addedDate": "2026-05-16",
"expiryDays": 90,
"assignee": null,
"linear": "TML-2521",
"notes": "Coverage will recover once dedicated unit tests for the scaffolding helpers land; meanwhile composed-helpers behaviour is verified end-to-end in target-pack integration tests."
},
{
"package": "2-sql/1-core/contract",
"reason": "M9 target-extensible-IR refactor introduced new SQL Contract IR classes (postgres-enum-storage-entry.ts, sql-storage.ts, storage-column.ts, storage-table.ts, storage-type-instance.ts, unique-constraint.ts) and grew validators.ts to handle polymorphic storage type entries. IR classes are exercised through integration paths (contract-ts builder, family serializer round-trips, target-postgres hydration); per-class direct unit tests and additional validator branch coverage tracked as a follow-up before 0.9 release.",
"addedDate": "2026-05-16",
"expiryDays": 90,
"assignee": null,
"linear": "TML-2521",
"notes": "vitest.config.ts excludes the IR class-only files from coverage (mirroring the existing pack-types.ts pattern); validators.ts and index-type-validation.ts remain under-covered pending dedicated branch-coverage tests."
},
{
"package": "2-sql/1-core/schema-ir",
"reason": "M9 target-extensible-IR refactor lifted SQL Schema IR shapes to IR classes (primary-key.ts, sql-column-ir.ts, sql-foreign-key-ir.ts, sql-index-ir.ts, sql-schema-ir.ts, sql-table-ir.ts, sql-unique-ir.ts). They are exercised through schema verify/planner integration paths rather than direct unit tests today.",
"addedDate": "2026-05-16",
"expiryDays": 90,
"assignee": null,
"linear": "TML-2521",
"notes": "Per-class unit tests tracked as a follow-up before 0.9 release."
},
{
"package": "2-sql/2-authoring/contract-ts",
"reason": "M9 target-extensible-IR refactor reshaped build-contract.ts, composed-authoring-helpers.ts, config-types.ts, contract-builder.ts, and contract-warnings.ts to thread polymorphic storage type entries and composed authoring contributions through the SQL contract-ts builder. Coverage delta is small (1-5% below threshold) and falls on new authoring branches exercised through integration paths.",
"addedDate": "2026-05-16",
"expiryDays": 90,
"assignee": null,
"linear": "TML-2521",
"notes": "Direct branch-coverage tests for the new authoring helpers tracked as a follow-up before 0.9 release."
},
{
"package": "2-sql/3-tooling/emitter",
"reason": "M9 target-extensible-IR refactor added emitter-side handling for target-contributed entity types. src/index.ts coverage dropped marginally (91.84% statements / 89.47% branches against 97/93 thresholds) — exercised end-to-end through emitter-hook fixtures.",
"addedDate": "2026-05-16",
"expiryDays": 90,
"assignee": null,
"linear": "TML-2521",
"notes": "Direct emitter-index branch tests tracked as a follow-up."
},
{
"package": "2-sql/4-lanes/relational-core",
"reason": "M9 target-extensible-IR refactor touched codec-ref-for-column.ts, expression.ts, and middleware/param-ref-mutator.ts with small coverage drops (1-7% below threshold). Behaviour verified through downstream SQL builder and runtime integration tests.",
"addedDate": "2026-05-16",
"expiryDays": 90,
"assignee": null,
"linear": "TML-2521",
"notes": "Direct unit tests for the new branches tracked as a follow-up before 0.9 release."
},
{
"package": "3-mongo-target/1-mongo-target",
"reason": "M9 target-extensible-IR refactor formed the target-mongo package alongside its family residence. Per-target unit coverage is not yet present; the target is exercised through mongo-family integration tests and the retail-store/mongo-blog-leaderboard examples.",
"addedDate": "2026-05-16",
"expiryDays": 90,
"assignee": null,
"linear": "TML-2521",
"notes": "Per-target unit tests tracked as a follow-up before 0.9 release; mirrors the equivalent target-postgres/target-sqlite warning entries for the same architectural reason."
},
{
"package": "3-mongo-target/2-mongo-adapter",
"reason": "M9 target-extensible-IR refactor introduced mongo-control-adapter.ts, mongo-control-driver.ts, and runner-deps.ts in the mongo-adapter package. They are exercised end-to-end through mongo-family integration tests rather than per-class unit tests at the adapter layer.",
"addedDate": "2026-05-16",
"expiryDays": 90,
"assignee": null,
"linear": "TML-2521",
"notes": "Per-class unit tests tracked as a follow-up before 0.9 release; mirrors the equivalent adapter-postgres/adapter-sqlite warning entries for the same architectural reason."
},
{
"package": "1-framework/3-tooling/cli",
"reason": "Migration CLI restructure added src/commands/migration-check.ts (artifact / graph integrity verb). Behaviour is exercised end-to-end through adversarial fixture journey tests in test/integration/test/cli-journeys/migration-check.e2e.test.ts (covering all five PN-MIG-CHECK-001..005 codes) and through per-migration vs graph-wide regression tests, but the per-package coverage report sees 0% because the CLI's unit suite does not import the command directly.",
"addedDate": "2026-05-18",
"expiryDays": 90,
"assignee": null,
"linear": "TML-2552",
"notes": "Add direct unit tests for migration-check (command-level argument parsing, exit-code mapping, and one happy-path / one PN-code-per-failure-mode assertion) so per-package coverage recovers. Tracked alongside the residual internal-renames work in TML-2552."
}
],
"excludedPackages": ["1-framework/3-tooling/eslint-plugin"]
}