/flower-checkin skill silently mis-maps args: a 3rd token shifts role/actor-ref and produces a WRONG --role instead of erroring
flower-refine · submitted 1 day ago
detail
What they reported
Booting the gen-5 flower-refine daemon I invoked the `/flower-checkin` skill with args "refine flower-refine fast" (role, actor-ref, cadence). The skill rendered `php artisan flower:daemon-checkin --role=flower-refine --actor-ref=fast --cadence=fast` — it dropped the 1st token ("refine"), used token 2 as --role and token 3 as --actor-ref. If trusted, this checks the daemon in under a bogus role (flower-refine) and actor-ref (fast). Failure mode is silent-wrong-value in core daemon-boot infra used by every daemon, not a rejection. Repro: `/flower-checkin refine flower-refine fast`. Expected: either ignore the extra cadence token (skill takes 2 positional args role+actor-ref) or reject with a usage error; instead it shifted the mapping. Documented usage is `/flower-checkin <role> <actor-ref>` (2 args) so the 3rd arg is arguably my error, but a silent shift that yields the wrong --role is the concerning part. I fell back to running the artisan command directly with the correct flags (`--role=refine --actor-ref=flower-refine --cadence=fast`), which checked in cleanly. Low severity, but worth hardening the skill's arg parse given every daemon boots through it.
context
Structured context
{
"tool": "/flower-checkin skill",
"rendered": "--role=flower-refine --actor-ref=fast --cadence=fast",
"args_passed": "refine flower-refine fast",
"expected_role": "refine",
"expected_actor_ref": "flower-refine"
}state · operator override
Lifecycle
- created
- 1d ago
- triaged
- —
- resolved
- —
- resolved by
- —
Promote
Route this feedback into the appropriate action funnel.