docs(readme): add a data-driven loop program graph beside the linear one#1045
Merged
Conversation
The README showed only the linear MockMed program graph. Add a second, richer example right after it: a compact `save-encounter` body wrapped by `openadapt flow for-each` into a governed data-driven LOOP, rendered by `openadapt flow visualize --format mermaid`. The graph shows the `Loop over worklist` node running the body once per record (`per row of worklist`), the `next record` loop-back edge, the `worklist exhausted` exit to `Success`, and the irreversible, effect-verified `save encounter` write as the per-record halt point. A plain-text caption carries the same content for PyPI (no Mermaid there). The graph is engine-generated (not hand-drawn) and the loop it depicts is replay-tested in openadapt-flow. Honest about scope: identity gating is noted as "where armed", and the body is labelled a compact MockMed fixture with a pointer to the full-recording loop showcase. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NyCHrzA1psrKMFfroYbzaM
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The launcher README shows the compiled MockMed workflow as a linear program graph. This adds a second, richer example right after it -- a data-driven loop -- so the README shows both the straight-line case and the control flow a linear IR cannot express.
The graph is a compact
save-encounterbody wrapped byopenadapt flow for-eachinto a governedLOOP, rendered byopenadapt flow visualize --format mermaid:flowchart TD n0{"Loop over worklist"} n1("type patient_id") n2("type note") n3("save encounter<br/><small>effect · irreversible</small>") n4{{"Success"}} n0 -->|per row of worklist| n1 n1 --> n2 n2 --> n3 n3 -->|next record| n0 n0 -->|worklist exhausted| n4It shows the
Loop over worklistnode running the body once per record (per row of worklist), thenext recordloop-back edge, theworklist exhaustedexit toSuccess, and the irreversible, effect-verifiedsave encounterwrite as the per-record halt point. A plain-text caption carries the same content for PyPI (which does not render Mermaid), matching the linear example's style.Honesty
openadapt-flow(a companion PR expands loop bodies invisualizeand ships the committeddocs/showcase-encounter-loopbundle the runtime interprets once per record).saveshows the effect gate + irreversible halt, not an identity gate); the body is labelled a compact MockMed fixture, with a pointer to the full-recording loop showcase.🤖 Generated with Claude Code
https://claude.ai/code/session_01NyCHrzA1psrKMFfroYbzaM