Skip to content

fix(humanize1): bound gen-plan convergence - #2

Merged
futrime merged 1 commit into
mainfrom
fix/gen-plan-convergence
Aug 25, 2026
Merged

fix(humanize1): bound gen-plan convergence#2
futrime merged 1 commit into
mainfrom
fix/gen-plan-convergence

Conversation

@DongyunZou

@DongyunZou DongyunZou commented Aug 23, 2026

Copy link
Copy Markdown
Contributor

Summary

  • bound every gen-plan planning turn with a backend-neutral wall-clock deadline and finite retries
  • preserve the original Convergence(converged, review) contract while validating the five review headings in code
  • accept early list-shaped convergence answers during migration without trusting an empty/malformed review
  • pass the candidate plan directly to later reviews and stop after two revisions with no material change
  • write planner revisions to staging files and atomically promote only validated plans, so late timed-out writes cannot corrupt the durable output
  • return a partial plan with the original draft when relevance, analysis, review, candidate generation, or finalization cannot finish
  • use Planner/Reviewer terminology and avoid backend-specific tool or identity assumptions

Root Cause

The old flow retried empty/schema-invalid turns forever, had no planning deadline, omitted the original no-material-change stop rule, and sent new reviewers only a file path. A large plan could therefore trigger an unbounded repository re-audit and never produce a durable plan.

Compatibility

  • Planning remains the backend-neutral (planner, analyst) shape.
  • Existing Convergence(converged, review) answers remain accepted.
  • Early list-shaped convergence answers are accepted during migration.
  • The flow imports Unrecoverable only through the flow-facing API supplied by humanize2 PR #22.

Verification

  • tests/test_gen_plan.py: 10 passed
  • flowverse Ruff check and format: passed
  • humanize2 main full suite: 1570 passed, 70 skipped
  • humanize2 visual worktree full suite: 1606 passed, 70 skipped
  • humanize2 all-files pre-commit: passed

Depends on: humanfia/humanize2#22

@DongyunZou
DongyunZou force-pushed the fix/gen-plan-convergence branch from 8bc7555 to b690226 Compare August 23, 2026 07:37
@futrime
futrime merged commit 0f122ca into main Aug 25, 2026
@futrime
futrime deleted the fix/gen-plan-convergence branch August 25, 2026 01:26
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.

2 participants