[RET-A5][P1] Remove LOCAL runtime state machine, workspace fingerprint and evidence implementation
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
Research direction
Start by reviewing parent issue #383 and the RET-A2, RET-A3, and RET-A4 work, then trace LOCAL workflow branches, state handling, and candidate acceptance across the engine, doctor, status, and tests. Recheck the current main branch against the stated planning baseline before implementation. Done means no reachable LOCAL path remains, REMOTE behavior and shared safeguards are preserved, and tests cover legacy, unknown, and corrupt state refusals without automatic remediation.
Written by the indexing model from the issue text.
Description
Parent EPIC: #383 (https://github.com/iceboundrock/AutoForge/issues/383). Planning baseline: main 01c5b7e (2026-10-28); recheck current main before implementation.
Safety: Planning only at creation; no implementation, external effects, merges, or release. Preserve Controller authority, strict state/protocol parsing, independent read-back, immutable PR HEAD/base binding, reconciliation, explicit operator approval, fail-closed sandbox and credential boundary. No real GitHub mutations/models in automated tests.
Workstream: RET-A5. Dependencies: RET-A2, RET-A3, RET-A4.
Scope
- Remove LOCAL workflow topology/decision branches, engine._local_step_once and local lifecycle, local workspace snapshot/fingerprint/spec/contract-only mechanisms, local candidate and evidence schema pathways, doctor and status runtime branches.
- Narrow state read/write to supported issue-driven runs while preserving A2's minimal legacy mode discriminator/refusal; keep old state readable enough to report exact reason, not to mutate/rewrite. Examine protocol bump compatibility deliberately; never silently re-label old states.
- Retain generic local Git worktree, executor, sandbox, validation, materialize, provider and durable state facilities. In particular keep REMOTE mode equivalent and avoid premature global rename of REMOTE.
- Prune LOCAL-specific tests/fixtures only when shared invariants from A3 have non-LOCAL regressions; remove dead imports and packaging metadata without deleting reusable helpers.
Acceptance
- No reachable LOCAL workflow path or orphaned LOCAL candidate acceptance.
- Existing REMOTE state, effects, review, fix, replan, unblock, merge gate, EPIC scheduler and candidate certificates maintain behavior.
- Unknown/corrupt/legacy state refusals tested, no auto-remediation.
- No broad speculative platform abstraction or unrelated refactor.
Blocked by: RET-A2, RET-A3, RET-A4. Blocks: RET-A6.
- Dominant language
- Python
- Stars
- 0
- Forks
- 0
- Avg merge
- 5h 46m
- Merged PRs (30d)
- 82
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from iceboundrock/AutoForge
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
iceboundrock/AutoForge#304 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 20/100
iceboundrock/AutoForge#389 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 25/100
iceboundrock/AutoForge#387 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 28/100
iceboundrock/AutoForge#386 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 20/100
iceboundrock/AutoForge#385 ·
Maintainers usually reply within 1 day
All issues in iceboundrock/AutoForge
Similar issues
-
changelog investigate
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
ramnes/notion-sdk-py#433 ·
-
docs pkg:core
Difficulty 1/5 Under an hour Newbie friendliness 84/100
pydantic/pydantic-ai#11929 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
intake/intake-esm#789 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
MemMachine/MemMachine#1877 ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
openedx/openedx-authz#579 ·
Maintainers usually reply within 1 day