Skip to content

fix(uipath-platform): run queue/trigger seed e2e under docker, not tempdir#2113

Merged
gabrielavaduva merged 1 commit into
mainfrom
fix/platform-seed-tasks-docker-driver
Jul 20, 2026
Merged

fix(uipath-platform): run queue/trigger seed e2e under docker, not tempdir#2113
gabrielavaduva merged 1 commit into
mainfrom
fix/platform-seed-tasks-docker-driver

Conversation

@alexenica

Copy link
Copy Markdown
Contributor

What & why

skill-platform-queue-progress-e2e and skill-platform-trigger-api-e2e fail their pre-run (seed.py) every run with:

No compatible version of '@uipath/orchestrator-tool' found for the CLI's 1.197.x line on npm or GitHub Packages.

Root cause is the sandbox.driver, not the seed. Both tasks set driver: tempdir, which runs on a bare host with no pre-baked tool plugins. seed.py calls uip or folders, so the CLI tries to auto-install @uipath/orchestrator-tool at runtime — which fails on the prerelease CLI the eval installs (it resolves tools on stable, and there's no stable build on its prerelease-only line; see UiPath/cli#3083). The pre-run dies before the task starts → score 0, deterministically.

skill-platform-role-lifecycle-e2e runs the same seed.py but under the default docker driver, where orchestrator-tool is pre-baked — and it passes. That's the tell.

The change

Switch both tasks to driver: docker, so the pre-baked skills-image:latest provides orchestrator-tool and the seed's uip or calls resolve with no runtime install. This matches the existing convention — the uipath-ixp e2e tasks already use driver: docker for exactly this reason (uip ixp is pre-baked, not resolvable in tempdir).

Why this over the CLI fix

UiPath/cli#3083 fixes the underlying prerelease resolution bug, but it only reaches these tasks after it merges and a fixed build is published and the eval installs it. This change fixes the two seed failures directly, now, with no cross-repo dependency. (#3083 is still worth landing as a real product bug.)

Verified by inspecting the 2026-07-15 run: of 778 tasks, only these two hit the error — the only two that both (a) run seed.py's uip or in pre-run and (b) use driver: tempdir.

🤖 Generated with Claude Code

…mpdir

queue-progress-e2e and trigger-api-e2e run seed.py, which calls
`uip or folders`. Under `driver: tempdir` the CLI has no pre-baked tools and
must auto-install @uipath/orchestrator-tool at runtime — which fails on the
prerelease CLI the eval installs (resolves on `stable`, no stable build on its
line; UiPath/cli#3083), so the seed dies before the task starts and both score
0 every run. role-lifecycle-e2e runs the same seed under docker and passes.

Switch both to `driver: docker` so orchestrator-tool is pre-baked, matching the
established pattern (the ixp e2e tasks use docker for the same reason). Fixes
the two seed failures without depending on the CLI-side fix landing/publishing.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Claude finished @alexenica's task in 1m 58s —— View job


PR Review: fix(uipath-platform): run queue/trigger seed e2e under docker, not tempdir

  • Gather context and read review criteria
  • Read full diff and changed files
  • Read surrounding context (sibling tasks, seed.py)
  • Perform review and post findings

Summary

Switches driver: tempdirdriver: docker in two e2e task YAMLs (queue_progress_e2e.yaml, trigger_api_e2e.yaml) whose seed.py pre-run calls uip or folders, requiring @uipath/orchestrator-tool to be pre-baked. The tempdir driver lacks this, causing deterministic seed failures on prerelease CLI builds. The fix aligns with the existing convention — role_lifecycle_e2e (same seed.py) already uses the default docker driver and passes.

Change-by-Change Review

1. tests/tasks/uipath-platform/resources/queue_progress_e2e.yaml

Severity: OK

The change from driver: tempdir to driver: docker is correct. Verified that seed.py calls uip or folders get/create (lines calling uip_json("or", "folders", ...)) which requires orchestrator-tool. The 5-line comment block above sandbox: explains the rationale clearly and references the upstream CLI bug (UiPath/cli#3083). No other fields changed — tags, success_criteria, pre_run, and post_run are untouched.

2. tests/tasks/uipath-platform/resources/trigger_api_e2e.yaml

Severity: OK

Identical driver change and identical comment block. Same rationale applies — this task uses the same seed.py with the same uip or folders calls.

What's Missing

Nothing identified. The change is minimal, targeted, and consistent with the existing convention across sibling e2e tasks.

Area Ratings

Area Status Notes
Frontmatter OK No frontmatter changes; existing fields valid
E2E Tests OK Driver fix restores these two tasks to runnable state
Skill Body N/A No skill body changes
References & Assets N/A No reference/asset changes
Repo Hygiene OK No secrets, no unrelated changes, scoped to the two affected files

Issues for Manual Review

None found.

Conclusion

Clean, well-scoped fix. The root cause analysis in the PR description is thorough — confirmed by checking that seed.py calls uip_json("or", "folders", ...) and that the sibling role_lifecycle_e2e (which runs the same seed under the default docker driver) already passes. The inline comment block documenting why docker is required is a nice touch for future maintainers. Approve.


@github-actions

github-actions Bot commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Claude finished @alexenica's task in 2m 17s —— View job


Coder-eval task lint (advisory)

2 task YAMLs changed; verdict counts: 0 Critical, 1 High, 0 Medium, 0 Low, 2 OK.

Rubric: .claude/commands/lint-task.md. This check is advisory and never blocks merge.

Evidence of passing run

High — PR body does not claim the changed tasks have been run and passed under the new driver: docker configuration. The body verifies the problem ("inspecting the 2026-07-15 run: of 778 tasks, only these two hit the error") but does not assert a passing run of the fixed tasks. Please edit the PR description to add a line like:

Ran skill-platform-queue-progress-e2e and skill-platform-trigger-api-e2e locally and they passed.

Per-task lint

tests/tasks/uipath-platform/resources/queue_progress_e2e.yaml — verdict: OK

No issues. Success criteria use run_command with an external Python check script (check_queue_progress.py) that queries tenant state directly — strong e2e validation. Prompt states the goal without prescribing procedure.

tests/tasks/uipath-platform/resources/trigger_api_e2e.yaml — verdict: OK

No issues. Same pattern as above — run_command with check_trigger_api.py querying tenant state. Prompt describes desired end-state, not procedure.

Within-PR duplicates

No duplicate clusters detected. The two tasks cover different resource types (queues vs. triggers) with different operations and check scripts.

Conclusion

⚠ 1 issue, max severity High (missing passing-run claim). Both tasks are well-structured with strong tenant-state validation. The driver: tempdirdriver: docker change is the only modification and the rationale comment is clear. Advisory only — not blocking merge.


@gabrielavaduva
gabrielavaduva merged commit d1617fc into main Jul 20, 2026
17 checks passed
@gabrielavaduva
gabrielavaduva deleted the fix/platform-seed-tasks-docker-driver branch July 20, 2026 11:32
AditiGoyalUipath pushed a commit that referenced this pull request Jul 20, 2026
…mpdir (#2113)

queue-progress-e2e and trigger-api-e2e run seed.py, which calls
`uip or folders`. Under `driver: tempdir` the CLI has no pre-baked tools and
must auto-install @uipath/orchestrator-tool at runtime — which fails on the
prerelease CLI the eval installs (resolves on `stable`, no stable build on its
line; UiPath/cli#3083), so the seed dies before the task starts and both score
0 every run. role-lifecycle-e2e runs the same seed under docker and passes.

Switch both to `driver: docker` so orchestrator-tool is pre-baked, matching the
established pattern (the ixp e2e tasks use docker for the same reason). Fixes
the two seed failures without depending on the CLI-side fix landing/publishing.

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants