test(dev): pin the public dev-server contract for the stock-Nitro migration#780
Closed
ctgowrie wants to merge 1 commit into
Closed
test(dev): pin the public dev-server contract for the stock-Nitro migration#780ctgowrie wants to merge 1 commit into
ctgowrie wants to merge 1 commit into
Conversation
…ration Adds the research plan for replacing eve's bespoke dev transport with the stock Nitro dev server, and re-expresses the transport-level assertions that plan will delete as public-surface contract tests: - a worker crash settles an open channel stream within a bounded deadline and the server recovers, - shutdown stays bounded and graceful while a stream is open, - a kept-alive connection serves a second request across a structural worker replacement, - authored routes observe the socket peer address despite forged metadata and forwarding headers. Every migration stage must keep these suites green unchanged; suites that assert against the bespoke transport are deleted only with their subject. Signed-off-by: Casey Gowrie <[email protected]>
Contributor
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Collaborator
Author
|
Superseded: the stock-Nitro route will be a parallel stack off latest main, not stacked on the current dev-lifecycle stack. The contract tests and research doc here get ported into that stack phase by phase. |
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.
Why
We want to stop owning a bespoke dev listener/worker transport and align
eve devonto the stock Nitro dev server, without giving up authored HMR or in-flight Workflow turns finishing on the code that started them.research/dev-stock-nitro-alignment.md(added here) lays out the architecture, the two deliberately relaxed invariants, and the five-stage delivery plan.This is stage A: no runtime changes. It re-expresses every transport-level assertion the migration will delete as a public-surface contract test, so later stages can remove
dev-worker-serverand friends while provably preserving behavior.New contract tests (all pass against the current stack)
requestIpeven when the request carries forged worker metadata andx-forwarded-for.Parity rules for the rest of the stack
test/scenarios/dev-server*.tsstay green and unchanged through every stage — with one deliberate exception in stage C (instrumentation pinning across structural edits), flagged in the plan.dev-worker-server.scenario, metadata tests) are deleted only in the stage that deletes their subject.Stack
Stacked on #778. Next stages: B (server-side generation selection), C (active-worker turns), D (parent-private World RPC), E (stock Nitro dev server + drained replacement, with the env-runner drain offered upstream).
🤖 Generated with Claude Code