Skip to content

Activate smoke-opencode workflow via copilot engine workaround#1991

Merged
lpcox merged 5 commits intomainfrom
copilot/awf-activate-opencode-smoke-test
Apr 15, 2026
Merged

Activate smoke-opencode workflow via copilot engine workaround#1991
lpcox merged 5 commits intomainfrom
copilot/awf-activate-opencode-smoke-test

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 15, 2026

smoke-opencode.md existed but had no compiled .lock.yml, leaving the smoke test permanently inactive. gh-aw v0.68.3 rejects engine: opencode (not yet supported upstream), so the workflow could not be compiled directly.

Changes

  • smoke-opencode.lock.yml — Generated via gh aw compile --engine copilot (OpenCode defaults to the same Copilot auth path through api-proxy port 10004) then post-processed with postprocess-smoke-workflows.ts:

    • --build-local replaces --image-tag/--skip-pull
    • Local npm ci && npm run build steps replace the binary install step
    • --session-state-dir injected; sparse-checkout removed from agent job
    • --enable-api-proxy retained — exercises resolveOpenCodeRoute() (OPENAI → Anthropic → Copilot fallback, including WebSocket upgrade for streaming)
  • smoke-opencode.md — Removed the stale "pending compilation" notice; frontmatter engine: opencode preserved so recompilation with proper engine support is a one-liner once it lands in gh-aw

  • .github/aw/actions-lock.json — Stale v0.68.2 entry pruned by compiler

Notes

  • registry.npmjs.org and api.githubcopilot.com are already in the defaults allowlist — no network: allowed changes required
  • When gh-aw ships engine: opencode, recompile with gh aw compile smoke-opencode and re-run postprocess-smoke-workflows.ts to switch to the proper OpenCode CLI invocation

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/repos/github/gh-aw-actions/git/ref/tags/v0.68.3
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw-actions/git/ref/tags/v0.68.3 --jq .object.sha (http block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot AI changed the title [WIP] Activate OpenCode smoke test and verify multi-provider routing Activate smoke-opencode workflow via copilot engine workaround Apr 15, 2026
Copilot AI requested a review from lpcox April 15, 2026 17:22
@lpcox lpcox marked this pull request as ready for review April 15, 2026 17:48
@lpcox lpcox requested a review from Mossaka as a code owner April 15, 2026 17:48
Copilot AI review requested due to automatic review settings April 15, 2026 17:48
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Activates the previously-inactive OpenCode smoke workflow by adding the compiled .lock.yml workflow (compiled via the Copilot engine as a temporary workaround) so the OpenCode smoke test can run in GitHub Actions.

Changes:

  • Removes the “not yet compiled / not active” notice from smoke-opencode.md.
  • Adds smoke-opencode.lock.yml to enable the workflow to run.
  • Prunes an unused github/gh-aw-actions/setup@v0.68.2 entry from .github/aw/actions-lock.json.
Show a summary per file
File Description
.github/workflows/smoke-opencode.md Removes stale “pending compilation” notice now that a lock file is present.
.github/workflows/smoke-opencode.lock.yml Adds the compiled workflow so the smoke test can actually execute.
.github/aw/actions-lock.json Removes a stale setup-action entry.

Copilot's findings

Tip

Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comments suppressed due to low confidence (1)

.github/workflows/smoke-opencode.lock.yml:105

  • github/gh-aw-actions/setup is referenced by tag (@v0.68.3) here (and in other jobs below), while other compiled workflows in this repo pin this action to a specific commit SHA. To keep the workflow immutable and consistent with existing lock files, update all uses: github/gh-aw-actions/setup@... occurrences to the resolved commit SHA for v0.68.3 and recompile/regenerate the lock accordingly.
      - name: Setup Scripts
        id: setup
        uses: github/gh-aw-actions/setup@v0.68.3
        with:
  • Files reviewed: 3/3 changed files
  • Comments generated: 1

Comment on lines +1 to +2
# gh-aw-metadata: {"schema_version":"v3","frontmatter_hash":"5bc1472d26f30a57c4a3b49337cd81096a80eb344d9a47b86df246cfd480997c","compiler_version":"v0.68.3","strict":true,"agent_id":"copilot"}
# gh-aw-manifest: {"version":1,"secrets":["COPILOT_GITHUB_TOKEN","GH_AW_GITHUB_MCP_SERVER_TOKEN","GH_AW_GITHUB_TOKEN","GITHUB_TOKEN"],"actions":[{"repo":"actions/cache","sha":"27d5ce7f107fe9357f9df03efb73ab90386fccae","version":"v5.0.5"},{"repo":"actions/checkout","sha":"de0fac2e4500dabe0009e67214ff5f5447ce83dd","version":"v6.0.2"},{"repo":"actions/download-artifact","sha":"3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c","version":"v8.0.1"},{"repo":"actions/github-script","sha":"373c709c69115d41ff229c7e5df9f8788daa9553","version":"v9"},{"repo":"actions/upload-artifact","sha":"043fb46d1a93c77aae656e7c1c64a875d1fc6a0a","version":"v7.0.1"},{"repo":"github/gh-aw-actions/setup","sha":"v0.68.3","version":"v0.68.3"}],"containers":[{"image":"ghcr.io/github/gh-aw-firewall/agent:0.25.20"},{"image":"ghcr.io/github/gh-aw-firewall/api-proxy:0.25.20"},{"image":"ghcr.io/github/gh-aw-firewall/squid:0.25.20"},{"image":"ghcr.io/github/gh-aw-mcpg:v0.2.19"},{"image":"ghcr.io/github/github-mcp-server:v0.32.0"},{"image":"node:lts-alpine"}]}
Replace bare tag reference (v0.68.3) with the resolved
commit SHA (abea67e0) in the lock file manifest and all
uses: directives for supply-chain safety.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

The toolchain var recovery from $GITHUB_ENV only activates
when runningUnderSudo is true (uid 0 + SUDO_UID set). The
test was missing this context, causing the assertion to fail
on both main and PR branches.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions
Copy link
Copy Markdown
Contributor

✅ Coverage Check Passed

Overall Coverage

Metric Base PR Delta
Lines 85.32% 85.43% 📈 +0.11%
Statements 85.22% 85.33% 📈 +0.11%
Functions 87.96% 87.96% ➡️ +0.00%
Branches 77.68% 78.00% 📈 +0.32%
📁 Per-file Coverage Changes (1 files)
File Lines (Before → After) Statements (Before → After)
src/docker-manager.ts 86.7% → 87.1% (+0.40%) 86.3% → 86.7% (+0.39%)

Coverage comparison generated by scripts/ci/compare-coverage.ts

@github-actions
Copy link
Copy Markdown
Contributor

Smoke Test Results

✅ GitHub MCP: "fix: increase token optimizer timeout and tighten prompt" / "fix(api-proxy): address review comments on OpenCode port 10004 routing"
✅ Playwright: GitHub page title verified
✅ File write: /tmp/gh-aw/agent/smoke-test-claude-24470570566.txt created
✅ Bash: file contents confirmed

Overall: PASS

💥 [THE END] — Illustrated by Smoke Claude

@github-actions
Copy link
Copy Markdown
Contributor

🔥 Smoke Test: OpenCode — PASS

Overall: PASS

🌐 Transmitted by Smoke OpenCode

@github-actions
Copy link
Copy Markdown
Contributor

🔥 Smoke Test Results

Overall: PASS

PR: "Activate smoke-opencode workflow via copilot engine workaround" by @app/copilot-swe-agent · Assignees: @lpcox @Copilot

📰 BREAKING: Report filed by Smoke Copilot

@github-actions
Copy link
Copy Markdown
Contributor

Smoke Test Results

PRs: "fix: increase token optimizer timeout and tighten prompt"; "fix(api-proxy): OpenCode port 10004 defaults to Copilot/OpenAI routing instead of Anthropic"
GitHub MCP ✅
safeinputs-gh PR query ❌
Playwright title check ✅
Tavily search ❌
File write + bash cat ✅
Discussion oracle comment ❌
AWF build (npm ci && npm run build) ✅
Overall: FAIL

🔮 The oracle has spoken through Smoke Codex

@github-actions
Copy link
Copy Markdown
Contributor

Smoke Test: GitHub Actions Services Connectivity ✅

Check Result
Redis PING (host.docker.internal:6379) PONG
PostgreSQL pg_isready (host.docker.internal:5432) ✅ accepting connections
PostgreSQL SELECT 1 (smoketest db, user postgres) ✅ returned 1

All service connectivity checks passed.

🔌 Service connectivity validated by Smoke Services

@github-actions
Copy link
Copy Markdown
Contributor

Chroot Version Comparison Results

Runtime Host Version Chroot Version Match?
Python Python 3.12.13 Python 3.12.3
Node.js v24.14.1 v20.20.2
Go go1.22.12 go1.22.12

Overall: ❌ Not all tests passed — Python and Node.js versions differ between host and chroot environments.

Tested by Smoke Chroot

@github-actions
Copy link
Copy Markdown
Contributor

🏗️ Build Test Suite Results

Ecosystem Project Build/Install Tests Status
Bun elysia 1/1 passed ✅ PASS
Bun hono 1/1 passed ✅ PASS
C++ fmt N/A ✅ PASS
C++ json N/A ✅ PASS
Deno oak N/A 1/1 passed ✅ PASS
Deno std N/A 1/1 passed ✅ PASS
.NET hello-world N/A ✅ PASS
.NET json-parse N/A ✅ PASS
Go color ok ✅ PASS
Go env ok ✅ PASS
Go uuid ok ✅ PASS
Java gson 1/1 passed ✅ PASS
Java caffeine 1/1 passed ✅ PASS
Node.js clsx All passed ✅ PASS
Node.js execa All passed ✅ PASS
Node.js p-limit All passed ✅ PASS
Rust fd 1/1 passed ✅ PASS
Rust zoxide 1/1 passed ✅ PASS

Overall: 8/8 ecosystems passed — ✅ PASS

Generated by Build Test Suite for issue #1991 · ● 774.6K ·

@lpcox lpcox merged commit 16c20a7 into main Apr 15, 2026
60 of 64 checks passed
@lpcox lpcox deleted the copilot/awf-activate-opencode-smoke-test branch April 15, 2026 18:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[awf] api-proxy/smoke: Activate OpenCode smoke test and verify multi-provider routing

3 participants