Repository navigation
Roadmap: continue Arc for TypeScript parity and integrations #114
Description
Activity
- addedenhancementNew feature or requestNew feature or requestquestionFurther information is requestedFurther information is requested
on Sep 28, 2026 Chronicle.TypeScript merged this round: #155 (ReadModelScenario.observe, #129 inc 6), #158 (children projections in-process, #106), #157 (PII end to end, #137), #160 (concurrent unique appends, #136), #162 (migrations on replay, #138), #159 (jobs and webhooks against a kernel, #140), #163 (patch: class-level @onceonly reactors and not-replayable webhooks are no longer replayed; stopgap for Cratis/Chronicle#4394). Blocked upstream: #139 on Cratis/Chronicle#4393, #129 5.5 on #4361. Filed: Chronicle #4383–#4386, #4390, #4393, #4394, #4396; Chronicle.TypeScript #151, #156.
Publishing to npm now blocks Cratis/Templates#61, the TypeScript
dotnet new cratistemplate. The full plan is in Cratis/Templates#61 (comment). These unpublished packages are needed:@cratis/arc.core,arc.chronicle,arc.mongodb,arc.testingandarc.proxygenerator. Refs Cratis/Documentation#19Released v0.53.0: Chronicle stores read models in the collection Arc reads them from (#144), Cratis dependencies updated to Arc 22.44, Fundamentals 7.20 and Chronicle 6.31 (#154, #150), and metric names and scope version aligned with Arc for .NET (#156, #148). In flight: outcome and transport metric attributes and generated version constants (#153), and the next Cratis dependency update (#157).
Released v0.54.0: outcome and transport attributes on Arc metrics, a command outcome counter, a 1,000-name cardinality cap, span-name constants, and generated version constants instead of package.json imports (#160, #153); Cratis dependencies updated to Arc 22.45, Fundamentals 7.22 and Chronicle 6.35 (#161, #157). In flight: discovery endpoints requiring authentication outside Development, as Arc for .NET 22.45 does (#158), and a fix for the flaky source-watch contract test on macOS (#159). #155 was moved to Cratis/Arc#2973.
Released v0.55.0 (#163, #159: proxy-generator watch mode recovers missed source changes, with
--watch-poll-interval), v0.56.0 (#162, #158: discovery endpoints require authentication outside Development, as in Arc for .NET 22.45) and v0.57.0 (#165, #164:introspection.enabled/Cratis:Arc:Introspection:Enabledturns discovery off entirely, from code or configuration). Open owner decisions: #50, #51, #52 and npm publication.Released v0.57.1 (#179, #174): in-memory sorting on a complex field is rejected instead of returning an unreliable order, and the generated
sortByhelpers for complex fields are deprecated. Also merged: decision records for #50–#52 (#170), contract tests for the TypeScript template slice (#171), the Entra ID, AuthProxy and observable authentication recipes (#172), validation specs (#173) and a pinned .NET 22.45.0 proxy comparison (#175), which found Cratis/Arc#2998. Open: #176, #177, #178, #169, npm publication.
Where Arc for TypeScript (and the Chronicle.TypeScript work it depends on) stands, what is in flight, and how to continue. Each item links to the issue that holds its details.
Recently released
Arc.TypeScript (GitHub prereleases; npm publication is still disabled):
Earlier: v0.40.0 through v0.43.0 (
runInScope, PostgreSQL LISTEN/NOTIFY observation, co-located vertical slices, projection-backed given events).Also merged without a release: AI corpus update (#117), CI fix for pull requests with an empty diff (#138, #109), documentation correction (#139, #133). Closed #35.
Chronicle.TypeScript (npm on merge), for #129 (
EventScenarioandReactorScenario):@childrenFrom(Let integrations take part in shutdown before Arc disposes services #127)In flight
Next
Arc parity and integrations:
activateArtifactsInScopesshould be on by defaultChronicle.TypeScript parity with the .NET client (umbrella Cratis/Chronicle.TypeScript#58):
How the work is done
Documentation/http-contract.mdis the wire contract. Parity is claimed per area only with a passing executable check.ReadModelScenario,EventScenario,ReactorScenario) support only behavior proven by a committed fixture from the pinned kernel oracle (yarn oracle:check); anything else is rejected with an explicit error pointing to a kernel-backed test.package.jsonciscript. The Library e2e needs a workingcratis/chronicle:latest-developmentimage (recently unreliable locally); hosted CI always runs it.gh pr merge --merge) once hosted CI is green; never squash, rebase or force-push. Minor and patch releases:gh release create vX.Y.Z --prerelease --target <merge commit>. No major release without an explicit human decision.Documentation/vertical-slices.md).Open decisions for the maintainer
activateArtifactsInScopeson by default.