specify failure propagation semantics (C-04)
Key design decisions: - Failure follows dependency edges, not structural scope - Parallel branches are independent: failure in one branch doesn't cancel sibling branches - blockedByFailure computed signal detects failed/aborted predecessors - Conditionals serve as error boundaries (caught failures redirect to else branch, uncaught failures cascade) - aborted nodes don't satisfy preconditions; skipped nodes do - abortAll() for systemic failures (provider outage, auth failure) Changes: - reactive-execution.md: new Failure Propagation section with sequential/parallel/join/conditional examples, blockedByFailure effect, partial success model - host-configs.md: add blockedByFailure to WorkflowNode, update status propagation effects, replace cascadeAbort with abortAll - schema.md: document precondition semantics for NodeStatus - build-distribution.md + README.md: add blockedByFailure to node-status.ts comments - review checklist: mark C-04 resolved
This commit is contained in:
@@ -273,7 +273,7 @@ When addressing these issues, use this checklist to track progress:
|
||||
- [x] C-01: Fix README cross-reference link
|
||||
- [x] C-02: Add `CallEdgeAttrs` type alias to schema.md
|
||||
- [x] C-03: Resolve `OperationEdgeAttrs` vs `TypedEdgeAttrs` naming (renamed `TypedEdgeAttrs` → `OperationEdgeAttrs`)
|
||||
- [ ] C-04: Specify failure propagation semantics in reactive-execution.md
|
||||
- [x] C-04: Specify failure propagation semantics in reactive-execution.md (failure follows dependency edges, not structural scope; Conditionals as error boundaries; blockedByFailure computed; partial success for parallel branches)
|
||||
- [ ] C-05: Create FlowGraph public API document
|
||||
- [ ] C-06: Document `<Map>` component in workflow-templates.md
|
||||
- [ ] C-07: Specify `Conditional` else-branch behavior
|
||||
|
||||
Reference in New Issue
Block a user