You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Assembles WrapperConfig; no function calls exercised
🛡️ Security-Critical Path Status
File
Statements
Branches
Functions
src/host-iptables.ts
✅ 100%
✅ 100%
✅ 100%
src/squid-config.ts
✅ 100%
✅ 96.12%
✅ 100%
src/docker-manager.ts
✅ 100%
✅ 100%
✅ 100%
src/domain-patterns.ts
✅ 97.67%
✅ 95.38%
✅ 100%
src/cli.ts
✅ 85.71%
⚠️ 50%
✅ 100%
All five security-critical paths meet or exceed the 70% branch coverage threshold. cli.ts branch coverage (50%) is the only item approaching the boundary.
📋 Full Coverage Table
Click to expand — all 81 files
File
Stmts
Branches
Fns
src/commands/build-config.ts
🟡 50%
🔴 0%
🔴 0%
src/commands/main-action.ts
✅ 81%
✅ 79%
⚠️ 50%
src/logs/audit-enricher.ts
✅ 84%
⚠️ 74%
✅ 100%
src/commands/predownload.ts
✅ 85%
⚠️ 61%
⚠️ 67%
src/logs/log-parser.ts
✅ 86%
⚠️ 66%
✅ 100%
src/config-writer.ts
✅ 86%
⚠️ 66%
✅ 100%
src/cli.ts
✅ 86%
⚠️ 50%
✅ 100%
src/commands/validate-options.ts
✅ 86%
⚠️ 75%
✅ 100%
src/squid/policy-manifest.ts
✅ 87%
✅ 88%
⚠️ 70%
src/commands/logs-command-helpers.ts
✅ 89%
✅ 83%
✅ 100%
src/cli-workflow.ts
✅ 89%
✅ 86%
✅ 100%
src/services/host-path-prefix.ts
✅ 89%
⚠️ 75%
✅ 100%
src/services/doh-proxy-service.ts
✅ 90%
⚠️ 75%
✅ 100%
src/container-cleanup.ts
✅ 90%
✅ 97%
✅ 100%
src/services/agent-volumes.ts
✅ 92%
⚠️ 78%
⚠️ 67%
src/logs/log-streamer.ts
✅ 92%
⚠️ 78%
✅ 89%
src/cli-options.ts
✅ 93%
⚠️ 60%
🔴 25%
src/squid/ssl-bump.ts
✅ 94%
✅ 92%
✅ 100%
src/ssl-bump.ts
✅ 94%
✅ 85%
✅ 100%
src/host-env.ts
✅ 94%
✅ 80%
✅ 100%
src/container-lifecycle.ts
✅ 94%
✅ 84%
✅ 100%
src/logs/log-aggregator.ts
✅ 95%
✅ 88%
✅ 100%
src/upstream-proxy.ts
✅ 95%
✅ 95%
✅ 100%
src/services/cli-proxy-service.ts
✅ 95%
✅ 93%
✅ 100%
src/pid-tracker.ts
✅ 96%
⚠️ 77%
✅ 100%
src/host-iptables-rules.ts
✅ 97%
✅ 94%
✅ 100%
src/domain-patterns.ts
✅ 98%
✅ 95%
✅ 100%
All remaining files
✅ 98–100%
✅ 87–100%
✅ 100%
🔍 Notable Findings
src/commands/build-config.ts — 0% function coverage.buildConfig() assembles the final WrapperConfig including API key resolution (resolveCopilotApiKey). No test exercises this function directly. It was added/modified in the past 7 days (recent activity window) and sits in a security-relevant path (credential assembly). A unit test covering the happy path plus missing-key error branch would bring this to near 100%.
src/cli.ts branch coverage at 50%. The entry-point branches (argument parsing edge cases, signal-handler wiring, error propagation from main-action) remain partially uncovered. While statement coverage is 86%, uncovered branches in an orchestration entry point can hide error-path logic gaps.
src/cli-options.ts function coverage at 25%. Only 1 of 4 exported functions is exercised. The untested functions likely handle option-normalization edge cases that could affect downstream security decisions (e.g., DNS server validation, domain list parsing).
Branch coverage dip in several log/parser files (60–78%). Files like src/logs/log-parser.ts (66% branches), src/commands/predownload.ts (61% branches), and src/logs/audit-enricher.ts (74% branches) have partially-covered conditional logic. These are lower-priority but worth noting for completeness.
📈 Recommendations
High — src/commands/build-config.ts: Write a unit test for buildConfig() covering: (a) normal inputs returning a valid WrapperConfig, (b) missing Copilot API key triggering the error branch. This file has 0% function coverage despite being on a credential-handling code path.
Medium — src/cli.ts branch coverage: Add tests for the two uncovered CLI branches — likely error exits (e.g., invalid flag combinations, --config file not found). Target: bring branch coverage from 50% → 80%+.
Medium — src/cli-options.ts function coverage: The three untested option-parsing functions should have tests covering valid and invalid inputs, particularly around domain list and DNS server normalization.
Low — log/parser branch coverage: Add edge-case tests for malformed log lines in src/logs/log-parser.ts and src/logs/audit-enricher.ts to push branch coverage above 80%.
Generated by test-coverage-reporter workflow. Trigger: push · Run: 26133838256
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
Overall Coverage
73 test files · 102 source files
🔴 Critical Gaps (< 50% statement coverage)
None — all files are at 50% or above.
🟡 Low Coverage (50–79% statement coverage)
src/commands/build-config.tsWrapperConfig; no function calls exercised🛡️ Security-Critical Path Status
src/host-iptables.tssrc/squid-config.tssrc/docker-manager.tssrc/domain-patterns.tssrc/cli.tsAll five security-critical paths meet or exceed the 70% branch coverage threshold.
cli.tsbranch coverage (50%) is the only item approaching the boundary.📋 Full Coverage Table
Click to expand — all 81 files
src/commands/build-config.tssrc/commands/main-action.tssrc/logs/audit-enricher.tssrc/commands/predownload.tssrc/logs/log-parser.tssrc/config-writer.tssrc/cli.tssrc/commands/validate-options.tssrc/squid/policy-manifest.tssrc/commands/logs-command-helpers.tssrc/cli-workflow.tssrc/services/host-path-prefix.tssrc/services/doh-proxy-service.tssrc/container-cleanup.tssrc/services/agent-volumes.tssrc/logs/log-streamer.tssrc/cli-options.tssrc/squid/ssl-bump.tssrc/ssl-bump.tssrc/host-env.tssrc/container-lifecycle.tssrc/logs/log-aggregator.tssrc/upstream-proxy.tssrc/services/cli-proxy-service.tssrc/pid-tracker.tssrc/host-iptables-rules.tssrc/domain-patterns.ts🔍 Notable Findings
src/commands/build-config.ts— 0% function coverage.buildConfig()assembles the finalWrapperConfigincluding API key resolution (resolveCopilotApiKey). No test exercises this function directly. It was added/modified in the past 7 days (recent activity window) and sits in a security-relevant path (credential assembly). A unit test covering the happy path plus missing-key error branch would bring this to near 100%.src/cli.tsbranch coverage at 50%. The entry-point branches (argument parsing edge cases, signal-handler wiring, error propagation frommain-action) remain partially uncovered. While statement coverage is 86%, uncovered branches in an orchestration entry point can hide error-path logic gaps.src/cli-options.tsfunction coverage at 25%. Only 1 of 4 exported functions is exercised. The untested functions likely handle option-normalization edge cases that could affect downstream security decisions (e.g., DNS server validation, domain list parsing).Branch coverage dip in several log/parser files (60–78%). Files like
src/logs/log-parser.ts(66% branches),src/commands/predownload.ts(61% branches), andsrc/logs/audit-enricher.ts(74% branches) have partially-covered conditional logic. These are lower-priority but worth noting for completeness.📈 Recommendations
High —
src/commands/build-config.ts: Write a unit test forbuildConfig()covering: (a) normal inputs returning a validWrapperConfig, (b) missing Copilot API key triggering the error branch. This file has 0% function coverage despite being on a credential-handling code path.Medium —
src/cli.tsbranch coverage: Add tests for the two uncovered CLI branches — likely error exits (e.g., invalid flag combinations,--configfile not found). Target: bring branch coverage from 50% → 80%+.Medium —
src/cli-options.tsfunction coverage: The three untested option-parsing functions should have tests covering valid and invalid inputs, particularly around domain list and DNS server normalization.Low — log/parser branch coverage: Add edge-case tests for malformed log lines in
src/logs/log-parser.tsandsrc/logs/audit-enricher.tsto push branch coverage above 80%.Generated by test-coverage-reporter workflow. Trigger:
push· Run: 26133838256Beta Was this translation helpful? Give feedback.
All reactions