Skip to content

Roadmap: continue Arc for TypeScript parity and integrations #114

Description

@woksin

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 (EventScenario and ReactorScenario):

In flight

Next

Arc parity and integrations:

Chronicle.TypeScript parity with the .NET client (umbrella Cratis/Chronicle.TypeScript#58):

How the work is done

  • One issue per change, assigned to its owner; one branch and worktree per change.
  • Arc for .NET is the reference; its Documentation/http-contract.md is the wire contract. Parity is claimed per area only with a passing executable check.
  • In-process test harnesses (Chronicle 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.
  • Every change is reviewed independently until it has no confirmed findings (cross-provider when available, otherwise a same-provider review that is stated as such), then local gates, then a PR with release notes in the repository template's sections.
  • Local gates: run every step of the root package.json ci script. The Library e2e needs a working cratis/chronicle:latest-development image (recently unreliable locally); hosted CI always runs it.
  • Merge with a merge commit only (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.
  • Applications built on Arc for TypeScript keep a behavior's backend code, backend specs, generated proxy, React component and frontend specs in one slice folder (see Documentation/vertical-slices.md).

Open decisions for the maintainer

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestquestionFurther information is requested

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions