guildhall/apps/guildhall_orchestrator
Tyler J King 50c488b92b feat(orchestrator): harden consortium starter pipeline — FfcSchematic RPCs, validation, wire encoding
Rewrites the schematic deployment pipeline from dead SchematicsService RPCs
(ForkSchematic/CreateDeploymentBinding) to the actual FfcSchematicService flow
(Create→Validate→Approve→Publish→Realize). Adds template schema validation,
variable resolution hardening, wire encoding, and centralized realization status.

New modules:
- SchematicTemplate.Schema — 7-section structural + cross-section validation
- SchematicTemplate.VariableResolver — placeholder resolution with param checks
- SchematicTemplate.WireEncoder — resolved template → FfcSchematic wire format
- SchematicClient.Behaviour — callback definitions for testability
- FfcPipeline — 12-step deploy orchestrator with step-level error reporting
- RealizationStatus — centralized status classification and display helpers

Changes:
- SchematicClient: removed fork/bind RPCs, added FfcSchematic RPCs
- RealizationPoller: delegates to RealizationStatus, persists snapshots to DB
- GuildSchematic: expanded status enum, added founding_override_expires_at
- Realization LiveView: uses RealizationStatus for all status logic
- Schematic LiveView: replaced dead flow with FfcPipeline.deploy/2

52 tests, 0 failures.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Tyler J King <tking@guildhouse.dev>
2026-05-16 10:33:13 -04:00
..
lib/guildhall feat(orchestrator): harden consortium starter pipeline — FfcSchematic RPCs, validation, wire encoding 2026-05-16 10:33:13 -04:00
priv/schematic_templates feat(orchestrator): harden consortium starter pipeline — FfcSchematic RPCs, validation, wire encoding 2026-05-16 10:33:13 -04:00
test feat(orchestrator): harden consortium starter pipeline — FfcSchematic RPCs, validation, wire encoding 2026-05-16 10:33:13 -04:00
.formatter.exs feat: scaffold guildhall Elixir umbrella 2026-04-18 07:09:20 -04:00
.gitignore feat: scaffold guildhall Elixir umbrella 2026-04-18 07:09:20 -04:00
mix.exs fix(orchestrator): drop google_protos dep conflicting with protobuf builtins 2026-05-15 15:44:41 -04:00
README.md feat: scaffold guildhall Elixir umbrella 2026-04-18 07:09:20 -04:00

Guildhall.Orchestrator

TODO: Add description

Installation

If available in Hex, the package can be installed by adding guildhall_orchestrator to your list of dependencies in mix.exs:

def deps do
  [
    {:guildhall_orchestrator, "~> 0.1.0"}
  ]
end

Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/guildhall_orchestrator.