The published dist/*.d.ts files reference sources with literal .ts extensions (e.g. dist/index.d.ts: export { parseArgs, validateInput } from "./args.ts";). The tarball ships args.d.ts, not args.ts. tsc resolves this today by stripping the extension, but @arethetypeswrong/cli and stricter resolvers (bundler/nodenext with literal resolution) will flag it as broken types.
Root cause: allowImportingTsExtensions: true (tsconfig.json:6) + barrel re-exports in src/index.ts using .ts extensions, which tsc --emitDeclarationOnly copies verbatim into declarations.
Fix options: drop .ts from the barrel specifiers, or post-process declarations to rewrite extensions.
Suggested guard: add @arethetypeswrong/cli (attw --pack) as a CI gate so this cannot regress.
The published
dist/*.d.tsfiles reference sources with literal.tsextensions (e.g.dist/index.d.ts:export { parseArgs, validateInput } from "./args.ts";). The tarball shipsargs.d.ts, notargs.ts.tscresolves this today by stripping the extension, but@arethetypeswrong/cliand stricter resolvers (bundler/nodenext with literal resolution) will flag it as broken types.Root cause:
allowImportingTsExtensions: true(tsconfig.json:6) + barrel re-exports insrc/index.tsusing.tsextensions, whichtsc --emitDeclarationOnlycopies verbatim into declarations.Fix options: drop
.tsfrom the barrel specifiers, or post-process declarations to rewrite extensions.Suggested guard: add
@arethetypeswrong/cli(attw --pack) as a CI gate so this cannot regress.