API Surface Issue
Category
Unused exports — parameter/option interfaces exposed unnecessarily
Summary
Two option interfaces are exported from their respective modules but are never imported anywhere else:
| Symbol |
File |
Line |
LogsCommandOptions |
src/commands/logs.ts |
19 |
StreamOptions |
src/logs/log-streamer.ts |
18 |
StreamOptions is additionally re-exported via src/logs/index.ts (line 14), widening its surface further.
Evidence
$ grep -rn "LogsCommandOptions" src/ tests/
src/commands/logs.ts:19:export interface LogsCommandOptions {
src/commands/logs.ts:37:export async function logsCommand(options: LogsCommandOptions): Promise<void> {
$ grep -rn "StreamOptions" src/ tests/
src/logs/log-streamer.ts:18:export interface StreamOptions {
src/logs/log-streamer.ts:36:export async function streamLogs(options: StreamOptions): Promise<void> {
src/logs/index.ts:14:export { streamLogs, StreamOptions } from './log-streamer';
Neither symbol is imported by any other file.
Recommended Fix
LogsCommandOptions: Remove export from line 19 of src/commands/logs.ts.
StreamOptions: Remove export from line 18 of src/logs/log-streamer.ts and remove StreamOptions from the re-export in src/logs/index.ts line 14.
Impact
- Dead code risk: Low (type-only)
- Maintenance burden: Medium (unnecessary public contract; barrel re-export of
StreamOptions makes it look intentionally public)
Detected by Export Audit workflow. Triggered by push to main on 2026-05-04
Generated by API Surface & Export Audit · ● 312.6K · ◷
API Surface Issue
Category
Unused exports — parameter/option interfaces exposed unnecessarily
Summary
Two option interfaces are exported from their respective modules but are never imported anywhere else:
LogsCommandOptionssrc/commands/logs.tsStreamOptionssrc/logs/log-streamer.tsStreamOptionsis additionally re-exported viasrc/logs/index.ts(line 14), widening its surface further.Evidence
Neither symbol is imported by any other file.
Recommended Fix
LogsCommandOptions: Removeexportfrom line 19 ofsrc/commands/logs.ts.StreamOptions: Removeexportfrom line 18 ofsrc/logs/log-streamer.tsand removeStreamOptionsfrom the re-export insrc/logs/index.tsline 14.Impact
StreamOptionsmakes it look intentionally public)Detected by Export Audit workflow. Triggered by push to main on 2026-05-04