chore: remove affine-ts package; close #66 won't-do#95
Merged
Conversation
TypeScript is not a first-class consumer in the AffineScript ecosystem. Per the estate's no-new-TypeScript policy, hand-maintaining (or auto- generating) a dedicated TS package surfaces TS where it shouldn't be. Changes: - Delete packages/affine-ts/ entirely (4 files: README.adoc, deno.json, mod.js, types.d.ts). - Update .claude/CLAUDE.md TypeScript Exemptions table — drop the affine-ts row (now 7 active exemptions, down from 8). Add closed- exemption note documenting the removal. - Update packages/affine-js/README.adoc — replace the "companion affine-ts" pointer with a sentence saying TS is not a first-class consumer; TS callers should use affine-js directly with their own typings. The remaining packages/affine-js/types.d.ts exemption is preserved as the single interop surface for JS callers (most of whom happen to use TS tooling). That exemption stands or falls separately. Closes #66 — won't-do. Issue #66 proposed auto-generating .d.ts files for affine-js AND affine-ts. With affine-ts removed, the scope of #66 shrinks to "just affine-js", and that's a separate, smaller decision that should be its own issue if pursued. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
TypeScript is not a first-class consumer in the AffineScript ecosystem. Per the estate's no-new-TypeScript policy, having a dedicated TS package — hand-maintained or auto-generated — surfaces TS where it shouldn't be.
Changes:
packages/affine-ts/entirely (4 files: README.adoc, deno.json, mod.js, types.d.ts).claude/CLAUDE.mdTypeScript Exemptions table — drop theaffine-tsrow (now 7 active exemptions, down from 8); add closed-exemption notepackages/affine-js/README.adoc— replace the "companion@hyperpolymath/affine-ts" pointer with a statement that TS is not a first-class consumer; TS callers should useaffine-jsdirectly with their own typingsThe remaining
packages/affine-js/types.d.tsexemption is preserved as the single interop surface for JS callers (most of whom happen to use TS tooling). That exemption stands or falls separately.Closes
.d.tsforaffine-jsANDaffine-ts. Withaffine-tsremoved, the scope shrinks to "just affine-js", which should be a separate, smaller issue if pursued at all.Test plan
affine-tsremain except in historical docs (docs/reports/AFFINESCRIPT-ROADMAP-STATUS-2026-04-13.md, intentionally untouched as a dated snapshot)