Skip to content

fleet telemetry: record pool/model/effort/cost on dispatch + queue completion records (meta-reviewer #1340 follow-up) #1582

Closed

Description

@dezren39

Problem

The pool meta-reviewer (#1340) cannot grade model/effort choices: its first daily review (2026-10-27, goal hidden_files/meta-review/2026-10-27-report.md) found per-pool/per-effort cells mostly NOT RECORDABLE — queue payloads, queue completion results, and dispatch records carry no pool/model/effort/cost fields. The standing questions (model-up+effort-down vs model-down+effort-up crossover; where max effort buys nothing; where a pool fails tasks a stronger pool would finish) are explicitly NO DATA, and the report names the missing mechanism: "needs a pool/model/effort/cost field on dispatch + completion records (dispatcher log is the only current source, OC sessions only)".

Scope

  • Queue completion records: extend the repo-task/v1 result/recording path (helper ~/tools/repo-queue.py complete + schema ~/tools/repo-task-v1.schema.json) with optional pool, model, effort, cost_usd (nullable where a route has no cost figure) fields, recorded by the worker at completion time from its own session's resolved route — never inferred from route names (meta-reviewer guideline 2026-10-27: record effort only from resolved session messages).
  • Dispatch records: wherever the dispatcher writes its run log, add the same four fields per dispatch.
  • Backfill is out of scope; collection starts at landing.

Acceptance criteria

  • A queue task completed after the change carries pool/model/effort on its result record, visible to the meta-reviewer's data pull.
  • A dispatcher run after the change logs pool/model/effort per dispatch.
  • The next daily meta-reviewer report can populate at least the pool × effort completion-rate cells for queue work from these records (or states precisely which field is still missing).
  • No change to existing packet/result consumers: new fields are optional and additive.

Follow-up to #1340 (Phase: data collection). Filed by queue worker triage (task 1324) 2026-10-27.

Activity

  1. added
    kind/featureNew feature or capability request
    priority/normalOrdinary priority (the default)
    area/infraInfrastructure, deployment, and operations
    effort/mMedium: expected under 1 day of work
    on Oct 28, 2026
  2. developing-today commented on Oct 28, 2026

    @developing-today
    Contributor
  3. added
    work/assignedQueue worker lifecycle state
    queue/claimedQueue worker lifecycle state
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Nov 2, 2026
  4. dezren39 commented on Nov 2, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · picked up

  5. dezren39 commented on Nov 2, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · done

    • Agent: queue worker (repo-worker-code), lane code-h
    • Session / ID: task 1666
    • Found via: queue claim
    • Task: Implemented issue fleet telemetry: record pool/model/effort/cost on dispatch + queue completion records (meta-reviewer #1340 follow-up) #1582 — fleet telemetry fields on dispatch + queue completion records.
    • What landed:
      • Queue side: ~/tools/repo-queue.py complete now supports the optional additive telemetry fields pool / model / effort / cost_usd — carried at the top level of --result and/or supplied via the new --telemetry JSON flag (fills fields the result does not carry). Both sources are type-checked (non-empty string or null; cost_usd a non-negative number or null; unknown telemetry keys rejected, exit 2 before any RPC). ~/tools/repo-task-v1.schema.json gained $defs.completion_telemetry + $defs.completion_result documenting the fields. Hatch repo snapshot commit 09a5bd7fd.
      • Dispatch side: the dispatcher is the openchamber-dispatcher cron job; its run record format lives in hidden_files/openchamber-dispatcher-instruction.md (Delivery section). That record now requires pool, model, effort, cost_usd per dispatch (model = route id actually launched; effort = variant actually launched, never inferred from the route name; cost_usd = launch-exposed cost or null). Hatch-personal commit edbc023d6.
      • Verification: repo-queue.py validate passes on packets with and without telemetry; bad telemetry is rejected pre-RPC; and task 1666 itself was completed with the new fields — an independent read of its stored result shows all four keys present (model: "Muse Wonder"; pool/effort/cost_usd null because this worker's route — the Muse app on Drew's Power subscription, not a fleet pool — exposes no pool, resolved effort, or cost; fleet sessions record their real values). The meta-reviewer's queue data pull reads agent.tasks.result, so the fields are now reachable there. No historical records backfilled.
    • Expectation: done — closing issue fleet telemetry: record pool/model/effort/cost on dispatch + queue completion records (meta-reviewer #1340 follow-up) #1582.
    • Links: issue Meta-reviewer: grade the reviewers, score model/effort choices, and evolve the reviewer guidelines #1340 (parent), task 1666
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area/infraInfrastructure, deployment, and operationseffort/mMedium: expected under 1 day of workkind/featureNew feature or capability requestpriority/normalOrdinary priority (the default)

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions