acdream/docs/reviews/coverage-ledger.md

147 lines
7.9 KiB
Markdown

# Coverage ledger
Audit baseline: `15539a22a67f8d915d88f8b1d8126cd55eedda6e`.
The baseline commit and path-set fingerprints make the reviewed file universe
reproducible without copying thousands of paths into this document:
| Scope | Fingerprint (`git ls-files ... | git hash-object --stdin`) | Files/lines at baseline |
|---|---|---:|
| `src/**`, `tools/**` | `b79a0390fad9a3e86de765e49f869720045bbc94` | 1,325 C# files / 416,628 lines |
| `tests/**` | `34b425e434a7a3980e556a1ce445f2a40ae196fd` | 1,260 C# files / 402,131 lines |
| `docs/**`, root authorities, `memory/**` | `46b6c109b8b986a9425c46e66cbe6967e5ae3d46` | 1,127 tracked paths |
The repository has 4,018 tracked paths: 1,365 under `src`, 1,352 under
`tests`, 1,109 under `docs`, 152 under `tools`, 15 under `memory`, one
WorldBuilder gitlink, and 24 root/editor/CI paths.
## Owned production and tool code
“Inventory complete” means the file set, project references, package
references, size distribution, and solution membership were collected.
“Reviewed” means every file in the row participated in the all-file structural,
comment/reference, configuration, failure-handling, and dependency scans, with
manual review of entry points, public boundaries, exceptions, and size/
complexity hotspots.
| Area | C# files | Lines | Inventory | Deep review |
|---|---:|---:|---|---|
| `src/AcDream.App` | 628 | 205,466 | complete | complete |
| `src/AcDream.Bake` | 11 | 1,884 | complete | complete |
| `src/AcDream.Cli` | 6 | 1,736 | complete | complete |
| `src/AcDream.Content` | 31 | 7,533 | complete | complete |
| `src/AcDream.Core` | 275 | 78,848 | complete | complete |
| `src/AcDream.Core.Net` | 98 | 21,781 | complete | complete |
| `src/AcDream.Headless` | 35 | 8,859 | complete | complete |
| `src/AcDream.Launcher` | 15 | 3,342 | complete | complete |
| `src/AcDream.Launcher.Core` | 50 | 13,661 | complete | complete |
| `src/AcDream.Platform` | 2 | 206 | complete | complete |
| `src/AcDream.Plugin.Abstractions` | 8 | 147 | complete | complete |
| `src/AcDream.Plugins.Smoke` | 1 | 34 | complete | complete |
| `src/AcDream.Runtime` | 112 | 62,894 | complete | complete |
| `src/AcDream.UI.Abstractions` | 37 | 6,294 | complete | complete |
| `tools/*` | 16 | 3,903 | complete | complete |
The non-C# owned tooling surface contains 84 tracked executable scripts: 38
WinDbg/CDB command files, 30 PowerShell scripts, and 16 Python scripts across
the repository root and `tools/`. These are included in the tool review even
though they are not represented by the C# path-set count above. Initial
execution/readability triage is complete; support classification and exact
prerequisites are classified in F-004. All 13 tracked tool projects were also built
individually: eight succeed and five fail (three absent relative
DatReaderWriter references and two source-API drift errors). Two of the eight
passes depend on a developer-specific absolute project path that happens to
exist on the audit machine. Script triage found absolute Windows paths in 55 of
84 files and explicit developer-home paths in 43.
Size is already an audit dimension: 83 owned C# files are at least 1,000
lines, 24 are at least 2,000, and nine are at least 3,000. Size alone is not a
finding; cohesion, ownership, and change coupling will determine which files
are flagged.
## Test source
| Test area | C# files | Lines | Inventory | File-by-file review |
|---|---:|---:|---|---|
| `AcDream.App.Tests` | 515 | 174,271 | complete | complete |
| `AcDream.Bake.Tests` | 5 | 665 | complete | complete |
| `AcDream.Cli.Tests` | 1 | 178 | complete | complete |
| `AcDream.Content.Tests` | 29 | 6,120 | complete | complete |
| `AcDream.Core.Net.Tests` | 115 | 26,976 | complete | complete |
| `AcDream.Core.Tests` | 398 | 99,802 | complete | complete |
| `AcDream.Headless.Tests` | 18 | 9,573 | complete | complete |
| `AcDream.Launcher.Core.Tests` | 27 | 8,615 | complete | complete |
| `AcDream.Launcher.Tests` | 7 | 2,123 | complete | complete |
| `AcDream.Platform.Tests` | 2 | 224 | complete | complete |
| `AcDream.Runtime.Tests` | 91 | 64,102 | complete | complete |
| `AcDream.UI.Abstractions.Tests` | 46 | 8,583 | complete | complete |
| Fixture/helper projects and `tests/Fixtures` | 6 | 899 | complete | complete |
The exact baseline set is every path returned by
`git ls-files 'tests/**/*.cs'`; its fingerprint is recorded above. There are
68 test C# files at least 1,000 lines, 16 at least 2,000, and nine at least
3,000. Parameterized rows and generated/live-DAT gates will be audited through
their data sources as well as their declaring methods.
## Documentation and repository infrastructure
| Area | Inventory | Review |
|---|---|---|
| Root `README.md`, `NOTICE.md`, `AGENTS.md`, `CLAUDE.md` | complete | complete |
| `docs/README.md`, milestones, roadmap, issues | complete | complete |
| Architecture and divergence authorities | complete | complete |
| Active M4 plans/specifications | complete | complete |
| Historical plans, research, and audit records | complete | complete classification/link scan |
| `memory/` and documented `claude-memory/` links | complete | complete |
| Solution/project graph and CI | complete | complete |
| External/generated/reference material | complete | complete |
## Initial inventory facts
- `AcDream.slnx` contains all 14 owned `src` projects, 16 test/fixture
projects, and only one of the 13 tracked tool projects (`RetailTimeProbe`).
- `references/WorldBuilder` is the sole tracked reference gitlink and is not
initialized in this worktree. No other documented reference checkout is
present.
- Five tracked tool projects reference a nonexistent
`references/DatReaderWriter` project; two encode a developer-specific
absolute path.
- The repository-instruction audit skill named at `AGENTS.md:725` is absent,
as is the `claude-memory/` tree linked by the documentation map.
- The solution Release build was executed at the baseline: it succeeds with
26 warnings, all emitted by test projects.
- Every test assembly was executed. Eleven complete normally in the combined
run; Launcher.Core passes 338/338 alone but deadlocks in the combined run.
Current reproducible totals are 14,747 passing and 77 reported skipped, plus
one duplicate theory row dropped during discovery.
- All 11,458 declared fact/theory-like methods were syntax-inventoried for
assertion signals, diagnostic naming, literal tautologies, conditional
execution, skips, and timing primitives. The conditional-execution pass
found 314 method-level empty returns in 294 methods across 107 files; 271 of
those methods silently pass when an asset or opt-in environment gate is not
available. This cross-file triage supplied the exception set for the
completed semantic follow-up below.
## Completion evidence
The semantic follow-up is complete. It manually reviewed every exceptional
class produced by the all-file matrix: no-oracle methods and their helpers,
empty returns, explicit/custom skips, environment and installed-DAT gates,
source-text assertions, sleeps/real-time deadlines, random/concurrent tests,
literal tautologies, duplicate data, diagnostic naming, dead-stack tests, and
the open flake ledger. The exact actionable catalog is in
`test-quality-audit.md`; valid no-throw and deterministic-repeatability tests
were deliberately excluded from the “useless” label.
Documentation coverage used a full 1,014-file Markdown relative-link scan and
manual reading of the authority chain, current campaign/status documents,
repository instructions, memory entry points, issue/divergence ledgers, CI,
release/update paths, and representative historical records. Historical
research was classified and mechanically checked rather than line-edited as
if it were current architecture.
Build/test execution, package-vulnerability lookup, project/tool builds,
repository-size/provenance census, secret-pattern scan, and managed-stack
capture for the launcher hang provide executable corroboration. No source,
test, configuration, existing documentation, commit, or external system was
modified by this audit.