Skip to content

Enhance Keepalive logic and add workflow validation - #3542

Merged
stranske merged 1 commit into
phase-2-devfrom
stranske-patch-1
Nov 13, 2025
Merged

stranske merged 1 commit into
phase-2-devfrom
stranske-patch-1

Conversation

@stranske

Copy link
Copy Markdown
Owner

Updated the Keepalive worker and PR-meta logic to improve activation evaluation and dispatch summaries. Added validation for GitHub workflow files to prevent merges with errors.

Updated the Keepalive worker and PR-meta logic to improve activation evaluation and dispatch summaries. Added validation for GitHub workflow files to prevent merges with errors.
Copilot AI review requested due to automatic review settings November 13, 2025 06:48
@stranske
stranske merged commit 328673f into phase-2-dev Nov 13, 2025
16 checks passed
@stranske
stranske deleted the stranske-patch-1 branch November 13, 2025 06:48
@github-actions

Copy link
Copy Markdown
Contributor

Gate fast-pass: docs-only change detected; heavy checks skipped.

@stranske-automation-bot

Copy link
Copy Markdown
Collaborator

Automated Status Summary

Head SHA: 6fa60c3
Latest Runs: ⏳ pending — Gate
Required contexts: Gate / gate, Health 45 Agents Guard / Enforce agents workflow protections
Required: core tests (3.11): ⏳ pending, core tests (3.12): ⏳ pending, docker smoke: ⏳ pending, gate: ⏳ pending

Workflow / Job Result Logs
(no jobs reported) ⏳ pending

Updated automatically; will refresh on subsequent CI/Docker completions.


Keepalive checklist

Scope

No scope information available

Tasks

  • No tasks defined

Acceptance criteria

  • No acceptance criteria defined

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull Request Overview

This PR significantly expands and restructures the Issues.txt file to document four detailed implementation issues related to enhancing keepalive workflow logic and adding CI validation for GitHub workflow files. The changes transform a single issue about worker skip guard logic into a comprehensive specification covering PR-meta activation evaluation, run-cap enforcement, orchestrator author invariants, and workflow file validation.

Key Changes:

  • Replaced original Issue #1 (worker skip guard) with a new Issue #1 focused on PR-meta Gate replay logic and dispatch summaries
  • Added three new issues: run-cap enforcement (#2), orchestrator summary requirements (#3), and workflow validation (#4)
  • Expanded content from 118 lines to 238 lines with detailed scope, tasks, acceptance criteria, and implementation notes for each issue

Comment thread Issues.txt
Labels: ci, automation, enhancement

Why
A single top‑level expression error previously invalidated the orchestrator workflow and blocked keepalive entirely. We want a fast‑failing check that prevents merges when any workflow is invalid.

Copilot AI Nov 13, 2025

Copy link

Choose a reason for hiding this comment

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

Spelling error: "top‑level" should be "top-level". The en-dash (‑) should be a hyphen (-) for compound adjectives.

Suggested change
A single toplevel expression error previously invalidated the orchestrator workflow and blocked keepalive entirely. We want a fast‑failing check that prevents merges when any workflow is invalid.
A single top-level expression error previously invalidated the orchestrator workflow and blocked keepalive entirely. We want a fast‑failing check that prevents merges when any workflow is invalid.

Copilot uses AI. Check for mistakes.
Comment thread Issues.txt
@@ -1,118 +1,238 @@
1. Keepalive Worker: fix skip guard (execute on new instruction even if head SHA hasn’t moved)
1. Keepalive PR‑meta: Gate replay must always evaluate a real activation; print mandatory one‑line DISPATCH summary for comment and gate lanes

Copilot AI Nov 13, 2025

Copy link

Choose a reason for hiding this comment

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

Spelling error: "PR‑meta" should be "PR-meta". The en-dash (‑) should be a hyphen (-) for compound nouns.

Copilot uses AI. Check for mistakes.
Comment thread Issues.txt

- Do not change label policy, reaction‑lock behavior, run‑cap numbers, or connector settings.

Non‑Goals

Copilot AI Nov 13, 2025

Copy link

Choose a reason for hiding this comment

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

Spelling error: "Non‑Goals" should be "Non-Goals". The en-dash (‑) should be a hyphen (-) in section headings.

Suggested change
NonGoals
Non-Goals

Copilot uses AI. Check for mistakes.
Comment thread Issues.txt

- Write one line to $GITHUB_STEP_SUMMARY:
DISPATCH: ok=<true|false> reason=<ok|no-instruction-segment> pr=#<n> comment=<id> agent=<alias> bytes=<len>
- After branch‑sync gate, write:

Copilot AI Nov 13, 2025

Copy link

Choose a reason for hiding this comment

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

Spelling error: "branch‑sync" should be "branch-sync". The en-dash (‑) should be a hyphen (-) for compound nouns.

Copilot uses AI. Check for mistakes.
Comment thread Issues.txt

- Fails if GitHub’s workflow‑parser annotations indicate an error (or if act/actionlint reports an error)

Non‑Goals

Copilot AI Nov 13, 2025

Copy link

Choose a reason for hiding this comment

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

Spelling error: "Non‑Goals" should be "Non-Goals". The en-dash (‑) should be a hyphen (-) in section headings.

Copilot uses AI. Check for mistakes.
Comment thread Issues.txt
Pin action versions; do not grant extra permissions.

Do not alter moderation of connector comments; this issue only controls what is dispatched, not who posts publicly.
Keep the job fast (<30s) so it doesn’t slow inner‑loop iteration.

Copilot AI Nov 13, 2025

Copy link

Choose a reason for hiding this comment

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

Spelling error: "inner‑loop" should be "inner-loop". The en-dash (‑) should be a hyphen (-) for compound adjectives.

Suggested change
Keep the job fast (<30s) so it doesn’t slow innerloop iteration.
Keep the job fast (<30s) so it doesn’t slow inner-loop iteration.

Copilot uses AI. Check for mistakes.
Comment thread Issues.txt
- In .github/workflows/agents-pr-meta.yml:

- Head SHA unchanged since the last processed instruction.
- Gate lane: if activation_comment is empty, fetch the most‑recent human @agent activation comment on the PR and pass it to detection (fallback).

Copilot AI Nov 13, 2025

Copy link

Choose a reason for hiding this comment

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

Spelling error: "most‑recent" should be "most-recent". The en-dash (‑) should be a hyphen (-) for compound adjectives.

Suggested change
- Gate lane: if activation_comment is empty, fetch the mostrecent human @agent activation comment on the PR and pass it to detection (fallback).
- Gate lane: if activation_comment is empty, fetch the most-recent human @agent activation comment on the PR and pass it to detection (fallback).

Copilot uses AI. Check for mistakes.
Comment thread Issues.txt

Implementation notes

Keep reaction‑lock behavior unchanged; this issue only ensures replay always brings a concrete activation into detection and that decisions are visible.

Copilot AI Nov 13, 2025

Copy link

Choose a reason for hiding this comment

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

Spelling error: "reaction‑lock" should be "reaction-lock". The en-dash (‑) should be a hyphen (-) for compound nouns.

Suggested change
Keep reactionlock behavior unchanged; this issue only ensures replay always brings a concrete activation into detection and that decisions are visible.
Keep reaction-lock behavior unchanged; this issue only ensures replay always brings a concrete activation into detection and that decisions are visible.

Copilot uses AI. Check for mistakes.
Comment thread Issues.txt

Why
On typical test PRs (e.g., #3529), the instruction comment currently includes a long status/summary bundle (Head SHA, “Latest Runs”, “Workflow / Job Result Logs”, coverage) below the Scope/Tasks/Acceptance block. When the full comment body is forwarded to the agent/connector, that additional material can dilute or confuse the prompt. We want the connector to receive only the instruction text (Scope/Tasks/Acceptance + required markers/mention), not the status bundle.
When the round‑start instruction is posted by the automation bot, some external agents ignore it and no code is produced. Also, without invariant one‑line summaries, it’s hard to prove the orchestrator actually posted, executed, and synced.

Copilot AI Nov 13, 2025

Copy link

Choose a reason for hiding this comment

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

Spelling error: "round‑start" should be "round-start". The en-dash (‑) should be a hyphen (-) for compound adjectives.

Suggested change
When the roundstart instruction is posted by the automation bot, some external agents ignore it and no code is produced. Also, without invariant one‑line summaries, it’s hard to prove the orchestrator actually posted, executed, and synced.
When the round-start instruction is posted by the automation bot, some external agents ignore it and no code is produced. Also, without invariant one‑line summaries, it’s hard to prove the orchestrator actually posted, executed, and synced.

Copilot uses AI. Check for mistakes.
Comment thread Issues.txt
WORKER: action=<execute|skip> reason=<new-instruction|no-new-instruction-and-head-unchanged|cap-reached|...> pr=#<n> head=<sha7> instr=<comment_id> trace=<trace>

- Summarize dispatch (no PR noise)
- Branch‑sync summary

Copilot AI Nov 13, 2025

Copy link

Choose a reason for hiding this comment

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

Spelling error: "Branch‑sync" should be "Branch-sync". The en-dash (‑) should be a hyphen (-) for compound nouns.

Suggested change
- Branchsync summary
- Branch-sync summary

Copilot uses AI. Check for mistakes.
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