Skip to content

The default stella run path and fleet workers assemble engines without token-drift calibration #1595

Description

@macanderson

Problem

stella-cli assembles a session at seven call sites. Five seed the token-drift CalibrationMap from the store's prior drift samples; two never do.

Seeded:

  • run_interactivecrates/stella-cli/src/agent.rs:758
  • run_raw_one_shotcrates/stella-cli/src/agent/goal.rs:63
  • run_goal_cmdcrates/stella-cli/src/agent/goal.rs:245
  • Command Deck sessions — crates/stella-cli/src/command_deck.rs:348
  • Deck sub-sessions — crates/stella-cli/src/subsession.rs:625

Never seeded:

  • run_pipeline_one_shot (crates/stella-cli/src/agent.rs:232-684) — the default stella run path
  • fleet workers (crates/stella-cli/src/fleet_cmd.rs:673-740)

Verify: rg -n 'seed_calibration' crates/stella-cli/src/ — no hit in run_pipeline_one_shot's assembly block (agent.rs:240-459) or anywhere in fleet_cmd.rs. PipelinePorts has no calibration field (rg -n calibration crates/stella-pipeline/src/ports.rs returns nothing; crates/stella-pipeline/src/pipeline.rs:2495 mentions calibration cohorts (#871) only in a comment), so the engines the pipeline drives run with un-seeded estimation.

What to establish first

Whether the pipeline's engine construction can consume a CalibrationMap at all. Two acceptable outcomes:

  1. It should: thread the seeded map through the pipeline configuration so stella run and stella fleet get the same drift-informed estimates as the other five paths. Witness: a test that fails on main because the pipeline path's engines see an empty map while the store holds drift samples.
  2. It deliberately does not: state the exemption in a comment at both assembly sites and in crates/stella-pipeline/README.md, so the asymmetry is a declared boundary instead of silent drift.

Constraints

  • Found while designing Drink our own kool-aid: in-repo surfaces consume the workspace's public embedding APIs like a plugin host would #1557. Its B1 slice collapses the seven assembly sites onto stella-runtime's RuntimeBuilder, whose build() always seeds calibration (crates/stella-runtime/src/session.rs:117) — landing B1 would change this behavior implicitly, which is exactly why it must be decided and witnessed explicitly first (or in the same PR), never absorbed silently.
  • crates/stella-cli/src/agent.rs is at its exact file-size ceiling (2270, scripts/file-size-baseline.txt) — a fix must be net-zero there or land in a submodule.

Definition of done

Either both paths seed and consume calibration with a witness test, or the exemption is documented at both sites and in the pipeline README. Refs #1557.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1Important — next in linearea:clistella-cli — commands, flags, wiring

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions