Skip to content

Try generic Repo Assist tasks before concluding there is no work - #409

Merged
dsyme merged 4 commits into
mainfrom
fix/repo-assist-generic-fallback
Oct 24, 2026
Merged

dsyme merged 4 commits into
mainfrom
fix/repo-assist-generic-fallback

Conversation

@dsyme

@dsyme dsyme commented Oct 24, 2026 •

Copy link
Copy Markdown
Contributor

Summary

When the initially selected tasks and their local fallbacks find no actionable work, Repo Assist should try useful generic repository work even if those tasks were not randomly selected.

  • Emit generic_fallback_tasks in the real task-selection JSON: testing (9), performance (8), take the repository forward (10), then docs/QA (7), engineering (4), and code improvements (5), excluding initially selected tasks.
  • Emit no generic fallback plan for explicit command mode or scheduled maintenance-only mode.
  • Require the agent to inspect a concrete relevant source/test/docs area or existing check for each assessed category, not infer there is nothing useful from issue titles or test filenames.
  • Track already assessed tasks across local and generic fallbacks; visit each category at most once to prevent 1↔2 / 5↔9 cycles. Stop the sweep at the first verified worthwhile work item and apply normal validation, memory and reporting rules.
  • Preserve honest noops after the bounded sweep; do not manufacture low-value changes or bypass maintainer decisions, dependencies policy, command-mode exclusivity, maintenance-only mode or PR limits.
  • Update both workflow and user documentation so the three selected tasks are explicitly a starting allocation, not a restriction to those tasks.
  • Add deterministic planner tests to the existing CI test discovery.

This branch independently targets main, not the separate fetch-compatibility branch. It incorporates the newly merged #407 to resolve their overlap and explicitly preserves maintenance-only mode; the net PR diff contains only the fallback workflow, documentation and tests.

Validation

  • python3 -m unittest discover -s tests -p 'test_repo_assist_*.py' -v: 23 tests passed (11 generic-fallback tests plus 12 existing maintenance/capacity tests), exercising the actual inline task-selection Python, including all 120 possible initial three-task combinations, empty backlogs, explicit/blank commands, scheduled capacity/manual exemptions and run-seed reproducibility.
  • gh aw compile workflows/repo-assist.md: passed with gh-aw v0.93.3; freshness reports Yes.
  • Shellcheck passed for the preparation script; generated command-mode wiring and read-only GitHub agent permissions were verified.
  • git diff --check: passed.
  • The generic planner is tested deterministically; live model adherence to the sweep/visited-task instructions has not been exercised. No manual workflow dispatch.

Sample workflows/*.lock.yml files are intentionally ignored here, so the regenerated sample lock is validated locally rather than force-added. Current compiler scaffolding warnings remain visible. Until #408 merges, hosted compilation still encounters the two unsupported native fetch declarations on main. That PR has now confirmed all 5 hosted workflows compile, then exposed 14 additional unchanged reusable samples with unsupported native fetch entries; those are outside this fallback-only change.

Compatibility / safety

The current-compiler compatibility changes (removing native Copilot web-fetch and normalizing request_review to request-review) are already on main through #407. This PR does not broaden network allowlists or write privileges. The existing memory validator is unchanged and no migration is added.

A read-only safety review found no confirmed vulnerability in the changed scope. The new command value is passed as data through an environment variable and checked only for nonblank content; it is never evaluated as code. The test harness uses disposable files and mocked inputs, with no API/network calls or credential use. Runtime telemetry values and actual agent adherence remain unverified; no live execution is claimed.

dsyme and others added 2 commits October 24, 2026 20:22
Generate an ordered testing, performance and forward-progress fallback plan beyond the initial random selection, bound repeated assessments, and preserve command-mode and safety restrictions.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep generic fallback disabled for scheduled maintenance-only runs and cover cap/manual interactions alongside all initial task selections.

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

dsyme commented Oct 24, 2026

Copy link
Copy Markdown
Contributor Author

Hosted validation after integrating current main: all 23 tests passed (11 fallback tests and 12 maintenance/capacity tests), including all 120 initial selections and the new scheduled-cap/manual-exemption cases. Run: https://github.com/githubnext/agentics/actions/runs/40116214786. CI then fails only at the two inherited hosted-workflow native fetch declarations fixed independently in #408. The merge conflict with the now-merged maintenance-only change is resolved; this PR remains a three-file fallback-only diff against main. Local focused compilation/freshness also passed. No workflow was manually dispatched.

@dsyme
dsyme merged commit 139fa09 into main Oct 24, 2026
1 check passed
@dsyme
dsyme deleted the fix/repo-assist-generic-fallback branch October 24, 2026 17:43
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.

1 participant