Skip to content

refactor(pipeline): drop sequence variable and resumed_completed duplicate#242

Merged
miguelgfierro merged 1 commit into
issue-147-pipeline-evolutionfrom
simplify/invoke-bookkeeping
May 28, 2026
Merged

refactor(pipeline): drop sequence variable and resumed_completed duplicate#242
miguelgfierro merged 1 commit into
issue-147-pipeline-evolutionfrom
simplify/invoke-bookkeeping

Conversation

@miguelgfierro
Copy link
Copy Markdown
Contributor

Addresses finding #7 from the simplifier review of #232.

Two redundant bookkeeping variables in `StatePipeline.invoke`:

  1. `sequence` — A running counter incremented in lockstep with `completed.append(...)`. The invariant held everywhere: `sequence == len(completed)` after each increment, and `sequence + 1 == len(completed) + 1` for the pre-append error-audit case. Removed in favour of inline `len(completed)` / `len(completed) + 1`.

  2. `resumed_completed` — A separate list populated only during resume, then immediately copied into `completed` via `completed = list(resumed_completed)`. Collapsed into `completed` directly.

`_run_fanout` lost its `sequence: int` parameter and `-> tuple[BaseModel, int]` return type — it now returns just the new state and derives sequence from `len(completed)` internally, matching the main loop.

Behavior

Unchanged. Same checkpoint sequence numbers, same audit sequence numbers, same error semantics.

Verification

  • `pytest tests/unit/pipeline/` → 142 passed.
  • `ruff check` + `ruff format --check` clean.

Diff stats

`state_pipeline.py`: 13 insertions, 21 deletions (net −8 LOC).

…icate

sequence was always len(completed) after each increment (or len(completed)+1
in the failed-node audit case). Replace the running counter with len(completed)
expressions at the call sites.

resumed_completed was a separate alias for completed during resume; assign
into completed directly.

_run_fanout no longer takes or returns sequence — derives it from
len(completed) like the main loop.

Behavior unchanged.
@miguelgfierro miguelgfierro merged commit b8b9886 into issue-147-pipeline-evolution May 28, 2026
@miguelgfierro miguelgfierro deleted the simplify/invoke-bookkeeping branch May 28, 2026 08:34
ancongui pushed a commit that referenced this pull request May 31, 2026
…ping

refactor(pipeline): drop sequence variable and resumed_completed duplicate
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