master-zapier-plan-draft/packages/overview/09-expansion-template.md
George Lambert a32c91475c
Some checks are pending
offline / test (push) Waiting to run
Add overview repo and verae-nats-process expansion template
High-level system map with diagrams, TOC, and a docs index. Template
worker shows how to add a new verae.* address for search, storage, or
unplanned functions without teaching Zapier NATS.
2026-09-11 13:50:37 -04:00

1.2 KiB

9. Model repo for a new addressed process

Repository: verae-nats-process
Path in the monorepo: packages/verae-nats-process
Clone: ssh://git@git.georgelambert.org:2223/marchon/verae-nats-process.git

This is the reference implementation for expansions: a small JetStream worker with:

  • a single in address, an out address, and reply.<correlationId>
  • handle(msg) you replace with real work (search, store, transform)
  • HTTP /health so verae-fleet can keep a replica floor
  • tests that do not need a live cluster
  • ROUTING.md — the row you copy into the global address table

Default subjects (rename before production):

Direction Address
IN verae.example.process.in
OUT verae.example.process.out
REPLY verae.example.process.reply.<correlationId>
cd packages/verae-nats-process
npm test
# then rename example → your area, add fleet.json min, clone as a new Forgejo repo

Zapier still must not subscribe. If a Zap needs the result, middleware exposes HTTPS and publishes to the new in address.