Skip to content

fix(bug-workflow): preserve RCA revision context - #235

Merged
eshulman2 merged 1 commit into
forge-sdlc:mainfrom
eshulman2:fix/rca-review-revision-context
Jul 30, 2026
Merged

fix(bug-workflow): preserve RCA revision context#235
eshulman2 merged 1 commit into
forge-sdlc:mainfrom
eshulman2:fix/rca-review-revision-context

Conversation

@eshulman2

Copy link
Copy Markdown
Collaborator

Summary

  • preserve direct user RCA revision feedback independently from machine reflection critiques across every regeneration pass
  • retain the complete structured RCA artifact and repository list in workflow state
  • give the RCA reviewer the full artifact and explicit repository cloning context so it can verify hypothesis and git-history criteria
  • add regression coverage for revision feedback persistence and reviewer context

This addresses the failure pattern observed in OSPRH-32382, where requested multipart-response options disappeared after reflection and the reviewer repeatedly rejected an incomplete view of the RCA.

Validation

  • All checks passed!
  • ============================= test session starts ==============================
    platform linux -- Python 3.14.6, pytest-9.0.2, pluggy-1.6.0
    codspeed: 4.3.0 (disabled, mode: walltime, callgraph: enabled, timer_resolution: 1.0ns)
    benchmark: 5.2.3 (defaults: timer=time.perf_counter disable_gc=False min_rounds=5 min_time=0.000005 max_time=1.0 calibration_precision=10 warmup=False warmup_iterations=100000)
    rootdir: /home/eshulman/git/forge
    configfile: pyproject.toml
    plugins: anyio-4.13.0, asyncio-1.3.0, benchmark-5.2.3, codspeed-4.3.0, recording-0.13.4, socket-0.7.0, syrupy-5.1.0, langsmith-0.7.25, respx-0.22.0, cov-7.1.0, Faker-40.12.0
    asyncio: mode=Mode.AUTO, debug=False, asyncio_default_fixture_loop_scope=function, asyncio_default_test_loop_scope=function
    collected 287 items

tests/unit/workflow/bug/test_graph.py .................................. [ 11%]
........................................... [ 26%]
tests/unit/workflow/bug/test_workflow.py ................ [ 32%]
tests/flows/bug_workflow/test_complete_bug_flow.py ..................... [ 39%]
........................................................................ [ 64%]
............... [ 70%]
tests/unit/workflow/nodes/test_rca_analysis.py ....................... [ 78%]
tests/unit/workflow/nodes/test_rca_option_gate.py .................... [ 85%]
tests/unit/models/test_bug_state.py ................. [ 90%]
tests/unit/prompts/test_prompt_templates.py .......................... [100%]

=============================== warnings summary ===============================
.venv/lib64/python3.14/site-packages/langchain_core/_api/deprecation.py:25
/home/eshulman/git/forge/.venv/lib64/python3.14/site-packages/langchain_core/_api/deprecation.py:25: UserWarning: Core Pydantic V1 functionality isn't compatible with Python 3.14 or greater.
from pydantic.v1.fields import FieldInfo as FieldInfoV1

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
======================== 287 passed, 1 warning in 4.33s ======================== (287 passed)

@eshulman2
eshulman2 merged commit d82f373 into forge-sdlc:main Jul 30, 2026
6 checks passed
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