Skip to content

chore: clean up zombie-import allowlist debt (10 entries) #2355

@alexey-pelykh

Description

@alexey-pelykh

Summary

The zombie-import gate (scripts/check-no-zombie-imports.mjs) has 71 allowlisted callsites that import from dead module namespaces. These are legacy imports that predate the fork gutting work and need to be migrated to live replacements or removed.

Note: The original gate (PR #2247) had a repo-root resolution bug (resolveRepoRoot is designed for scripts/lib/, not scripts/) that caused it to scan zero files — vacuously passing. The H3 reform (ADR 0005) fixed this, revealing the true scope: 71 zombie imports across the codebase.

Allowlist by pattern

Pattern Count Example callsites
agents/pi-embedded 12 abort.ts, agent-runner.ts, session-store.ts
agents/model-selection 13 agent-runner.ts, config/defaults.ts, model-picker.ts
acp/runtime 11 acpx.ts, plugin-sdk/index.ts, action-focus.ts
agents/sandbox 9 security/audit.ts, reply-media-paths.ts
agents/skills 6 commands-types.ts, session-updates.ts, status-all.ts
agents/pi-embedded-runner 5 reply-payloads.ts, openresponses-http.ts, tts-core.ts
acp/control-plane 3 abort.ts, dispatch-from-config.test.ts, sessions.ts
agents/model-fallback 3 agent-runner.e2e.test.ts, followup-runner.ts
auto-reply/reply/commands-models 3 model-picker.ts, mattermost.ts
Other tombstone-derived 6 Various

Full list: scripts/data/zombie-import-allowlist.json

Context

Frozen as a declining debt register by the H3 zombie-import gate reform (ADR 0005). The gate prevents adding new entries without a tracking issue. Each entry should be resolved by migrating the import to a live replacement or removing the dead code path. Tracked as tombstone cleanup in #2356.

Acceptance criteria

  • All 71 callsites resolved (import replaced or dead code removed)
  • Corresponding entries removed from scripts/data/zombie-import-allowlist.json
  • .zombie-import-allowlist-baseline decremented to match

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions