Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 8 additions & 19 deletions app/src/types/index.ts
Original file line number Diff line number Diff line change
@@ -1,24 +1,13 @@
// Shared TypeScript types for the voicebox application
// Shared app-level type aliases.
// Keep these aliases in sync with the generated API contract types.
Copy link

Copilot AI Apr 19, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The header comment says these aliases are kept in sync with the generated API contract types, but @/lib/api/types is a hand-maintained file (it even lacks the generated-code header used elsewhere under src/lib/api/). Consider rewording this to “canonical API contract types” (or pointing at the actual generated module if that’s what’s intended) to avoid misleading future maintainers.

Suggested change
// Keep these aliases in sync with the generated API contract types.
// Keep these aliases in sync with the canonical API contract types.

Copilot uses AI. Check for mistakes.
import type {
GenerationResponse,
VoiceProfileResponse,
} from '@/lib/api/types';

export interface VoiceProfile {
id: string;
name: string;
description?: string;
language: string;
createdAt: string;
updatedAt: string;
}
export type VoiceProfile = VoiceProfileResponse;

export interface Generation {
id: string;
profileId: string;
text: string;
language: string;
audioPath: string;
duration: number;
seed?: number;
createdAt: string;
}
export type Generation = GenerationResponse;

export interface ServerConfig {
url: string;
Expand Down
1 change: 1 addition & 0 deletions app/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
"noUnusedLocals": true,
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true,
"ignoreDeprecations": "6.0",
Copy link

Copilot AI Apr 19, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ignoreDeprecations is set to a future major ("6.0") even though the app pins TypeScript to ^5.6.0. Using a future version here broadly suppresses deprecations that may be introduced across the rest of the 5.x line and can hide useful upgrade signals; consider scoping it to the current compiler major/minor (or the version that introduced the specific deprecation you want to silence).

Suggested change
"ignoreDeprecations": "6.0",
"ignoreDeprecations": "5.0",

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🌐 Web query:

TypeScript 5.6 ignoreDeprecations "6.0" supported values and baseUrl deprecation

💡 Result:

In TypeScript 5.6 and later (up to 6.0 as of 2026-04-19), the ignoreDeprecations compiler option silences warnings for deprecated features introduced in specific versions. The supported values are version strings like "5.0", "6.0", corresponding to deprecation phases (e.g., "ignoreDeprecations": "6.0" silences deprecations from TypeScript 6.0). baseUrl is deprecated in TypeScript 6.0 (error TS5101) and will be removed in 7.0. It previously prefixed paths mappings and served as a fallback resolution base, but now paths must explicitly include prefixes (e.g., change "@app/": ["app/"] with "baseUrl": "./src" to "@app/": ["./src/app/"]). Use "ignoreDeprecations": "6.0" temporarily to suppress the warning while migrating. A codemod tool ts5to6 assists with baseUrl and rootDir fixes. TypeScript 5.6 itself (released ~2024) does not introduce ignoreDeprecations or deprecate baseUrl; these are TypeScript 6.0 changes (beta ~Feb 2026, stable ~Mar 2026). No deprecations specific to 5.6 relate to these.

Citations:


🏁 Script executed:

cat -n app/tsconfig.json

Repository: jamiepine/voicebox

Length of output: 1051


LGTM — ignoreDeprecations: "6.0" is the correct escape hatch for the baseUrl 6.0 deprecation in TS 6.0.

Just a heads-up: this suppresses all 6.0-slated deprecations project-wide, not only baseUrl. Consider a follow-up to drop baseUrl (paths work without it under "moduleResolution": "bundler") so this flag can be removed before the TS 6.0 upgrade.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@app/tsconfig.json` at line 22, The tsconfig currently sets
"ignoreDeprecations": "6.0" which suppresses all TS 6.0 deprecation warnings
(not just baseUrl); to prepare for removing this escape hatch, remove the
project-wide ignore by deleting or reverting "ignoreDeprecations": "6.0" and
instead update the tsconfig to eliminate the deprecated baseUrl usage (replace
path resolution by relying on "moduleResolution": "bundler" with your existing
"paths" configuration), then run a full typecheck to confirm no remaining
references to baseUrl so the ignore flag can be safely removed before upgrading
to TypeScript 6.0.


/* Path aliases */
"baseUrl": ".",
Expand Down
Loading