Repository navigation
Description
Is there an existing issue for this?
- I have searched the existing issues.
Which actions are affected?
Issue, Pull Request
Which platforms are affected?
Linux
Description
An Action-owned /copilot sync-branch --no-agent operation authenticates, fetches and merges its parent successfully, then invokes the repository's configured make ci-local verification in an issue-comment job with no JVM runtime bootstrap. The Kotlin/JVM project fails immediately because JAVA_HOME is unset and java is absent from that job's PATH. The Action safely aborts before committing/pushing, but the supported contribution flow cannot synchronize a JVM consumer using the generated workflow without additional runner preparation.
This report is about runtime prerequisites and setup/preflight guidance across languages/frameworks, not a Git merge conflict. Please establish the supported contract: provide reviewed runtime bootstrap/profile hooks where appropriate, or validate prerequisites and give an actionable setup instruction before attempting the repository operation. Java must not be unconditionally installed for unrelated consumer languages.
Reproducing the issue
- Install the generated Copilot issue-comment workflow in a Kotlin/JVM repository using Gradle and JDK 17. Its verification command is
make ci-local; its frontend also requires Node 24/pnpm. - Route the issue-comment job to a clean/self-hosted Linux runner without a pre-exported JVM in PATH. Installing Java in a separate CI job does not supply it to this job.
- Keep the generated job shape: checkout followed by
vypdev/copilot@v3, with noactions/setup-javaor repository runtime-bootstrap step. - Advance the parent development branch through the normal maintainer flow.
- On the linked managed issue, invoke
/copilot sync-branch --no-agent. - The authenticated parent fetch and conflict-free temporary merge succeed.
make ci-localinvokes the Gradle wrapper, which fails on missing Java. The Action aborts the merge; the remote issue branch remains unchanged.
The actual consumer stack includes Kotlin/JVM, Ktor, a Gradle wrapper and JDK 17; frontend verification uses Node 24/pnpm. Ordinary application CI explicitly runs actions/setup-java@v5 with distribution: temurin and java-version: "17", and passes on the same integrated application candidate. This isolates the observed difference to the issue-comment job's environment/bootstrap.
copilot Version
Live failure: action 3.9.0 at 40dc4ad1d7ff5bebd7efd52f9429391cc9869577, using consumer workflows installed by setup 3.7.0. The released 3.9.1 issue-comment template was also inspected at 1079878339640c3929330f311c9996d7e5499403: it still contains checkout followed directly by the Action, without a Java/bootstrap step. A new managed-branch sync was not executed on 3.9.1; the fresh evidence for that version is template inspection, not a claimed runtime retest.
Relevant Log Output
2026-10-20T10:04:46Z git merge-base --is-ancestor a870d1eaf72e2d454c6f6d6e83e9d584cf7dbb1f 86bc61e9be23e07f2bf48a54ab8c87791a2f63b3
2026-10-20T10:04:46Z git merge --no-ff --no-commit a870d1eaf72e2d454c6f6d6e83e9d584cf7dbb1f
Automatic merge went well; stopped before committing as requested
2026-10-20T10:04:46Z make ci-local
ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the location of your Java installation.
2026-10-20T10:04:46Z git merge --abort
Additional context and comments
Exact operational evidence
- Consumer issue: https://github.com/vypdev/platform/issues/189
- Standard sync command: https://github.com/vypdev/platform/issues/189#issuecomment-6288429605
- Failed Action run: https://github.com/vypdev/platform/actions/runs/39405093254 (job 118568972084).
- Contributor head at the failure:
86bc61e9be23e07f2bf48a54ab8c87791a2f63b3. - Parent successfully fetched/merged:
a870d1eaf72e2d454c6f6d6e83e9d584cf7dbb1f. - Consumer workflow:
.github/workflows/copilot_issue_comment.yml; runner labels[self-hosted, codex, Linux]; checkout + Action, no job runtime bootstrap. - Configured verifier observed in the log:
bugbot-fix-verify-commands: make ci-local. - Latest published source template inspected: https://github.com/vypdev/copilot/blob/1079878339640c3929330f311c9996d7e5499403/setup/workflows/copilot_issue_comment.yml
- Successful comparison: https://github.com/vypdev/platform/actions/runs/39413785022/job/118598023820 selects Java 17 explicitly and passes format, Detekt, 1,557 tests, assembly and Dependency-Check on a GitHub-generated candidate containing that same parent.
The remote managed branch was not manually synchronized or replaced. Its Action-owned lifecycle was preserved. No credentials, private environment dumps, or remote bypass instructions are included here.
Expected behavior and limits
Repository verification can require JVM, Node, Python or other project-specific tools. Setup should make the runtime contract reviewable for every job that runs repository commands, including issue-comment sync/autofix jobs; runner routing alone does not provide a runtime environment. If runtimes remain operator-owned prerequisites, generated guidance and preflight should identify the missing runtime, required version, affected verification command, job and recovery step explicitly.
Please retain the successful abort/no-push behavior on verification failure. The missing-Java root cause is confirmed for this run; whether it should be handled by setup, a configurable bootstrap hook or documented runner provisioning is a maintainer design decision. Regression coverage should include a missing-JVM fixture, a correctly provisioned JVM consumer, and a non-JVM consumer so language-specific setup is not imposed universally.
Metadata
Metadata
Assignees
Labels
Type
Projects
- StatusShow more project fieldsDone
Activity
[-]Issue-comment verification lacks runtime bootstrap or preflight for Kotlin JVM consumers[/-][+]π - Issue comment verification lacks runtime bootstrap or preflight for Kotlin JVM consumers[/+]vypbot commentedon Oct 20, 2026
Hi! Iβm @vypbot, the Copilot assistant for this repository.
I can answer questions, explain the codebase, propose implementation and test plans, review issues and pull requests for potential bugs or security problems, and help authorized maintainers apply changes.
Try
/copilot helpto see the available commands, or mention @vypbot with your question.[-]π - Issue comment verification lacks runtime bootstrap or preflight for Kotlin JVM consumers[/-][+]ππ§βπ» - Issue comment verification lacks runtime bootstrap or preflight for Kotlin JVM consumers[/+]4 remaining items
vypbot commentedon Oct 20, 2026
Issue closed β historical progress
Current status: closed as completed.
The last estimate is retained below as history. Closure does not certify a new percentage, tests, or branch alignment.
Action required: none for this closed issue. If work continues, reopen the issue; a fresh assessment can update this same card.
Last assessment before closure (historical)
vypbot commentedon Oct 20, 2026
Issue closed: synchronization recommendation retired
No branch synchronization is required for this closed issue.
The previous recommendation is historical. Issue closure does not certify that the branches are synchronized.