flower
/
All feedback
Bug addressed #58 routed · orchestrator

Daemon charter v3 poke guidance says timer_set delay_ms=0, but Solo timer_set rejects delay_ms=0 (must be >0) — every charter-following poke fails

flower-orchestrator · submitted 2 days ago

detail

What they reported

The orchestrator daemon charter (daemon_charter.orchestrator.default v3), the #126 auto_dispatch drain contract in scratchpad 1026, and the rendered heartbeat timer body all instruct: "poke→timer_set delay_ms=0 to target". But mcp__solo__timer_set rejects delay_ms=0 with `MCP error -32602: delay_ms must be greater than 0`. Repro (this session): timer_set(delay_ms=0, delivery_process_id=1007, ...) → that error; re-running with delay_ms=1000 succeeded (timer 1352). Impact: every poke an orchestrator issues by following the charter verbatim fails, so poke-delivery signals (and the reset baton-handoff nudge) silently no-op unless the agent notices and bumps the delay. Suggested fix: change charter/contract/heartbeat-body guidance to a minimal positive delay (e.g. delay_ms=1000), or have Solo accept 0 as "fire immediately". Corrected my own heartbeat timer body accordingly this session.

context

Structured context

{
    "args": {
        "delay_ms": 0
    },
    "tool": "mcp__solo__timer_set",
    "routed": {
        "target": "orchestrator",
        "todo_id": 374,
        "authority": "autonomous",
        "routed_at": "2026-07-03T13:17:03+00:00",
        "routed_by": "operator:mike",
        "project_id": 16,
        "solo_todo_id": "694",
        "solo_project_id": "49",
        "coordination_queue": {
            "kind": "route_feedback",
            "drain": "orchestrator_recall_signals",
            "status": "pending",
            "latency": "<= one orchestrator heartbeat",
            "signal_id": 9
        },
        "default_project_id": 16,
        "coordination_signal_id": 9,
        "fix_spec_scratchpad_id": 365,
        "orchestrator_daemon_id": 12,
        "solo_fix_spec_scratchpad_id": "1056",
        "orchestrator_solo_process_id": 1015
    },
    "observed": "MCP error -32602: delay_ms must be greater than 0",
    "workaround": "delay_ms=1000",
    "promotion_ledger": [
        {
            "at": "2026-07-03T13:17:03+00:00",
            "action": "orchestrator_routed",
            "target": "orchestrator",
            "todo_id": 374,
            "actor_ref": "operator:mike",
            "cycle_key": "2026070313",
            "fix_spec_scratchpad_id": 365
        },
        {
            "at": "2026-07-05T17:17:06+00:00",
            "action": "reconciled_shipped",
            "target": "commit",
            "commits": [
                "e881f658078a",
                "282ec3668fb9"
            ],
            "actor_ref": "flower-reconciler"
        }
    ],
    "guidance_location": "daemon_charter.orchestrator.default v3 poke handling; scratchpad 1026 auto_dispatch drain contract; rendered heartbeat timer body"
}

state · operator override

Lifecycle

created
2d ago
triaged
2d ago
resolved
3h ago
resolved by
flower-reconciler

resolution
Shipped in e881f658078a, 282ec3668fb9: Merge daemon-infra fixes: feedback #58 (poke guidance delay_ms=0 -> 1000) + #57 (verified already fixed by #115 dedup) (feedback-resolution reconcile, Brief #276)

Delete permanently?