Skip to content

feat(temporal): add temporal lexicon, rewrite temporal-crdb-deploy, rename temporal-local#13

Merged
lex00 merged 2 commits intomainfrom
feat/temporal-lexicon
Apr 13, 2026
Merged

feat(temporal): add temporal lexicon, rewrite temporal-crdb-deploy, rename temporal-local#13
lex00 merged 2 commits intomainfrom
feat/temporal-lexicon

Conversation

@lex00
Copy link
Copy Markdown
Contributor

@lex00 lex00 commented Apr 12, 2026

Closes #6

Summary

  • New @intentius/chant-lexicon-temporal package — 4 resources (TemporalServer, TemporalNamespace, SearchAttribute, TemporalSchedule), serializer producing docker-compose.yml / temporal-setup.sh / helm-values / schedules/*.ts, TemporalDevStack + TemporalCloudStack composites, lint rules TMP001/TMP002, post-synth checks TMP010/TMP011, MCP skills, docs site
  • New config typesTemporalChantConfig, TemporalWorkerProfile, TemporalActivityProfile, TEMPORAL_ACTIVITY_PROFILES (fastIdempotent, longInfra, k8sWait, humanGate), workflowRetryPolicy on TemporalScheduleProps
  • New GCP compositesMultiRegionVpc (VPC + subnets + routers + NATs in one call), GkeCrdbRegion (per-region GKE cluster + DNS zone + GSAs + Workload Identity bindings)
  • New K8s compositeCockroachDbRegionStack (collapses 8 per-region K8s files into one call)
  • temporal-crdb-deploy rewritesrc/temporal.ts declares namespace + search attrs via TemporalCloudStack; chant.config.ts provides typed worker profiles; 30 per-region subdirectory files replaced by 6 flat files; temporal/worker.ts connection config sourced from chant.config.ts
  • temporal-localtemporal-self-hosted — renamed, uses TemporalDevStack composite, namespace-scoped attrs/schedule, added chant.config.ts and README

Test plan

  • npx vitest run — 466 test files, 5459 tests, 0 failures
  • lexicons/temporal/src/example.test.ts — all 4 assertions pass (docker-compose, setup.sh namespace + attrs, schedule file)
  • lexicons/temporal/src/serializer.test.ts, composites.test.ts, lint-rules.test.ts, post-synth.test.ts — all pass

lex00 added 2 commits April 12, 2026 13:23
…ename temporal-local

Temporal lexicon (@intentius/chant-lexicon-temporal):
- 4 resources: TemporalServer, TemporalNamespace, SearchAttribute, TemporalSchedule
- Serializer producing docker-compose.yml, temporal-setup.sh, helm-values, schedules/
- TemporalDevStack and TemporalCloudStack composites
- TemporalActivityProfile + TEMPORAL_ACTIVITY_PROFILES (fastIdempotent, longInfra, k8sWait, humanGate)
- workflowRetryPolicy on TemporalScheduleProps
- Lint rules TMP001/TMP002, post-synth checks TMP010/TMP011
- MCP skills, docs site, integration tests

New GCP composites:
- MultiRegionVpc — VPC + subnets + routers + NATs for all regions in one call
- GkeCrdbRegion — per-region GKE cluster + DNS zone + GSAs + Workload Identity bindings

New K8s composite:
- CockroachDbRegionStack — collapses 8 per-region K8s files into one composite call

temporal-crdb-deploy example rewrite:
- src/temporal.ts: TemporalCloudStack declares namespace + 4 search attributes
- chant.config.ts: typed cloud/local worker profiles
- Per-region files: 30 subdirectory files → 6 flat files via new composites
- temporal/worker.ts: connection config sourced from chant.config.ts (typed)
- Added build:temporal + temporal:setup npm scripts

Rename temporal-local → temporal-self-hosted:
- Uses TemporalDevStack composite instead of raw resources
- Namespace-scoped search attributes and schedule
- Added chant.config.ts with local worker profile
- Added README explaining the self-hosted story and dev→prod path
gcp and k8s have new public composites in this PR (MultiRegionVpc,
GkeCrdbRegion, CockroachDbRegionStack). publish.yml was missing the
temporal lexicon step entirely.
@lex00 lex00 merged commit 6cae2fa into main Apr 13, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Temporal lexicon

1 participant