⚠️ Rename AgentPlaybook to AgentWorkflow; fix stage bugs - #80
Conversation
|
Warning Review limit reached
Next review available in: 6 minutes You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (32)
📝 WalkthroughWalkthroughThe PR renames AgentPlaybook resources and APIs to AgentWorkflow resources. It updates controller orchestration, parameter forwarding, stage metadata, Sandbox restart behavior, Kubernetes manifests, tests, wiring, harness references, and documentation. ChangesAgentWorkflow resource migration
Estimated code review effort: 4 (Complex) | ~45 minutes Possibly related PRs
Suggested reviewers: Sequence Diagram(s)sequenceDiagram
participant AgentWorkflowRunReconciler
participant AgentWorkflow
participant AgentRun
participant Sandbox
AgentWorkflowRunReconciler->>AgentWorkflow: fetch workflow and check readiness
AgentWorkflowRunReconciler->>AgentRun: create stage run with filtered parameters and metadata
AgentRun->>Sandbox: execute stage pod
Sandbox-->>AgentWorkflowRunReconciler: report stage result
AgentWorkflowRunReconciler->>AgentRun: start the next stage after success
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🧹 Nitpick comments (1)
internal/controller/agentrun_controller.go (1)
371-371: 🩺 Stability & Availability | 🔵 TrivialConfirm no other layer relied on pod-level restarts for transient failures.
RestartPolicyNevercorrectly lets a failed stage reach a terminal state instead of crash-looping forever, per the PR objective. This also removes any automatic retry for transient container failures (e.g., a brief node hiccup), since the kubelet will no longer restart the container at all.Confirm this tradeoff is intentional and that no bounded retry/backoff was expected at the pod level for the agent container.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@internal/controller/agentrun_controller.go` at line 371, Review the pod configuration in the agent-run creation flow around RestartPolicy and confirm that RestartPolicyNever is intentional: failed stages must reach a terminal state without kubelet restarts. Verify no other layer depends on pod-level restarts for transient agent-container failures and that no bounded retry or backoff is required; adjust the restart configuration only if that review identifies an expected retry policy.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@AGENTS.md`:
- Around line 7-10: Update the CRD inventory in AGENTS.md to include
AgentWorkflowRun alongside Agent, AgentRun, AgentWorkflow, SkillCard,
SkillCollection, and LLMProvider, so the documentation lists all seven resources
consistently with the project documentation.
In `@internal/controller/agentworkflowrun_controller.go`:
- Around line 297-363: Update createAgentRunForStage so user-supplied
pbRun.Spec.Env entries are appended before the controller-injected
KONVEYOR_WORKFLOW_STAGE and KONVEYOR_WORKFLOW_STAGE_COUNT variables. Ensure the
controller-owned metadata remains the final value for duplicate names,
preserving user env entries while preventing overrides.
---
Nitpick comments:
In `@internal/controller/agentrun_controller.go`:
- Line 371: Review the pod configuration in the agent-run creation flow around
RestartPolicy and confirm that RestartPolicyNever is intentional: failed stages
must reach a terminal state without kubelet restarts. Verify no other layer
depends on pod-level restarts for transient agent-container failures and that no
bounded retry or backoff is required; adjust the restart configuration only if
that review identifies an expected retry policy.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 6c6dbd78-ff1a-464e-b4e8-acfbd471ec5b
📒 Files selected for processing (25)
AGENTS.mdREADME.mdapi/v1alpha1/agentworkflow_types.goapi/v1alpha1/agentworkflowrun_types.goapi/v1alpha1/groupversion_info.goapi/v1alpha1/zz_generated.deepcopy.gochanges/unreleased/agentplaybook-controllers.yamlchanges/unreleased/agentworkflow-controllers.yamlchanges/unreleased/scaffold-crds.yamlcmd/main.goconfig/crd/bases/konveyor.io_agentworkflowruns.yamlconfig/crd/bases/konveyor.io_agentworkflows.yamlconfig/crd/kustomization.yamlconfig/rbac/role.yamldocs/adr/0001-agentic-platform-crd-architecture.mddocs/adr/0003-hub-curated-api-for-agent-resources.mddocs/slides/demo-2026-07-16.mdinternal/controller/agentrun_controller.gointernal/controller/agentworkflow_controller.gointernal/controller/agentworkflow_controller_test.gointernal/controller/agentworkflowrun_controller.gointernal/controller/agentworkflowrun_controller_test.gointernal/controller/crd_validation_test.gointernal/controller/doc.gointernal/controller/suite_test.go
💤 Files with no reviewable changes (1)
- changes/unreleased/agentplaybook-controllers.yaml
|
|
|
On This exercises the pass-through path but not the filtering. There's one Agent declaring one param, both stages use it, and the run supplies exactly that param, so nothing ever gets dropped. If you swapped the new logic back to Should we add a second Agent declaring a different param set? That's the actual #52 scenario, where assess needs |
Rename the config fields to say what they are: AgentPrompt, WorkflowGuide, StageInstructions. cfg.Instructions was ambiguous next to the model and provider fields. Read KONVEYOR_WORKFLOW_GUIDE, falling back to KONVEYOR_PLAYBOOK_INSTRUCTIONS. konveyor#80 renames the variable; reading both means the harness works either side of that merge rather than depending on merge order. Drop the fallback once konveyor#80 has landed everywhere. Correct the staging rules: the harness commits .gitignore and .konveyor/analysis.json itself, so "you decide what gets committed" overstated the agent's control. Rename the ## Migration Context header to ## Workflow Guide. The prompt package is general purpose and shouldn't hardcode migration. Always end the prompt with exactly one newline. Sections appended "\n\n" but StageTask appended nothing, so the ending varied with whether a stage task was set. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Signed-off-by: Fabian von Feilitzsch <fabian@fabianism.us>
9bc828a to
3a1a5ae
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
internal/controller/agentworkflowrun_controller_test.go (1)
104-145: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick winTest parameter filtering with different stage Agents.
Both stages use
agentName, and that Agent declarestestParamName. This test passes if the controller forwards every workflow-run parameter to every childAgentRun.Create a second Agent with a different declared parameter. Supply both parameters in the
AgentWorkflowRun. Assert that each stageAgentRun.Spec.Paramscontains only the parameter declared by its referenced Agent.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@internal/controller/agentworkflowrun_controller_test.go` around lines 104 - 145, Update the test setup around the two-stage AgentWorkflow and AgentWorkflowRun to create a second Ready Agent with a distinct declared parameter, reference each Agent from a different stage, and provide both parameters in the workflow run. Extend the assertions for each generated AgentRun so Spec.Params contains only the parameter declared by that stage’s referenced Agent, preserving the existing per-stage execution checks.
🧹 Nitpick comments (2)
internal/controller/agentworkflowrun_controller.go (2)
64-75: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winRename
pbRunto match theAgentWorkflowRunterminology.The variable and parameter name
pbRun("playbook run") remains throughout this file, including inReconcile,findCurrentStageIndex,createAgentRunForStage,patchRunStatus, andstageAgentRunName. The PR's stated purpose is to remove the "Playbook" terminology. RetainingpbRunas the primary identifier forAgentWorkflowRunundermines that goal and can confuse future maintainers who expect the new domain terms.Rename
pbRunto something likewfRunacross the file.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@internal/controller/agentworkflowrun_controller.go` around lines 64 - 75, Rename the AgentWorkflowRun variable currently named pbRun to wfRun throughout the file, including Reconcile, findCurrentStageIndex, createAgentRunForStage, patchRunStatus, and stageAgentRunName, updating all references consistently while preserving behavior.
50-54: 🩺 Stability & Availability | 🔵 Trivial | 💤 Low valueAdd the
AgentRBAC marker toAgentWorkflowRunReconciler.
createAgentRunForStagecallsr.Get(ctx, ..., &agent)forkonveyoriov1alpha1.Agent, butAgentWorkflowRunReconcilerdoes not declare akonveyor.io/agentsget permission.AgentReconcileralready grants broaderagentspermissions, andconfig/rbac/role.yamlalready includesagents, so existing deployments do not break. Add// +kubebuilder:rbac:groups=konveyor.io,resources=agents,verbs=gethere for standard controller-local RBAC documentation and future controller independence.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@internal/controller/agentworkflowrun_controller.go` around lines 50 - 54, Add the kubebuilder RBAC marker for the AgentWorkflowRunReconciler, granting the konveyor.io agents resource get verb. Place it alongside the existing RBAC markers near the agentworkflows and agentruns permissions, without changing the reconciler logic or broader permissions.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@internal/controller/agentworkflowrun_controller.go`:
- Around line 339-367: Move the controller-owned KONVEYOR_WORKFLOW_GUIDE append
in the workflow environment construction to after pbRun.Spec.Env is appended,
while preserving the existing conditional on workflow.Spec.Guide. Keep it
alongside the stage metadata injection so user-supplied Env entries cannot
override the workflow-authored Guide.
---
Outside diff comments:
In `@internal/controller/agentworkflowrun_controller_test.go`:
- Around line 104-145: Update the test setup around the two-stage AgentWorkflow
and AgentWorkflowRun to create a second Ready Agent with a distinct declared
parameter, reference each Agent from a different stage, and provide both
parameters in the workflow run. Extend the assertions for each generated
AgentRun so Spec.Params contains only the parameter declared by that stage’s
referenced Agent, preserving the existing per-stage execution checks.
---
Nitpick comments:
In `@internal/controller/agentworkflowrun_controller.go`:
- Around line 64-75: Rename the AgentWorkflowRun variable currently named pbRun
to wfRun throughout the file, including Reconcile, findCurrentStageIndex,
createAgentRunForStage, patchRunStatus, and stageAgentRunName, updating all
references consistently while preserving behavior.
- Around line 50-54: Add the kubebuilder RBAC marker for the
AgentWorkflowRunReconciler, granting the konveyor.io agents resource get verb.
Place it alongside the existing RBAC markers near the agentworkflows and
agentruns permissions, without changing the reconciler logic or broader
permissions.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 22fe657d-cd93-44e7-9adf-1036de94c880
📒 Files selected for processing (26)
AGENTS.mdREADME.mdapi/v1alpha1/agentworkflow_types.goapi/v1alpha1/agentworkflowrun_types.goapi/v1alpha1/groupversion_info.goapi/v1alpha1/zz_generated.deepcopy.gochanges/unreleased/agentplaybook-controllers.yamlchanges/unreleased/agentworkflow-controllers.yamlchanges/unreleased/scaffold-crds.yamlcmd/main.goconfig/crd/bases/konveyor.io_agentworkflowruns.yamlconfig/crd/bases/konveyor.io_agentworkflows.yamlconfig/crd/kustomization.yamlconfig/rbac/role.yamldocs/adr/0001-agentic-platform-crd-architecture.mddocs/adr/0003-hub-curated-api-for-agent-resources.mddocs/slides/demo-2026-07-16.mdinternal/controller/agentrun_controller.gointernal/controller/agentrun_controller_test.gointernal/controller/agentworkflow_controller.gointernal/controller/agentworkflow_controller_test.gointernal/controller/agentworkflowrun_controller.gointernal/controller/agentworkflowrun_controller_test.gointernal/controller/crd_validation_test.gointernal/controller/doc.gointernal/controller/suite_test.go
💤 Files with no reviewable changes (1)
- changes/unreleased/agentplaybook-controllers.yaml
🚧 Files skipped from review as they are similar to previous changes (22)
- docs/adr/0003-hub-curated-api-for-agent-resources.md
- cmd/main.go
- config/rbac/role.yaml
- internal/controller/agentrun_controller.go
- changes/unreleased/agentworkflow-controllers.yaml
- docs/adr/0001-agentic-platform-crd-architecture.md
- config/crd/kustomization.yaml
- docs/slides/demo-2026-07-16.md
- internal/controller/crd_validation_test.go
- changes/unreleased/scaffold-crds.yaml
- AGENTS.md
- config/crd/bases/konveyor.io_agentworkflowruns.yaml
- internal/controller/agentworkflow_controller_test.go
- internal/controller/doc.go
- config/crd/bases/konveyor.io_agentworkflows.yaml
- internal/controller/agentworkflow_controller.go
- api/v1alpha1/groupversion_info.go
- internal/controller/suite_test.go
- api/v1alpha1/agentworkflow_types.go
- api/v1alpha1/agentworkflowrun_types.go
- api/v1alpha1/zz_generated.deepcopy.go
- README.md
Rename the config fields to say what they are: AgentPrompt, WorkflowGuide, StageInstructions. cfg.Instructions was ambiguous next to the model and provider fields. Read KONVEYOR_WORKFLOW_GUIDE, falling back to KONVEYOR_PLAYBOOK_INSTRUCTIONS. that merge rather than depending on merge order. Drop the fallback once konveyor#80 has landed everywhere. Correct the staging rules: the harness commits .gitignore and .konveyor/analysis.json itself, so "you decide what gets committed" overstated the agent's control. Rename the ## Migration Context header to ## Workflow Guide. The prompt package is general purpose and shouldn't hardcode migration. Always end the prompt with exactly one newline. Sections appended "\n\n" but StageTask appended nothing, so the ending varied with whether a stage task was set. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Signed-off-by: Fabian von Feilitzsch <fabian@fabianism.us>
ibolton336
left a comment
There was a problem hiding this comment.
LGTM — the stage fixes look right and I confirmed the stage-count source-of-truth and restartPolicy test comments are addressed in the latest commit.
One nit on the #52 filter: a param that doesn't match any stage Agent's declarations is now silently dropped, where before it would fail AgentRun validation — so a typo'd param name just vanishes. A V(1) log line or Event when params are filtered out would make that debuggable. Fine as a follow-up.
3a1a5ae to
3d3e9fc
Compare
There was a problem hiding this comment.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
harness/README.md (1)
9-24: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick winSpecify a language for both fenced diagrams.
markdownlint reports MD040 for these blocks. Use
textafter each opening fence.Proposed fix
-``` +```text ┌──────────────────────────────────────────────────────┐ ... -``` +``` -``` +```text cmd/migration-harness/main.go CLI entry point (cobra, single "run" command) ... -``` +```Also applies to: 105-115
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@harness/README.md` around lines 9 - 24, Update both fenced diagram blocks in the README to specify the text language on their opening fences, using ```text while leaving the diagram contents unchanged.Source: Linters/SAST tools
docs/adr/0007-harness-thin-runner-and-skillcard-skills.md (1)
119-119: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick winAdd a language tag to the fenced code block.
Line 119 opens a fenced block without a language.
markdownlintreports MD040. Usetextfor the ASCII image.Proposed fix
-``` +```text🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/adr/0007-harness-thin-runner-and-skillcard-skills.md` at line 119, Update the fenced code block at the documented ASCII image to include the text language tag, changing its opening fence to a text-tagged fence while preserving the image content and closing fence.Source: Linters/SAST tools
🧹 Nitpick comments (1)
hack/harness-test/workflow-resources.yaml (1)
154-173: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winExercise stage-specific parameter filtering in this fixture.
This
AgentWorkflowRunhas nospec.params. The filter does not run. Add values formax_turnsandmax_fix_iterations, then verify that plan and execute receive onlymax_turnswhile verify receives both parameters.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@hack/harness-test/workflow-resources.yaml` around lines 154 - 173, Add a spec.params section to the AgentWorkflowRun fixture containing values for max_turns and max_fix_iterations. Configure the fixture so plan and execute receive only max_turns, while verify receives both parameters, exercising the stage-specific parameter filtering path.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@internal/controller/agentworkflowrun_controller_test.go`:
- Around line 123-125: Update the test around the AgentWorkflowRun stage
definitions to create a second Agent with a distinct declared parameter,
reference each Agent from a different stage, and provide both parameters in the
workflow run. Extend the assertions for the resulting AgentRuns so each stage
receives only the parameter declared by its referenced Agent, using the existing
test helpers and assertion flow.
In `@internal/controller/agentworkflowrun_controller.go`:
- Around line 160-168: Snapshot each stage’s complete definition, including
AgentRef and Instructions, along with the workflow guide when initializing the
run, then use that immutable snapshot instead of mutable workflow.Spec.Stages in
the stage execution path around stageStatus. If snapshotting cannot be added,
reject workflow-spec changes while referenced runs remain active.
---
Outside diff comments:
In `@docs/adr/0007-harness-thin-runner-and-skillcard-skills.md`:
- Line 119: Update the fenced code block at the documented ASCII image to
include the text language tag, changing its opening fence to a text-tagged fence
while preserving the image content and closing fence.
In `@harness/README.md`:
- Around line 9-24: Update both fenced diagram blocks in the README to specify
the text language on their opening fences, using ```text while leaving the
diagram contents unchanged.
---
Nitpick comments:
In `@hack/harness-test/workflow-resources.yaml`:
- Around line 154-173: Add a spec.params section to the AgentWorkflowRun fixture
containing values for max_turns and max_fix_iterations. Configure the fixture so
plan and execute receive only max_turns, while verify receives both parameters,
exercising the stage-specific parameter filtering path.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: e70af337-f93a-4172-a044-bd16d91f5f24
📒 Files selected for processing (32)
AGENTS.mdREADME.mdapi/v1alpha1/agentworkflow_types.goapi/v1alpha1/agentworkflowrun_types.goapi/v1alpha1/groupversion_info.goapi/v1alpha1/zz_generated.deepcopy.gochanges/unreleased/agentplaybook-controllers.yamlchanges/unreleased/agentworkflow-controllers.yamlchanges/unreleased/scaffold-crds.yamlcmd/main.goconfig/crd/bases/konveyor.io_agentworkflowruns.yamlconfig/crd/bases/konveyor.io_agentworkflows.yamlconfig/crd/kustomization.yamlconfig/rbac/role.yamldocs/adr/0001-agentic-platform-crd-architecture.mddocs/adr/0003-hub-curated-api-for-agent-resources.mddocs/adr/0007-harness-thin-runner-and-skillcard-skills.mddocs/slides/demo-2026-07-16.mdhack/harness-test/resources.yamlhack/harness-test/workflow-resources.yamlharness/README.mdharness/internal/config/config.goharness/internal/config/config_test.gointernal/controller/agentrun_controller.gointernal/controller/agentrun_controller_test.gointernal/controller/agentworkflow_controller.gointernal/controller/agentworkflow_controller_test.gointernal/controller/agentworkflowrun_controller.gointernal/controller/agentworkflowrun_controller_test.gointernal/controller/crd_validation_test.gointernal/controller/doc.gointernal/controller/suite_test.go
💤 Files with no reviewable changes (1)
- changes/unreleased/agentplaybook-controllers.yaml
🚧 Files skipped from review as they are similar to previous changes (22)
- docs/adr/0003-hub-curated-api-for-agent-resources.md
- config/crd/kustomization.yaml
- changes/unreleased/agentworkflow-controllers.yaml
- internal/controller/agentrun_controller.go
- internal/controller/agentrun_controller_test.go
- internal/controller/crd_validation_test.go
- docs/slides/demo-2026-07-16.md
- AGENTS.md
- internal/controller/doc.go
- internal/controller/agentworkflow_controller_test.go
- README.md
- config/crd/bases/konveyor.io_agentworkflowruns.yaml
- api/v1alpha1/agentworkflowrun_types.go
- cmd/main.go
- config/crd/bases/konveyor.io_agentworkflows.yaml
- api/v1alpha1/agentworkflow_types.go
- changes/unreleased/scaffold-crds.yaml
- api/v1alpha1/groupversion_info.go
- internal/controller/agentworkflow_controller.go
- api/v1alpha1/zz_generated.deepcopy.go
- internal/controller/suite_test.go
- docs/adr/0001-agentic-platform-crd-architecture.md
3d3e9fc to
854b40c
Compare
Rename AgentPlaybook/AgentPlaybookRun to AgentWorkflow/AgentWorkflowRun across CRD types, controllers, tests, CRD manifests, RBAC, docs, and changelog fragments. KONVEYOR_PLAYBOOK_INSTRUCTIONS renamed to KONVEYOR_WORKFLOW_GUIDE. Short names updated: ap->aw, apr->awr. Fix konveyor#51: Change AgentRun sandbox restartPolicy from OnFailure to Never so that failed stages reach a terminal phase instead of crashlooping indefinitely. Fix konveyor#52: Filter workflow-run params to only those the stage Agent declares. The controller looks up the stage Agent and forwards only matching params, removing the coupling that forced every stage Agent to declare every param from other stages. Add stage metadata env vars (konveyor#68): inject KONVEYOR_WORKFLOW_STAGE and KONVEYOR_WORKFLOW_STAGE_COUNT into each child AgentRun. The harness uses these for stage-aware token revocation (revoke only on last stage). Closes konveyor#63 Fixes konveyor#51 Fixes konveyor#52 Refs konveyor#68 Signed-off-by: David Zager <dzager@redhat.com> Signed-off-by: David Zager <david.j.zager@gmail.com>
854b40c to
ff33bf5
Compare
Rename AgentPlaybook/AgentPlaybookRun to AgentWorkflow/AgentWorkflowRun across CRD types, controllers, tests, CRD manifests, RBAC, docs, and changelog fragments. KONVEYOR_PLAYBOOK_INSTRUCTIONS renamed to KONVEYOR_WORKFLOW_GUIDE. Short names updated: ap->aw, apr->awr.
Fix #51: Change AgentRun sandbox restartPolicy from OnFailure to Never so that failed stages reach a terminal phase instead of crashlooping indefinitely.
Fix #52: Filter workflow-run params to only those the stage Agent declares. The controller looks up the stage Agent and forwards only matching params, removing the coupling that forced every stage Agent to declare every param from other stages.
Add stage metadata env vars (#68): inject KONVEYOR_WORKFLOW_STAGE and KONVEYOR_WORKFLOW_STAGE_COUNT into each child AgentRun. The harness uses these for stage-aware token revocation (revoke only on last stage).
Closes #63
Fixes #51
Fixes #52
Refs #68
Summary by CodeRabbit
New Features
AgentWorkflowandAgentWorkflowRunresources for sequential, multi-stage agent orchestration.Breaking Changes
AgentPlaybookresources and terminology withAgentWorkflow.playbookReftoworkflowRef.Bug Fixes