Workflow determinism: snapshot or generation-pin the Agent definition per stage
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 30/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Active
- Tech stack
- go, kubernetes
- Domain
- backend-api-design
Research direction
Start by reading ADR 0018 and tracing the AgentRun controller's creation path, including how later workflow stages resolve their Agent definitions. Compare the snapshot and generation-pin options, then document the chosen approach and drift policy; done means later stages follow that recorded policy rather than silently using changed Agent definitions.
Written by the indexing model from the issue text.
Description
Background
#87 (landing in #169) snapshots the AgentWorkflow definition onto AgentWorkflowRun.status at init — the stage list, each stage's agentRef/instructions/execution, the guide, and the workflow-level params — and executes from that snapshot. So editing the AgentWorkflow mid-run cannot change stages already planned.
Gap
We snapshot the workflow, but not the Agent definitions the stages reference. The stage snapshot records only agentRef (the name). Each stage's AgentRun is created as the workflow progresses, and at that point the AgentRun controller reads the live Agent by name (prompt, agent-level params, skillCards, execution). No Agent generation is recorded anywhere.
Result: editing the Agent mid-run affects not-yet-created stages. Example: a 3-stage run on Agent-A; while stage 1 runs, someone edits Agent-A's prompt; stage 2 (also Agent-A) is created later and picks up the edited prompt. The workflow is frozen; the agents behind it are not.
(Note: a running stage is already immune in effect — its prompt/params are rendered and baked into the pod at sandbox creation. #169 also tightens the AgentRun to validate/read its Agent exactly once, at creation. This issue is specifically about later, not-yet-created stages.)
Options
- Snapshot the Agent definition per stage (like we do for the workflow) → immune to edits, but larger status payload and a second snapshot to reason about.
- Generation-pin: record each Agent's
metadata.generationon the stage/AgentRun and detect drift → smaller, but detection is not immunity (need a policy: refuse? warn? proceed?).
Decision (snapshot vs pin, and the drift policy) to be made here, likely with an ADR note extending 0018.
Related
- #87 (workflow-def snapshot), #169 (controller params/execution/succeeded), ADR 0018.
- Dominant language
- Go
- Stars
- 5
- Forks
- 13
- Avg merge
- 3d 11h
- Merged PRs (30d)
- 41
Getting set up
- Ships a Dockerfile or Docker Compose file
- Has a pull request template
- No contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from konveyor/agentic-controller
-
bug stream/controller
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
konveyor/agentic-controller#164 ·
Maintainers usually reply within 1 day
-
documentation good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
konveyor/agentic-controller#124 · 1 comment ·
Maintainers usually reply within 1 day
-
The verification pass cannot read the Verification section a real plan wrote, and runs a line of its prose as a commandPossibly taken @ibolton336 claimed this 1 day ago. Openbug stream/controller
konveyor/agentic-controller#336 · 1 assignee ·
Maintainers usually reply within 1 day
-
Run-time model-call failures lose the provider's error, reaching the user as "Authentication required"Possibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 4/5 3-5 days Newbie friendliness 48/100
konveyor/agentic-controller#323 ·
Maintainers usually reply within 1 day
-
Provider-aware Gateway verification for aws-bedrock / gcp-vertex-ai, so bad credentials fail at verify rather than mid-runPossibly taken @ibolton336 claimed this 3 days ago. Openenhancement stream/controller
konveyor/agentic-controller#304 · 1 assignee ·
Maintainers usually reply within 1 day
All issues in konveyor/agentic-controller
Similar issues
-
area/docs framework/hugo help wanted language/markdown
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:other issue-rating: 🦞 diamond lobster no-stale P2
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
openclaw/crabbox#3060 · 1 comment · 1 reaction ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
kubeflow/semantic-operator#52 ·
Maintainers usually reply within 10 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
enhancement help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
PramodBasavarajMenasi/siftwise#52 ·
Maintainers usually reply within 1 day