Skip to content

[deep-report] gh aw compile has no panic-recovery boundary around per-workflow compilation #65080

Description

@github-actions

Description

gh aw compile has no recover() boundary around compiling an individual workflow in the native CLI path (only cmd/gh-aw-wasm/compile_recovery.go has one, for WASM). Several production panic() calls sit on the per-workflow compile path (e.g. mustGetAllowedDomainsForEngineWithModel in pkg/workflow/domains.go:691, called from universal_llm_consumer_engine.go:295, pi_engine.go:423, behavior_defined_engine.go:734). In a 299-workflow batch compile, one bad invariant anywhere aborts the entire run with a raw Go stack trace and no indication of which workflow file triggered it.

Expected Impact

A panic during one workflow's compile becomes a normal compile error naming the workflow path; the rest of the batch still compiles (with a non-zero exit code), instead of the whole gh aw compile run dying on an unrelated file.

Suggested Agent

GitHub Copilot coding agent — wrap per-file compile in pkg/cli (compileSpecificFiles / single-file compile) with a recovery boundary mirroring the existing cmd/gh-aw-wasm/compile_recovery.go pattern, log the recovered stack via pkg/logger, and add a unit test that injects a panic and asserts both the per-file error and batch continuation.

Estimated Effort

Quick (<1 hour)

Data Source

DeepReport Intelligence Briefing — 2026-10-02, sourced from Repository Quality Improvement Report #65022 ("Compiler Panic Containment"), Task 1.

Generated by 🔬 Deep Report · claude · agent · 212 AIC · ⌖ 7.99 AIC · ⊞ 7.3K · ◷

  • expires on Oct 4, 2026, 10:42 AM UTC-08:00

Activity

  1. github-actions commented on Oct 4, 2026

    @github-actions
    ContributorAuthor

    This issue was automatically closed because it expired on 2026-10-04T18:42:32.408Z.

    Closed by Workflow

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions