Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
209f9d8
chore(gitignore): exclude local-only design specs and docs/superpowers/
mahmoudimus Apr 16, 2026
afef078
test(issue-error-mapper): failing tests for errorMapper option
mahmoudimus Apr 16, 2026
0047b2b
test(issue-wildcard-route-collision): failing test for ambiguous rout…
mahmoudimus Apr 16, 2026
d29f60e
test(issue-build-behavior-resolver): failing tests for behavior-map h…
mahmoudimus Apr 16, 2026
7932892
test(issue-migrate-payload-to-version): failing tests for outbound we…
mahmoudimus Apr 16, 2026
fc161fa
test(issue-on-unsupported-version): failing tests for unsupported-ver…
mahmoudimus Apr 16, 2026
328b4b0
test(issue-validate-version-upgrade): failing tests for upgrade-polic…
mahmoudimus Apr 16, 2026
8a95328
test(issue-head-requests): failing tests for HEAD request support
mahmoudimus Apr 16, 2026
e73bcf6
test(issue-no-content-shortcircuit): failing tests for 204 semantics
mahmoudimus Apr 16, 2026
e809ec2
test(issue-route-options-tags): failing tests for tags in RouteOptions
mahmoudimus Apr 16, 2026
88eb56d
test(issue-pre-version-pick-hook): failing tests for preVersionPick hook
mahmoudimus Apr 16, 2026
4a0ff86
test(issue-per-client-default-version): failing tests for per-client …
mahmoudimus Apr 16, 2026
bcb2712
test(issue-route-table-dump): failing tests for dumpRouteTable + tsad…
mahmoudimus Apr 16, 2026
90372fe
test(issue-migration-chain-inspector): failing tests for migration in…
mahmoudimus Apr 16, 2026
d050fda
test(issue-exception-map): failing tests for exceptionMap helper + CLI
mahmoudimus Apr 16, 2026
921c258
test(issue-route-simulation): failing tests for simulateRoute() debugger
mahmoudimus Apr 16, 2026
676e1a6
feat: pure helpers — validateVersionUpgrade + buildBehaviorResolver +…
mahmoudimus Apr 16, 2026
36b08e9
feat: middleware options — onUnsupportedVersion + preVersionPick
mahmoudimus Apr 16, 2026
3b6e446
feat: error handling — errorMapper + exceptionMap + tsadwyn exception…
mahmoudimus Apr 16, 2026
2078eea
feat: router surface — tags in RouteOptions + HEAD support + 204 shor…
mahmoudimus Apr 16, 2026
2e4f16a
feat: generation primitives — wildcard collision warning + migratePay…
mahmoudimus Apr 16, 2026
20f7d81
feat: introspection trio — dumpRouteTable + inspectMigrationChain + s…
mahmoudimus Apr 16, 2026
fa95582
fix: 204 migrations can add a body + rewrite status (head 204 → legac…
mahmoudimus Apr 16, 2026
2940d46
test: lock in the 204+body wire-strip constraint; recommend 200 for b…
mahmoudimus Apr 16, 2026
6b2b40c
feat: deletedResponseSchema — Stripe-style DELETE envelope helper
mahmoudimus Apr 16, 2026
b66d908
test: failing tests for quick-wins bundle (CLI + 204 lint + raw)
mahmoudimus Apr 16, 2026
e7cbdbd
feat: CLI introspection trio + 204 body lint + raw() binary marker
mahmoudimus Apr 16, 2026
aefb8a4
docs+examples: client pinning explainer + show new features end-to-end
mahmoudimus Apr 16, 2026
c638b91
docs(README): comprehensive coverage of all new exports + CLI subcomm…
mahmoudimus Apr 16, 2026
244a5bc
test: close coverage gaps + stop tracking generated coverage/ artifacts
mahmoudimus Apr 16, 2026
543b028
fix(examples/stripe-api): middle-version charges now accept source OR…
mahmoudimus Apr 16, 2026
6c82ad0
feat: createVersioningRoutes — pre-wired RESTful /versioning resource
mahmoudimus Apr 16, 2026
836d628
docs(README): clarify /versioning is optional + tsadwyn owns no persi…
mahmoudimus Apr 16, 2026
80de482
examples(stripe-api): add live /versioning resource + perClientDefaul…
mahmoudimus Apr 16, 2026
0edd1e4
fix(createVersioningRoutes): add fallback option so GET reports the e…
mahmoudimus Apr 16, 2026
bf4ba5e
feat: validation errors throw ValidationError (extends HttpError) — c…
mahmoudimus Apr 16, 2026
0a2b550
feat(perClientDefaultVersion): add pinOnFirstResolve — Stripe's pin-o…
mahmoudimus Apr 16, 2026
c2306c1
docs(README): document stale pins + rationale against auto-heal
mahmoudimus Apr 17, 2026
a043f4e
docs(README): versioning error responses + migrateHttpErrors / errorM…
mahmoudimus Apr 17, 2026
e93d774
feat!: migrateHttpErrors defaults to true — Stripe-style error versio…
mahmoudimus Apr 17, 2026
18eb368
docs(README): centralizing behavior changes across API versions
mahmoudimus Apr 17, 2026
4e88a67
feat(request-context): currentRequest() accessor auto-captures Expres…
mahmoudimus Apr 17, 2026
c6e4144
feat(versioned-behavior): createVersionedBehavior — typed per-version…
mahmoudimus Apr 17, 2026
0961bbc
feat(cached-per-client-default): TTL cache + invalidation handles for…
mahmoudimus Apr 17, 2026
bff4e3c
feat(route-shadowing): configurable detector for wildcard-before-lite…
mahmoudimus Apr 17, 2026
af28c77
docs(README): deep-dive sections for currentRequest, high-traffic cac…
mahmoudimus Apr 17, 2026
15c291b
fix(versioning-routes): throw on empty/missing supportedVersions at c…
mahmoudimus Apr 18, 2026
e894bd8
chore(tests): remove stale @ts-expect-error + GAP framing from now-pa…
mahmoudimus Apr 18, 2026
dd464fd
fix(behavior-resolver): enforce logger requirement when onUnknown is …
mahmoudimus Apr 19, 2026
3ed1f66
chore(tests): sweep remaining stale "FAILING TEST" headers into plain…
mahmoudimus Apr 19, 2026
0358f18
fix(application): catch onStartup async rejections instead of escapin…
mahmoudimus Apr 19, 2026
4d80c19
fix(migrate-payload): opt-in path-based migrations via opts.path + op…
mahmoudimus Apr 19, 2026
8cc0478
fix(route-generation): suppress body on HEAD for Buffer / stream / st…
mahmoudimus Apr 19, 2026
b7f7a6f
feat(application): expose onUnsupportedVersion + versionPickingLogger…
mahmoudimus Apr 19, 2026
5bec932
fix(application): share a single SIGTERM/SIGINT handler across Tsadwy…
mahmoudimus Apr 19, 2026
e381a61
fix(application): wrap unversioned route dispatch in requestContextSt…
mahmoudimus Apr 19, 2026
72659a3
refactor: route all schema-name reads through getSchemaName() helper
mahmoudimus Apr 19, 2026
fe063df
docs(cached-per-client-default): document onStalePin='reject' × cachi…
mahmoudimus Apr 19, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,13 @@ coverage/
coverage-cli/
CLAUDE.md
_gitless/

# Design specs and brainstorming artifacts are kept local-only.
# The repo holds runnable code + tests + docs meant for publication;
# per-issue design specs and superpowers/ scratchpads live adjacent
# to the code but aren't part of the published history.
docs/superpowers/
tsadwyn-issue-*.md
tsadwyn-issues-*.md
consumer-integration-followups.md
migrate-to-latest.md
731 changes: 731 additions & 0 deletions README.md

Large diffs are not rendered by default.

224 changes: 0 additions & 224 deletions coverage/base.css

This file was deleted.

87 changes: 0 additions & 87 deletions coverage/block-navigation.js

This file was deleted.

Loading
Loading