Beta Program
SuperJS v1.0 will ship after a short release-candidate (RC) cycle exercised by friendly teams in production-like environments. This page is the public contract for participants and maintainers.
Status: Recruiting has not started. RC tags are not published yet. Watch v1.0 RC Status for timeline updates.
Goals
- Validate real-world migration from TypeScript / prototype SJS at ≥1k LOC per team.
- Surface blocker bugs before
1.0.0GA. - Collect structured
dynamicusage data (C5) to inform post-1.0 interop work.
Participant commitments
Each beta team agrees to:
- Run
superjs@1.0.0-rc.X(exact RC announced when published) for ≥4 weeks. - Maintain ≥1,000 lines of SJS in a non-toy project (app, library, or service).
- File issues for bugs with repro steps; label blockers
severity=blocker. - Join a weekly 30-minute check-in (async write-up acceptable) for the first month.
- Complete the
dynamicusage survey (see below) before RC exit. - Optional: provide a short testimonial or case study for launch (not required).
Maintainer commitments
- Respond to beta issues within 2 business days.
- Ship RC patch releases for blockers only during the RC window.
- Publish aggregated (anonymized) survey results at GA.
Onboarding checklist
When RC.1 is tagged:
# 1. Install RC (version TBD)
npm install -D @superjsorg/cli@1.0.0-rc.1
# 2. Initialize or migrate
superjs init # greenfield
# or
superjs migrate from-prototype --from ./legacy-src
# 3. Baseline health
superjs doctor --json > beta-doctor-baseline.json
# 4. Open a tracking issue
# Title: [Beta] <team name> — v1.0 RC feedback
# Include: repo link (if public), stack, LOC estimate, contactdynamic usage survey (C5)
Each team runs before RC exit:
superjs doctor --json— attach output to the team tracking issue.- Count
dynamicoccurrences per kLOC:
node scripts/count-dynamic.mjs ./your-sjs-project- Classify each use by reason per
spec/dts-dynamic-reasons.md. - Maintainer aggregates into
docs/beta/dynamic-usage-survey.md.
If aggregate dynamic rate exceeds 20% across teams, we file
docs/known-issues/dynamic-rate-v1.md and prioritize post-1.0 interop work.
Apply
Beta slots are limited to three teams for v1.0. To express interest before RC.1:
- Open a GitHub Discussion using the Beta interest template (or title Beta interest — <team/org>).
- Include: project description, approximate LOC, target start date, and whether the repo can be public.
Maintainers will confirm participants when 1.0.0-rc.1 is ready.