RunanywhereAI / RunanywhereAI/wally

Define reasoning and cached-token translation for cloud harness adapters

Open
#99 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement P2 post-mvp
Dominant language
C++
Stars
1.5k
Forks
86
Avg merge
6h 53m
Merged PRs (30d)
50

Description

Overview

Anthropic translator maps prompt/completion usage but not reasoning_content or cache_read_input_tokens; OpenCode config provides input/output prices only. Custom-provider usage-meter UI was explicitly deferred.

Priority: P2 / post-mvp. Impact: roadmap improvement. Initial planning estimate: Medium; refine after inventory. This issue does not add a release blocker.

Current evidence

Anthropic translator maps prompt/completion usage but not reasoning_content or cache_read_input_tokens; OpenCode config provides input/output prices only. Custom-provider usage-meter UI was explicitly deferred.

Design and implementation plan

Define supported reasoning and cache semantics by upstream/downstream protocols; preserve billing truth separately from optional display.

  1. Reconcile the current implementation and any already completed work with the evidence above.
  2. Record the owner, selected scope, dependencies and unresolved decisions before implementation.
  3. Implement or execute the selected scope using existing components and artifacts.
  4. Attach reproducible validation or outcome evidence and record any deferred work.

Acceptance criteria

  • Test streaming/nonstreaming reasoning and cache fixtures including absent fields, fragmented deltas and zero counts.
  • Do not double count cached tokens or expose hidden reasoning contrary to model protocol.
  • Document intentionally unsupported fields and keep backend billing independent.

Related work and deduplication

No existing issue has this acceptance scope; existing release defects remain separate.

Requirement provenance

Reconciled September 13, 2026 against WALLY_CLOUD_PRODUCT_SOURCES.md (SHA-256 e601b7b154b750965fa8d25d4533d3542621bd00b3bb30038c1fae553a549e7b) and the consolidated requirements report. Historical proposals are not evidence of current delivery, customer agreement or approved pricing.

Source records and physical line references

Records: C13-050, C01-045.

Lines: 35345–35352, 1019–1035.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with src/anthropic/translate.cpp at the referenced lines and inventory the existing streaming and nonstreaming usage translation. Define the supported reasoning and cache semantics with the relevant upstream and downstream protocols before implementation. Done means the listed fixtures and edge cases are validated, cached tokens are not double-counted, hidden reasoning is handled appropriately, and unsupported fields are documented separately from billing.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
backend-api-design, cloud
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.