I3291 — Gemini CLI usage events map onto the same record, thought tokens included
Map gemini_cli.api_response (input, output, cached-content, thought tokens) through the receiver of I3288 with no Gemini-specific path beyond the mapping table.
BLOKOVÁNO wave 2 · p3 · implementation profile · parallel safe
Blocked. This issue cannot start until I3288 is done. The status is derived from that, not declared.
Cíl
Map gemini_cli.api_response (input, output, cached-content, thought tokens) through the receiver of I3288 with no Gemini-specific path beyond the mapping table.
Proč
The owner named three clients; Gemini differs only in field names and one extra category. Gemini is named in the statement but its encoding was unverified; a protobuf-only export would make this issue impossible under I3288's non_scope. It extends milestone execution-telemetry. Proposed in ADR 0213 (Usage is observed through each provider's official telemetry into one provider-neutral record, and reported, estimated and billed amounts are never merged) (proposed; it carries no authority until the owner accepts it). Sources: chatgpt-majordomus:c253#2.
Aktuální stav
scripts/lib/advisors/gemini-cli.mjs calls Gemini as an advisor; no usage is read.
Cílový stav
A Gemini fixture produces records; adding it changed only the mapping and fixtures.
Rozsah
- apps/majordomus-cli/src/economics/usage.rs
Závislosti
Kritéria přijetí
- Each Gemini token category maps to a declared common category or to an explicit provider-only field
- The diff that adds Gemini touches no consumer
- The Gemini fixture is captured from a named, dated Gemini CLI version
- Gemini CLI's OTLP http export is verified to be JSON; if it is protobuf only, the issue is reported blocked by I3288's non_scope rather than adding a dependency
Validace
- cargo test --manifest-path apps/majordomus-cli/Cargo.toml --lib economics::usage
- majordomus plan validate
Požadované důkazy
- test_gemini_usage_maps
Důkazy
Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.
Časová osa
- zahájeno
- —
- ověřeno
- —
- dokončeno
- —
Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.
Canonical record: .ai/repo/project/issues/I3291.yaml. Read it back with majordomus plan show I3291.