feat(threads): add two TypeScript 7 threads#55
Merged
Conversation
Covers the Go rewrite (why shared-memory concurrency was the missing capability, why not Rust) and the migration reality (removed options, changed defaults, the missing programmatic API). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
🔍 Preview deployment ready: https://binarysemaphore-f4el8ugx3-shahidios-projects.vercel.app Commit 55494e8 |
Merged
shahid-io
added a commit
that referenced
this pull request
Jul 12, 2026
* feat(threads): add two TypeScript 7 threads (#55) Covers the Go rewrite (why shared-memory concurrency was the missing capability, why not Rust) and the migration reality (removed options, changed defaults, the missing programmatic API). Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> * chore(release): v0.3.0 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
shahid-io
added a commit
that referenced
this pull request
Jul 18, 2026
* feat(threads): add two TypeScript 7 threads (#55) Covers the Go rewrite (why shared-memory concurrency was the missing capability, why not Rust) and the migration reality (removed options, changed defaults, the missing programmatic API). Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> * feat(threads): add thread on Claude routines and cron (#57) New /threads post: "Cron was easy because the job was dumb" — how a Claude routine is a cron job whose payload is an agent, and which of cron's guarantees (determinism, safe retries, overlap) that breaks. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> * feat(threads): deepen Claude routines thread, add reading enhancements (#59) Thread: - Much deeper, more practical: routine anatomy, a gallery of real routines (CI triage, dependency digest, stale sweep, on-call handoff, docs freshness) with schedules and prompts, idempotency patterns, a cron syntax refresher, and an observability section. - Adds the companion YouTube link and a `claude` tag (tags are derived from frontmatter, so it becomes a filter automatically). Reusable components (all wired into MDX): - `annotate.tsx`: hand-drawn pen marks (Underline/Circle/Box/Strike/Highlight) that draw themselves on scroll, gated behind prefers-reduced-motion. Soft candy colours (blue/violet/lime/sun), no red. - `table-of-contents.tsx`: sticky "On this page" right rail with scroll-spy. - `cron-diagram.tsx`: styled cron field breakdown, replacing brittle ASCII art. - `code-block.tsx`: copy-to-clipboard button on thread code blocks. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> * feat(threads): add cover for the Claude routines and cron thread (#61) Every other thread had a cover; this one rendered coverless on the /threads grid. Adds a designed 2:1 cover in the site's canvas and fonts (the cron field motif with a hand-drawn ring), echoing the thread's own pen annotations rather than reaching for an unrelated stock photo. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> * feat(threads): retitle the routines thread to name Claude (#63) "Cron was easy because the job was dumb" never said Claude, which weakened the title, the /threads card, and the OG/SEO metadata. The slug is unchanged, so the URL stays /threads/claude-routines-and-cron. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> * chore(skills): make .agents/skills canonical, symlink from .claude/skills (#58) The 6 project skills lived as real files under .claude/skills while an identical, untracked duplicate had appeared under .agents/skills. The supabase skills already follow the opposite (correct) pattern: real files in .agents/skills, symlinked into .claude/skills. Unify on that: .agents/skills/<skill> holds the real SKILL.md, and .claude/skills/<skill> is now a symlink to it. No content change, no duplication, git status stays clean. (--no-verify: lint-staged's stash backup errors on the new symlinks; only .md files and symlinks are staged, nothing for it to lint.) Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 <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.
TypeScript 7.0 shipped on July 8, 2026 (the Go-native "Project Corsa" compiler). Two new threads covering it, written against the official release notes rather than from memory.
Threads
why-typescript-7-is-written-in-go— the architecture piece. The 8-12x came from a port, not a redesign, which means the old compiler wasn't badly written: the runtime under it couldn't express what it was doing. Covers where the time went (JIT warmup on short builds, megamorphic call sites, millions of heap objects), the real constraint (the cyclic symbol/type graph can't be shared across JS workers, so the checker stayed single-threaded), why Go and not Rust, the--checkers/--buildersflags, whystableTypeOrderingcan't be disabled, and the LSP rewrite.upgrading-to-typescript-7— the migration guide. Removed options, the defaults that silently change your build (strict,rootDir,types: []), stricter checked-JS rules, and the thing that actually gates adoption: 7.0 ships with no programmatic API, so typescript-eslint, Vue, Svelte, Astro and MDX still need TS 6 alongside. Ends on our own situation honestly, since this site is MDX.The two cross-link to each other. Covers wired up in
thread-covers.tsusing existing images (color-stacks,planning-notes).Checks
npm run typecheckandnpm run buildpass locally; both routes render, including their OG images.Sources
🤖 Generated with Claude Code