Scan Surface Display

Two scan improvements that make the output more accurate and more informative.

verdict PASSscore 20 / 20findings 4 (0 risk · 2 debt · 2 obs)duration 3h 54mrejection cycles 0shipped May 22, 2026surface cli

Pipeline timeline

Intent to proven code in 3h 54m across Think, Plan, Build, and Verify.

Think
12m
Plan
128m
Build
10m
Verify
6m

Assertion ledger

20 claims, each independently verified. Showing 8 — show all →

IDSaysMatcher
A001Monorepos with detected surfaces show a dedicated Surfaces section in terminal outputverifiedok
A002The Surfaces section header has a divider matching its name lengthverifiedok
A003Each surface line shows the surface nameverifiedok
A004Each surface line shows the framework when availableverifiedok
A005Surfaces without a framework show the language insteadverifiedok
A006Each surface line shows the primary testing frameworkverifiedok
A007Surfaces with no testing framework show identity onlyverifiedok
A008More than four surfaces triggers an overflow indicatorverifiedok

Findings 4 total

debtpackages/cli/tests/commands/scan.test.tsclosed
A007 test uses conditional assertions — passes vacuously if Surfaces section not rendered
debtpackages/cli/tests/commands/scan.test.tsclosed
A003-A006 test asserts surface names exist in block but not framework, language, or testing values
obsclosed
detectBranchPatterns primary path partially addresses duplicate git branch -r calls — fallback still uses it
obspackages/cli/src/engine/detectors/git.tsclosed
defaultBranch interpolated unsanitized into git exec — consistent with existing detectMergeStrategy pattern

Integrity seal

scopesha256:5fc9df63f61ef...
contractsha256:8bcd1a818841b...
plansha256:702af246ef4ee...
specsha256:4ca1ae2e53c7a...
build-reportsha256:f91c238ef8732...
build-datasha256:732bbe9d0ebc8...
verify-reportsha256:4f22ae14c1384...
verify-datasha256:4f1e4bc2a83e9...
audit cmd$ ana proof audit scan-surface-display   → all hashes match