Skip to content

Prompt building Tier 0 — echo-don't-compute improvements (tracking) #29

Description

@GustavoSena

Prompt building Tier 0 — echo-don't-compute improvements (tracking)

Tier 0 of the prompt-building improvement ladder: everything here is prompt copy + pure deterministic modules — zero new data dependencies, zero extra inference round trips, no validator-invariant changes, no schema changes. Later tiers (deterministic APR-per-tier modeling; multi-pair candidates from held tokens; fine-tune follow-up prompts) build on these.

The constraint that shapes all of it

The composer model is qwen/qwen2.5-omni-7b — a 7B model with MAX_COMPOSE_ATTEMPTS = 2 and a user watching a spinner (latency is user-facing, F2 Q3). It has already been caught fabricating chainIds and deadlines until the prompt said "copy these EXACTLY" (compose.ts). So the tier's principle: deterministic code computes (classification, arithmetic, rankings, corrective values); the model picks from menus and echoes. Every issue below is that principle applied to one seam.

Issues

Suggested order: #27 first (fully independent, validator-side), #24/#25 in parallel (pure modules), then #26 (composes them), #28 last.

Coordination

A PR refactoring prompt building is in flight. All pure modules (appetite, pairing math, band tiers, validator messages) are safe to build immediately; the prompt-rendering integration in each issue targets whichever builder that PR leaves standing (packages/arbitration-sdk/src/compose.ts vs the F2 §9 six-section contract in packages/app/src/lib/compose/prompt.ts). Bump PROMPT_VERSION on any prompt-contract change, per F2 §9.

Per repo rule (CLAUDE.md): decisions made while building — the appetite lexicon, the band-tier rubric, the T0.5 go/no-go — go back to the Notion feature pages (F2 §9, F3 band logic), not only into the PRs.

References

Activity

  1. GustavoSena commented on Jul 25, 2026

    @GustavoSena
    CollaboratorAuthor

    Coordination update after reviewing #30 (the prompt-refactor/server-compose PR):

  2. GustavoSena commented on Jul 26, 2026

    @GustavoSena
    CollaboratorAuthor

    Tier 0 status:

    The PROMPT_VERSION follow-up this tracking issue inherited from #30 is closed — it was reintroduced in the SDK builder by #32 and is bumped by #39, so "add it, then bump it" is done.

    Two things surfaced while building that are worth carrying forward rather than losing in a PR body:

    1. Volatility units are ambiguous and it matters ~3.5x. Prompt Tier 0: derive risk appetite, pairing and band tiers (T0.1–T0.3) #39 reads realizedVol7dPct as annualised (the other reading gives ±87%–±99% bands — full-range in all but name). This must be confirmed when F3 Open Q2 lands a real volatility source; the field may want renaming then.
    2. Off-mid pricing has no invariant. Prompt Tier 0: derive risk appetite, pairing and band tiers (T0.1–T0.3) #39 prevents it at the prompt level by precomputing the pairing, but nothing rejects a strategy whose virtualAmounts ratio is far from mid. That is the Tier 2 invariant (I17 in the original plan) and it is worth its own issue whenever multi-pair work starts.
  3. GustavoSena commented on Jul 26, 2026

    @GustavoSena
    CollaboratorAuthor

    Tier 0 is complete except for the measurement.

    issue state
    #24 T0.1 appetite ✅ #39
    #25 T0.2 pairing ✅ #39
    #26 T0.3 band tiers ✅ #39
    #27 T0.4 feedback names the fix ✅ #38
    #28 T0.5 spike 🟡 harness in #40; numbers need a funded key

    The PROMPT_VERSION follow-up inherited from #30 is closed: reintroduced by #32, now sluice.compose/3.

    Three things Tier 0 surfaced that outlive it, none of which belong to this tracking issue but all of which would otherwise be lost in PR bodies:

    1. Band tiers are invisible in the UI. Prompt Tier 0: derive risk appetite, pairing and band tiers (T0.1–T0.3) #39 computes wide/mid/tight server-side, but ServerComposeResult doesn't carry the tier — so the screen shows three band percentages with no framing, and from-server.ts still fabricates a risk chip from band presence while the app README says risk ratings are unavailable until Gate 2. Worth one issue covering both.
    2. Volatility units are ambiguous and it matters ~3.5x — Prompt Tier 0: derive risk appetite, pairing and band tiers (T0.1–T0.3) #39 reads realizedVol7dPct as annualised; confirm when F3 Q2 lands a real source.
    3. Off-mid pricing still has no invariant. Prompt Tier 0: derive risk appetite, pairing and band tiers (T0.1–T0.3) #39 makes it unlikely at the prompt level; only a validator rule makes it impossible (the Tier 2 I17).

    I'd close this tracking issue once #28 has its numbers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions