Skip to content

[Pi] Model name missing from footer when using default config model (no override) #225

@nathanschram

Description

Description

When Pi runs with the default model from config (no /model set override), the footer only shows 🏷 dir: pi-test without any model name. When a model override IS active, the footer correctly shows the model (e.g. 🏷 dir: pi-test | openai-codex/gpt-5.4 or 🏷 dir: pi-test | sonnet 4.5).

Steps to Reproduce

  1. Ensure no model override is set (/model clear)
  2. Send a prompt to the Pi chat
  3. Check the footer on the response

Expected

Footer shows the model name from Pi's response metadata, e.g. 🏷 dir: pi-test | gpt-5.4

Actual

Footer only shows 🏷 dir: pi-test — no model name.

In contrast, when a model override is set (e.g. /model set openai-codex/gpt-5.4), the footer correctly shows 🏷 dir: pi-test | openai-codex/gpt-5.4.

Error responses also show the model: 🏷 dir: pi-test | sonnet 4.5.

Analysis

The PiRunner populates self.meta with model/provider info in the translate() method when handling AgentStart events. The issue may be that:

  1. The meta fields are only populated from run_options.model (the override) and self.model (config), but when self.model is None (no model in Pi config), the meta model field is empty
  2. Pi CLI's response JSONL includes the actual model used in message_end events (e.g. "model": "gpt-5.4"), but Untether may not be extracting it from there

Affected Files

  • src/untether/runners/pi.py — meta population in translate() and/or StartedEvent creation
  • src/untether/markdown.py — meta_line footer rendering

Testing Context

Found during v0.35.0rc12 Pi integration testing. The model name consistently appears in the footer when using /model set overrides but never appears when using the default config.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingpi

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions