FluffyLabs / FluffyLabs/jammin

Remove deprecated dash-style SDK keys in 0.4.0

Open
#125 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

The 0.3.x release introduces wildcard SDK ids (`@`) and marks the following pinned keys deprecated:

- `aslan-0.0.6`
- `jam-sdk-0.1.26`
- `jade-0.0.15-pre.1`
- `ajanta-0.1.0`
- `jamc3-1.1.2`

Each emits a one-time `console.warn` on resolve with a suggested wildcard replacement. The `jambrains-1cfc41c` entry is **not** deprecated — it is pinned by sha256 digest and has no wildcard form.

## Removal checklist for 0.4.0

When cutting 0.4.0, remove the back-compat scaffolding:

1. The `// DEPRECATED:` block at the bottom of `packages/jammin-sdk/config/sdk-configs.ts` (the five entries listed above).
2. The dedup/warning machinery in the same file — once no entry carries `deprecated: true`, all of this is dead code:
- `__resetDeprecationWarnings` (test-only export)
- `warned` Set
- `warnOnceForDeprecated`
- `suggestReplacement`
- `stripDeprecatedFlag` becomes trivial; can inline or simplify
3. The `deprecated?: boolean` field on `SdkConfigEntry` in `packages/jammin-sdk/config/types/config.ts`. With nothing using it, `SdkConfigEntry` collapses to `SdkConfig` — consider removing the type entirely.
4. Tests under `describe(\"resolveSdk - deprecated exact match\")` in `packages/jammin-sdk/config/sdk-configs.test.ts`.
5. The \"Deprecated\" paragraph in `docs/src/service-examples.md`.

## Verification

- `bun run qa && bun run build && bun test` — all clean.
- No `[jammin] SDK id '...' is deprecated` lines in CI test output.
- Public API surface from `@fluffylabs/jammin-sdk` no longer exposes `__resetDeprecationWarnings`.

## Context

Introduced in branch `td-wildcard-framework-versions` (PR TBD), which ships the wildcard `@*` form and keeps dash keys around for one minor cycle.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with packages/jammin-sdk/config/sdk-configs.ts and read the deprecated exact-match tests in packages/jammin-sdk/config/sdk-configs.test.ts, then inspect SdkConfigEntry in packages/jammin-sdk/config/types/config.ts. Check the Deprecated paragraph in docs/src/service-examples.md and run bun run qa && bun run build && bun test. Done means the five dash-style entries and obsolete warning API are gone, the public package no longer exposes __resetDeprecationWarnings, and CI has no deprecation warnings.

Written by the indexing model from the issue text.

Assessment

Tech stack
bun, typescript
Domain
documentation, testing, tooling
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.