Skip to content

[Bug]: fw doctor warns TURN DRIVER is not armed for every interactive claude-fw session that never used continuous mode #101

Open

Description

@MikeEchoVoid

Bug Description

bin/fw:3189 prints OK Continuous-run wrapper last recorded ARMED from continuous-run.jsonl, written by bin/claude-fw for the budget auto-restart. Since T-3225, bin/fw:3210 then checks the turn driver and, when it is not armed, prints:

WARN  ...but the TURN DRIVER is not armed — the loop takes no turns
         reason: state-unreadable-or-empty
         Arm it:  bin/fw continuous arm --hours N --iterations N

T-3225 fixed a real blind spot (a lapsed directive behind a green line). But the check fires the same way when continuous mode was never wanted: the operator launches claude-fw only for the budget auto-restart, works interactively, and has never run fw continuous arm (.context/working/.continuous-mode.yaml and .next-directive.yaml do not exist; fw continuous status: STOPPED). The advice "Arm it" points to unattended mode, which this operator does not want.

Steps to Reproduce

  1. Start an interactive session with claude-fw (no fw continuous arm ever run in the project).
  2. fw continuous status prints Continuous mode: STOPPED, Reason (live): state-unreadable-or-empty.
  3. fw doctor prints the WARN above.

Expected Behavior

Warn when continuous mode was armed and has lapsed (state file present, directive expired), as T-3225 intends. When it was never armed, an OK or INFO line such as turn driver: not in use (interactive sessions).

Actual Behavior

A permanent WARN for every interactive claude-fw user, with advice to arm unattended mode.

fw doctor output

AI Agent

Claude Code

Operating System

Linux

Additional Context

1.8.11 (e42aa41), vendored consumer, Linux (Ubuntu 20.04, systemd 245), Claude Code.

Activity

  1. DimitriGeelen commented on Oct 18, 2026

    @DimitriGeelen
    Owner

    [AEF intake] Received — 2026-10-18

    Thank you. This issue has been ingested into the Agentic Engineering Framework's intake as INTAKE-0017. Next step: classification (type, affected area, severity, whether it reproduces on the current release and on bleeding-edge). You will get a comment here at each step: classified → decision → in progress → fixed on bleeding-edge → available for testing → released.

    These status updates are automated, but Dimitri personally looks at every issue and decides what happens to it. Replies on this issue are read.

  2. DimitriGeelen commented on Oct 18, 2026

    @DimitriGeelen
    Owner

    [AEF intake] Classified — 2026-10-18

    Type: bug. Area: fw doctor continuous-run check. Severity: low (advisory WARN, but it fires on every interactive session). Reproduces on v1.8.11: yes, in the code (bin/fw:3207–3225). Duplicates: none. Related: T-3225 (origin of the check), T-3226 (a different spurious doctor FAIL, completed).

    Awaiting the maintainer's decision.

    These status updates are automated, but Dimitri personally looks at every issue and decides what happens to it. Replies on this issue are read.

  3. DimitriGeelen commented on Oct 18, 2026

    @DimitriGeelen
    Owner

    [AEF intake] Accepted — 2026-10-18

    Tracked as T-4358, prioritised (horizon: now). Next update here: in progress.

    These status updates are automated, but Dimitri personally looks at every issue and decides what happens to it. Replies on this issue are read.

  4. added
    status:acceptedAccepted; linked to an AEF task
    area:cliArea cli (from the component fabric)
    and removed
    status:receivedIngested by the AEF intake pipeline
    on Oct 18, 2026
  5. DimitriGeelen commented on Oct 20, 2026

    @DimitriGeelen
    Owner

    [AEF intake] In progress — 2026-10-20

    Work has started under T-4358. Next update here: fixed on bleeding-edge.

    These status updates are automated, but Dimitri personally looks at every issue and decides what happens to it. Replies on this issue are read.

  6. DimitriGeelen commented on Oct 20, 2026

    @DimitriGeelen
    Owner

    [AEF intake] Fixed on bleeding-edge — 2026-10-20

    Fixed under T-4358 in commit 84e43c9 (on the bleeding-edge branch; not yet in a release).

    To test it before the release: timeout 120 bats tests/unit/t4358_doctor_turn_driver_interactive.bats > /tmp/.t4358.out 2>&1 && ! grep -q "^not ok" /tmp/.t4358.out Feedback here is welcome. Next update here: released.

    These status updates are automated, but Dimitri personally looks at every issue and decides what happens to it. Replies on this issue are read.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:cliArea cli (from the component fabric)bugSomething isn't workingseverity:lowCosmetic or minorstatus:fixed-on-bleeding-edgeFixed on bleeding-edge; not yet releasedtriagedClassified by the AEF intake pipeline

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions