Skip to content

Epic 5.8: ExecutionLoop + PromptBuilder — grounding/ package#46

Merged
Deepfreezechill merged 1 commit into
mainfrom
epic/5.8-execution-prompts
Apr 6, 2026
Merged

Epic 5.8: ExecutionLoop + PromptBuilder — grounding/ package#46
Deepfreezechill merged 1 commit into
mainfrom
epic/5.8-execution-prompts

Conversation

@Deepfreezechill

Copy link
Copy Markdown
Owner

Epic 5.8 — ExecutionLoop + PromptBuilder

What

Extract the 3 largest remaining methods from grounding_agent.py:

  • grounding/execution.py (325 lines): process() core loop + _build_retrieved_tools_list
  • grounding/prompts.py (82 lines): default_system_prompt, construct_messages

Result

  • grounding_agent.py: 1,181 → 796 lines (33% reduction so far)
  • 17 methods still have implementation (targeted by Epics 5.9-5.10)
  • All MRO-preserving calls verified: agent._method() pattern throughout

Review

  • /8eyes impl: PASS (all delegates verified, MRO calls confirmed)
  • /8eyes sec: PASS (deepcopy for recording, preview-only logging, clean error path)
  • /collab GPT-5.4: APPROVE (behavioral equivalence verified, adversarial checks pass)
  • 26 new tests, 1,636 total passed, 127 skipped

- Extract process() (~287 lines) into grounding/execution.py
- Extract construct_messages(), _default_system_prompt() into grounding/prompts.py
- Helper _build_retrieved_tools_list() extracted from process() body
- grounding_agent.py methods become thin delegates
- 26 new tests (14 prompts + 12 execution)
- 1,636 passed, 127 skipped

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@Deepfreezechill Deepfreezechill merged commit db5ceee into main Apr 6, 2026
0 of 5 checks passed
@github-actions

github-actions Bot commented Apr 6, 2026

Copy link
Copy Markdown

🔒 Phase Gate Enforcement — 🚫 FAIL

Check Result Detail
Issue linkage No linked issues found. PR must contain "Closes #N", "Fixes #N", or "Resolves #N".

Verdict: FAIL
Timestamp: 2026-04-06T17:23:04.696Z
Run: View workflow run


How to fix: Ensure all prerequisite phases are complete, or add emergency:bypass label with a ## Bypass Reason section in the PR body.

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