Skip to content

Default Copilot SDK log level to all in harness SDK mode#37003

Merged
pelikhan merged 2 commits into
mainfrom
copilot/set-default-log-level-to-all
Jun 4, 2026
Merged

Default Copilot SDK log level to all in harness SDK mode#37003
pelikhan merged 2 commits into
mainfrom
copilot/set-default-log-level-to-all

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Jun 4, 2026

The harness path that constructs SDK-mode child process environment did not set a default COPILOT_SDK_LOG_LEVEL, so the SDK driver fell back to "warning". This change makes the default explicit and aligned with the desired behavior: SDK logging defaults to "all" unless an override is provided.

  • Scope

    • Update shared SDK env construction used by copilot_harness.cjs to set COPILOT_SDK_LOG_LEVEL=all when SDK mode is active.
    • Preserve caller-provided COPILOT_SDK_LOG_LEVEL values unchanged.
  • Behavioral change

    • SDK mode now always carries an explicit log level into child env.
    • Existing explicit log-level configuration remains authoritative.
  • Test updates

    • Extend env-helper unit expectations to include the new default.
    • Add coverage for explicit log-level override passthrough.
const sdkEnv = { COPILOT_SDK_URI: uri };
sdkEnv.COPILOT_SDK_LOG_LEVEL = sourceEnv.COPILOT_SDK_LOG_LEVEL || "all";

Copilot AI and others added 2 commits June 4, 2026 23:00
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copilot AI changed the title Default Copilot SDK log level to all in harness env Default Copilot SDK log level to all in harness SDK mode Jun 4, 2026
Copilot AI requested a review from pelikhan June 4, 2026 23:05
@pelikhan pelikhan marked this pull request as ready for review June 4, 2026 23:06
Copilot AI review requested due to automatic review settings June 4, 2026 23:06
@pelikhan pelikhan merged commit e81b34e into main Jun 4, 2026
@pelikhan pelikhan deleted the copilot/set-default-log-level-to-all branch June 4, 2026 23:07
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

This pull request makes Copilot SDK harness “SDK mode” explicitly default COPILOT_SDK_LOG_LEVEL to all when COPILOT_SDK_URI is present, while preserving any caller-provided log level override.

Changes:

  • Default COPILOT_SDK_LOG_LEVEL to "all" in buildCopilotSDKEnv when SDK mode is enabled.
  • Update/extend unit tests to assert the new default and verify explicit override passthrough.
  • Regenerate multiple workflow *.lock.yml files (embedded awf-config JSON changed).
Show a summary per file
File Description
actions/setup/js/process_runner.cjs Set default COPILOT_SDK_LOG_LEVEL=all when building SDK env.
actions/setup/js/process_runner.test.cjs Update env-helper expectations + add override coverage.
actions/setup/js/copilot_harness.test.cjs Update harness-side expectation for SDK env helper output.
.github/workflows/workflow-health-manager.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/workflow-generator.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/video-analyzer.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/test-workflow.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/test-quality-sentinel.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/test-project-url-default.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/test-dispatcher.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/smoke-copilot-sdk.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/slide-deck-maintainer.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/security-review.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/security-compliance.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/refiner.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/q.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/pr-description-caveman.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/poem-bot.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/plan.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/pdf-summary.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/mergefest.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/jsweep.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/gpclean.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/dev-hawk.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/designer-drift-audit.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/craft.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/contribution-check.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/code-simplifier.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/brave.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/ace-editor.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/archie.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).
.github/workflows/agentic-token-optimizer.lock.yml Workflow lock regeneration (embedded awf-config JSON updated).

Copilot's findings

Tip

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

  • Files reviewed: 92/243 changed files
  • Comments generated: 2

Comment on lines 168 to +172
@@ -169,6 +169,7 @@ function buildCopilotSDKEnv(env) {
if (!uri) return {};
/** @type {NodeJS.ProcessEnv} */
const sdkEnv = { COPILOT_SDK_URI: uri };
sdkEnv.COPILOT_SDK_LOG_LEVEL = sourceEnv.COPILOT_SDK_LOG_LEVEL || "all";
Comment on lines 894 to +896
export COPILOT_API_KEY="$COPILOT_DUMMY_BYOK"
(umask 177 && touch /tmp/gh-aw/agent-stdio.log)
printf '%s\n' '{"$schema":"https://github.com/github/gh-aw-firewall/releases/download/v0.25.63/awf-config.schema.json","network":{"allowDomains":["*.grafana.net","*.sentry.io","api.business.githubcopilot.com","api.enterprise.githubcopilot.com","api.github.com","api.githubcopilot.com","api.individual.githubcopilot.com","api.snapcraft.io","archive.ubuntu.com","azure.archive.ubuntu.com","crl.geotrust.com","crl.globalsign.com","crl.identrust.com","crl.sectigo.com","crl.thawte.com","crl.usertrust.com","crl.verisign.com","crl3.digicert.com","crl4.digicert.com","crls.ssl.com","github.com","host.docker.internal","json-schema.org","json.schemastore.org","keyserver.ubuntu.com","ocsp.digicert.com","ocsp.geotrust.com","ocsp.globalsign.com","ocsp.identrust.com","ocsp.sectigo.com","ocsp.ssl.com","ocsp.thawte.com","ocsp.usertrust.com","ocsp.verisign.com","packagecloud.io","packages.cloud.google.com","packages.microsoft.com","ppa.launchpad.net","raw.githubusercontent.com","registry.npmjs.org","s.symcb.com","s.symcd.com","security.ubuntu.com","telemetry.enterprise.githubcopilot.com","ts-crl.ws.symantec.com","ts-ocsp.ws.symantec.com","www.googleapis.com"]},"apiProxy":{"enabled":true,"enableTokenSteering":true,"maxRuns":500,"maxEffectiveTokens":30000000,"models":{"agent":["sonnet-6x","gpt-5.4","gpt-5.3","gemini-pro","any"],"antigravity":["copilot/antigravity*","google/antigravity*","gemini/antigravity*"],"any":["copilot/*","anthropic/*","openai/*","google/*","gemini/*"],"claude":["agent"],"codex":["agent"],"coding":["copilot/gpt-5*codex*","openai/gpt-5*codex*","gpt-5-codex"],"computer-use":["copilot/*computer-use*","google/*computer-use*","gemini/*computer-use*","openai/*computer-use*"],"copilot":["agent"],"deep-research":["copilot/deep-research*","copilot/o3-deep-research*","copilot/o4-mini-deep-research*","google/deep-research*","gemini/deep-research*","openai/o3-deep-research*","openai/o4-mini-deep-research*"],"gemini":["agent"],"gemini-3-flash":["copilot/gemini-3*flash*","google/gemini-3*flash*","gemini/gemini-3*flash*"],"gemini-3-pro":["copilot/gemini-3*pro*","google/gemini-3*pro*","google/nano-banana*","gemini/gemini-3*pro*"],"gemini-3.1-flash":["copilot/gemini-3.1*flash*","google/gemini-3.1*flash*","gemini/gemini-3.1*flash*"],"gemini-3.1-pro":["copilot/gemini-3.1*pro*","google/gemini-3.1*pro*","gemini/gemini-3.1*pro*"],"gemini-3.5-flash":["copilot/gemini-3.5*flash*","google/gemini-3.5*flash*","gemini/gemini-3.5*flash*"],"gemini-flash":["copilot/gemini-*flash*","google/gemini-*flash*","gemini/gemini-*flash*"],"gemini-flash-lite":["copilot/gemini-*flash*lite*","google/gemini-*flash*lite*","gemini/gemini-*flash*lite*"],"gemini-pro":["copilot/gemini-*pro*","google/gemini-*pro*","gemini/gemini-*pro*"],"gemma":["copilot/gemma*","google/gemma*","gemini/gemma*"],"gpt-5":["copilot/gpt-5*","openai/gpt-5*"],"gpt-5-codex":["copilot/gpt-5*codex*","openai/gpt-5*codex*"],"gpt-5-mini":["copilot/gpt-5*mini*","openai/gpt-5*mini*"],"gpt-5-nano":["copilot/gpt-5*nano*","openai/gpt-5*nano*"],"gpt-5-pro":["copilot/gpt-5*pro*","openai/gpt-5*pro*"],"gpt-5.2":["copilot/gpt-5.2*","openai/gpt-5.2*"],"gpt-5.3":["copilot/gpt-5.3*","openai/gpt-5.3*"],"gpt-5.4":["copilot/gpt-5.4*","openai/gpt-5.4*"],"gpt-5.5":["copilot/gpt-5.5*","openai/gpt-5.5*"],"haiku":["copilot/*haiku*","anthropic/*haiku*"],"large":["sonnet","gpt-5-pro","gpt-5","gemini-pro"],"mai-code":["copilot/MAI-Code*","copilot/mai-code*","openai/MAI-Code*"],"mini":["haiku","gpt-5-mini","gpt-5-nano","gemini-flash-lite"],"nano-banana":["copilot/nano-banana*","google/nano-banana*","gemini/nano-banana*"],"opus":["copilot/*opus*","anthropic/*opus*"],"opusplan":["opus?effort=high"],"reasoning":["copilot/o1*","copilot/o3*","copilot/o4*","openai/o1*","openai/o3*","openai/o4*"],"robotics":["copilot/*robotics*","google/*robotics*","gemini/*robotics*"],"small":["mini"],"sonnet":["copilot/*sonnet*","anthropic/*sonnet*"],"sonnet-6x":["copilot/*sonnet-4.5*","copilot/*sonnet-4.6*","copilot/*sonnet-4-5-*","anthropic/*sonnet-4-5-*","copilot/*sonnet-4-6*","anthropic/*sonnet-4-6*"],"summarization":["haiku","gpt-5-mini","gemini-flash-lite","mini"],"vision":["copilot/gemini-*image*","gemini/gemini-*image*","copilot/gemini-*flash*","gemini/gemini-*flash*"]}},"container":{"imageTag":"0.25.63"}}' > "${RUNNER_TEMP}/gh-aw/awf-config.json"
printf '%s\n' '{"$schema":"https://github.com/github/gh-aw-firewall/releases/download/v0.25.63/awf-config.schema.json","network":{"allowDomains":["*.grafana.net","*.sentry.io","api.business.githubcopilot.com","api.enterprise.githubcopilot.com","api.github.com","api.githubcopilot.com","api.individual.githubcopilot.com","api.snapcraft.io","archive.ubuntu.com","azure.archive.ubuntu.com","crl.geotrust.com","crl.globalsign.com","crl.identrust.com","crl.sectigo.com","crl.thawte.com","crl.usertrust.com","crl.verisign.com","crl3.digicert.com","crl4.digicert.com","crls.ssl.com","github.com","host.docker.internal","json-schema.org","json.schemastore.org","keyserver.ubuntu.com","ocsp.digicert.com","ocsp.geotrust.com","ocsp.globalsign.com","ocsp.identrust.com","ocsp.sectigo.com","ocsp.ssl.com","ocsp.thawte.com","ocsp.usertrust.com","ocsp.verisign.com","packagecloud.io","packages.cloud.google.com","packages.microsoft.com","ppa.launchpad.net","raw.githubusercontent.com","registry.npmjs.org","s.symcb.com","s.symcd.com","security.ubuntu.com","telemetry.enterprise.githubcopilot.com","ts-crl.ws.symantec.com","ts-ocsp.ws.symantec.com","www.googleapis.com"]},"apiProxy":{"enabled":true,"enableTokenSteering":true,"maxRuns":500,"maxEffectiveTokens":30000000,"models":{"agent":["sonnet-6x","gpt-5.4","gpt-5.3","gemini-pro","any"],"antigravity":["copilot/antigravity*","google/antigravity*","gemini/antigravity*"],"any":["copilot/*","anthropic/*","openai/*","google/*","gemini/*"],"claude":["agent"],"codex":["agent"],"coding":["copilot/gpt-5*codex*","openai/gpt-5*codex*","gpt-5-codex"],"computer-use":["copilot/*computer-use*","google/*computer-use*","gemini/*computer-use*","openai/*computer-use*"],"copilot":["agent"],"deep-research":["copilot/deep-research*","copilot/o3-deep-research*","copilot/o4-mini-deep-research*","google/deep-research*","gemini/deep-research*","openai/o3-deep-research*","openai/o4-mini-deep-research*"],"gemini":["agent"],"gemini-3-flash":["copilot/gemini-3*flash*","google/gemini-3*flash*","gemini/gemini-3*flash*"],"gemini-3-pro":["copilot/gemini-3*pro*","google/gemini-3*pro*","google/nano-banana*","gemini/gemini-3*pro*"],"gemini-3.1-flash":["copilot/gemini-3.1*flash*","google/gemini-3.1*flash*","gemini/gemini-3.1*flash*"],"gemini-3.1-pro":["copilot/gemini-3.1*pro*","google/gemini-3.1*pro*","gemini/gemini-3.1*pro*"],"gemini-3.5-flash":["copilot/gemini-3.5*flash*","google/gemini-3.5*flash*","gemini/gemini-3.5*flash*"],"gemini-flash":["copilot/gemini-*flash*","google/gemini-*flash*","gemini/gemini-*flash*"],"gemini-flash-lite":["copilot/gemini-*flash*lite*","google/gemini-*flash*lite*","gemini/gemini-*flash*lite*"],"gemini-pro":["copilot/gemini-*pro*","google/gemini-*pro*","gemini/gemini-*pro*"],"gemma":["copilot/gemma*","google/gemma*","gemini/gemma*"],"gpt-5":["copilot/gpt-5*","openai/gpt-5*"],"gpt-5-codex":["copilot/gpt-5*codex*","openai/gpt-5*codex*"],"gpt-5-mini":["copilot/gpt-5*mini*","openai/gpt-5*mini*"],"gpt-5-nano":["copilot/gpt-5*nano*","openai/gpt-5*nano*"],"gpt-5-pro":["copilot/gpt-5*pro*","openai/gpt-5*pro*"],"gpt-5.2":["copilot/gpt-5.2*","openai/gpt-5.2*"],"gpt-5.3":["copilot/gpt-5.3*","openai/gpt-5.3*"],"gpt-5.4":["copilot/gpt-5.4*","openai/gpt-5.4*"],"gpt-5.5":["copilot/gpt-5.5*","openai/gpt-5.5*"],"haiku":["copilot/*haiku*","anthropic/*haiku*"],"large":["sonnet","gpt-5-pro","gpt-5","gemini-pro"],"mai-code":["copilot/MAI-Code*","copilot/mai-code*","openai/MAI-Code*"],"mini":["haiku","gpt-5-mini","gpt-5-nano","gemini-flash-lite"],"nano-banana":["copilot/nano-banana*","google/nano-banana*","gemini/nano-banana*"],"opus":["copilot/*opus*","anthropic/*opus*"],"opusplan":["opus?effort=high"],"reasoning":["copilot/o1*","copilot/o3*","copilot/o4*","openai/o1*","openai/o3*","openai/o4*"],"robotics":["copilot/*robotics*","google/*robotics*","gemini/*robotics*"],"small":["mini"],"small-agent":["haiku","gpt-5-mini","gemini-flash","any"],"sonnet":["copilot/*sonnet*","anthropic/*sonnet*"],"sonnet-6x":["copilot/*sonnet-4.5*","copilot/*sonnet-4.6*","copilot/*sonnet-4-5-*","anthropic/*sonnet-4-5-*","copilot/*sonnet-4-6*","anthropic/*sonnet-4-6*"],"summarization":["haiku","gpt-5-mini","gemini-flash-lite","mini"],"vision":["copilot/gemini-*image*","gemini/gemini-*image*","copilot/gemini-*flash*","gemini/gemini-*flash*"]}},"container":{"imageTag":"0.25.63"}}' > "${RUNNER_TEMP}/gh-aw/awf-config.json"
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.

3 participants