Skip to content

fix(run): key presentation repair fairness by stable ID - #140

Merged
schickling-assistant merged 1 commit into
mainfrom
schickling-assistant/2026-08-01-stable-presentation-cursor-independent
Aug 1, 2026
Merged

fix(run): key presentation repair fairness by stable ID#140
schickling-assistant merged 1 commit into
mainfrom
schickling-assistant/2026-08-01-stable-presentation-cursor-independent

Conversation

@schickling-assistant

Copy link
Copy Markdown
Contributor

Why

Follow-up to #136. Bounded presentation repair currently stores a positional cursor inside restart/flapping state and consumes the incidental order of each drift plan. That couples presentation to lifecycle accounting and makes progress sensitive to plan ordering.

What

Give presentation repair its own stable-ID cursor and carry it across supervisor passes.

How

  • sort pending presentation patches by PTY stable ID;
  • resume after the last attempted stable ID across passes;
  • keep the cursor separate from flapping state;
  • preserve lifecycle-first execution and the existing eight-patch bound;
  • exercise reversed input and persistent failures to prove deterministic coverage without starvation.

Rationale

Presentation projection is idempotent metadata reconciliation. Its retry/fairness state should be keyed by the same stable identity it repairs and remain outside lifecycle/flapping accounting.

Verification

  • deterministic two-pass presentation repair unit test;
  • lifecycle-first bounded-batch integration test with reversed presentation input.
Posted on behalf of @schickling
field value
agent_name co1-sage
agent_tool Codex CLI
agent_tool_version 0.145.0
agent_runtime Codex CLI 0.145.0
agent_session_lookup sha256:ad381a588faa911d70bf08ee2ae4305e96d980701e6405897e32fe38c3163d98
tooling_profile dotfiles@de765ec

@schickling-assistant
schickling-assistant marked this pull request as ready for review August 1, 2026 09:38
agent-tool: Codex CLI
agent-tool-version: 0.145.0
agent-runtime: Codex CLI 0.145.0
agent-session-lookup: sha256:ad381a588faa911d70bf08ee2ae4305e96d980701e6405897e32fe38c3163d98
tooling-profile: dotfiles@de765ec
@schickling-assistant
schickling-assistant force-pushed the schickling-assistant/2026-08-01-stable-presentation-cursor-independent branch from 0b9c5b3 to 24a75bf Compare August 1, 2026 09:40
@schickling-assistant
schickling-assistant merged commit 1309324 into main Aug 1, 2026
1 check passed
@schickling-assistant

Copy link
Copy Markdown
Contributor Author

Thanks Nathan — this is merged too. Presentation repair now has deterministic, stable-ID fairness without leaking into lifecycle accounting.

Celebration

Posted on behalf of @schickling
field value
agent_name co1-sage
agent_tool Codex CLI
agent_tool_version 0.145.0
agent_runtime Codex CLI 0.145.0
agent_session_lookup sha256:ad381a588faa911d70bf08ee2ae4305e96d980701e6405897e32fe38c3163d98
tooling_profile dotfiles@de765ec

@schickling schickling added area:identity Agent, session, run, and launch-generation identity · Set: manual area:reconcile Supervisor run loop, lifecycle, restart, park, and teardown · Set: manual origin:agent Filed or primarily produced by an AI agent · Set: manual type:bug Something broken or a regression · Set: manual labels Aug 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:identity Agent, session, run, and launch-generation identity · Set: manual area:reconcile Supervisor run loop, lifecycle, restart, park, and teardown · Set: manual origin:agent Filed or primarily produced by an AI agent · Set: manual type:bug Something broken or a regression · Set: manual

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants