mirror of
https://github.com/openprose/prose.git
synced 2026-09-19 05:55:05 +08:00
f12dcda4d8
Ships @openprose/reactor 0.3.0, @openprose/reactor-cli 0.2.0, @openprose/reactor-devtools 0.2.0: the Reactor harness (compile-once-intelligent then dumb reconciler, content-addressed receipts, cost scales with surprise) with the distilled ideal public API — curated front door, full @openai/agents passthrough, one typed handle, one Substrate, unified observe, branded ids, and additive forward seams for the fixpoint.
1.5 KiB
1.5 KiB
name, kind
| name | kind |
|---|---|
| wire | function |
Run Forme wiring to produce a manifest. This function implements the Forme wiring layer's
wiring algorithm — reading contracts, auto-wiring dependencies by semantic
matching, and producing an execution manifest. Previously a top-level command, now
available as prose run std/ops/wire.
Parameters
- target: path to the system
*.prose.mdfile to wire
Returns
- manifest: forme.manifest.json written to /runs/{id}/ containing the full wiring graph. The returned manifest is guaranteed to contain the full wiring graph for the target.
Errors
- not-found: target file does not exist
- unresolvable: one or more services could not be wired — no contract match found
Strategies
- recursively resolve all contracts reachable from the target system (intra-node
calltargets in### Execution, and cross-node### Requiressubscriptions) - for each contract, read it and build the DAG by matching
### Requiresfacet-contracts to the### Maintainsfacets of other responsibilities using semantic matching - detect cycles and report them as errors (acyclicity is a postcondition on the topology)
- write the compiled Forme manifest to /runs/{id}/forme.manifest.json with the full wiring graph and execution order
Execution
let resolved = call resolver
target: target
let matched = call matcher
contracts: resolved.contracts
let manifest = call manifest-writer
graph: matched.graph
return { manifest: manifest.manifest }