Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ Render order (top → bottom): **info · prayers · money · zai (one row per wi
| **prayers** | All five prayers with wall times, from [aladhan](https://api.aladhan.com) (cached per local day, stale-marker on degradation). Past prayers get a dim `✓`; the next prayer is green with a countdown on its segment only — `Fajr 04:15 (7h 03m)`. |
| **money** | API spend + token volume per window: `REPO $68.36 (1.3B)` (all-time for the current project) · `DAY` (since 00:00 local) · `7DAY` / `30DAY` (rolling, hour-aligned). Token volumes are dim, from the same sessions scan. |
| **zai** | One row per quota window — `󰚯 zai 5hrs …` / `󰚯 zai 7DAY …` — each `LABEL usage%/elapsed% (pace · reset · absolute)`, e.g. `5hrs 16%/26% (30m under · 3h 42m · Mon Oct 12 00:54)` / `7DAY 33%/32% (1h 41m over · 4d 19h · Fri Oct 16 16:12)`. **Provider-gated**: renders only while the active model's provider is `zai` (or the provider is unreadable); vanishes entirely on other providers. |
| **versions** | `󰚦 omp 18.9.2 · sl 0.8.1 · tern 0.7.2` — host from one `--version` spawn of the **running omp binary** (`process.execPath`, so it is install-agnostic (brew/npm/curl/source) and correct even for sessions resumed across an upgrade); plugin from its own package.json; tern from the `TERM_PROGRAM`/`TERM_PROGRAM_VERSION` env the [Tern terminal](https://stencil.so) sets — **Tern-gated**: strict env match, segment omitted outside Tern or when the version is unknown. Omitted entirely when no version is known — never a placeholder. |
| **versions** | `󰚦 omp 18.10.1 · sl 0.8.3 · tern 0.7.2` — host from one `--version` spawn of the **running omp binary** (`process.execPath`, so it is install-agnostic (brew/npm/curl/source) and correct even for sessions resumed across an upgrade); plugin from its own package.json; tern from the `TERM_PROGRAM`/`TERM_PROGRAM_VERSION` env the [Tern terminal](https://stencil.so) sets — **Tern-gated**: strict env match, segment omitted outside Tern or when the version is unknown. Omitted entirely when no version is known — never a placeholder. |

**Pace** — `window × (usage% − elapsed%)/100` — renders `1h 36m over` (orange: burning faster than the clock, quota exhausts early by that much) or `30m under` (green: behind the clock). Percent heat: accent < 70%, warning ≥ 70%, error ≥ 90% — raw, so over-quota stays error-red while display caps at `100%+`.

Expand Down
2 changes: 1 addition & 1 deletion assets/hero.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 11 additions & 0 deletions docs/COMPATIBILITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,14 @@ Per-run authoritative record, created on first use per `.omp/commands/compat-upd
- **Findings**: Bedrock `supportsThinkingBindingControls` plumbing across pi-ai / pi-catalog / pi-coding-agent (`models.yml` compat axis), pi-natives fix for shebang-less executables in the embedded shell, pi-tui fix for inline chart/image overlap artifacts.
- **Surface**: **UNCHANGED** — no extension-context, theme, session-JSONL, or plugin-loading change.
- **Disposition**: no separate release; covered by the 0.8.1 docs-only patch alongside 18.9.2. Hero.svg version row synced to `omp 18.9.2 · sl 0.8.1 · tern 0.7.2` in the same pass.

## omp 18.10.1 (2026-10-12)

- **Target**: omp v18.10.1; running binary (Tern-hosted) already 18.10.1 at run time. Baseline: 18.9.2 (v0.8.1) + v0.8.2 shipped after it (PR #13, advisor-scan fix — no compat research owed, host untouched).
- **Research span**: v18.10.0 + v18.10.1, both sources (GitHub release bodies via `gh api`, changelog embedded in the running 18.10.1 binary — windows agree).
- **Findings**: 18.10.0 — pi-tui **breaking removals** (`RuntimeChildrenOptions.transient`, `Component.retireDisplacedTranscript`, `Composer.pinInputToBottom()`), native IPC transport for local endpoints, ask-dialog hide (`Alt+H`), `omp session pack/unpack/moved` + `omp auth export/import`, codex context-window bump. 18.10.1 — Tern-native UI polish (turn-footer Copy button, compact running counters, picker sheets, extension text editor rendered as a composer sheet), `CountdownTimer.elapsed` native fix.
- **Surface**: **UNCHANGED** — no extension-context member (`ctx.ui.*`, `ctx.models.current().provider`, `ctx.modelRegistry.getApiKeyForProvider`, `ctx.sessionManager.getSessionName`, `ctx.setInterval`), event (`session_start`/`model_select`), theme field (`fg`, `sessionAccentInputs`), or session-JSONL schema change (`src/money.ts` fields untouched). The pi-tui removals are compile-time-unreachable: the plugin has **zero** `@oh-my-pi/*` imports (vendored context types; only a comment names pi-utils). The extension-editor-as-sheet change doesn't apply — the plugin opens no editor, it uses `setWidget`/`setStatus`/`notify` only.
- **Gates**: `pnpm typecheck` ✓; `pnpm test:run` 62/62 ✓, 0 fail.
- **Render sim (formatter-level)**: ✓ all six line families exact-equality-asserted against suite-approved strings (prayer, zai 5hrs/7DAY/over/heat-bands/empty, info, versions ×4 contract shapes, money, paceText, heat edges) + target-shape probe `versionLine({omp:"18.10.1", sl:"0.8.3", tern:…})` — throwaway `/tmp` script mirroring the `test/lines.test.ts` stub-theme pattern.
- **Verdict**: **COMPATIBLE** → docs-only **patch** release 0.8.3 (0.8.2 was the PR #13 fix). Version depictions synced in one pass: README feature-table row + `assets/hero.svg` versions tspan → `omp 18.10.1 · sl 0.8.3 · tern 0.7.2` (README `/sl` sample and `assets/dataflow.svg` carry no numeric version depiction). No layout change; `src/versions.ts` comment unchanged (stamp mechanism untouched in 18.10.x).
- **Ship**: branch `chore/omp-18.10.1-compat` → PR to main → tag `v0.8.3` → CI publish → npm propagation probes → `omp plugin install --force` → live tmux render check (isolated socket).
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@getpipher/omp-statusline",
"version": "0.8.2",
"version": "0.8.3",
"description": "Six-line omp statusline widget: hijri clock, prayer times, API-spend ledger (REPO/DAY/7DAY/30DAY, subagent-inclusive), per-window zai coding-plan quota rows (provider-gated), and an omp/sl/tern version row.",
"keywords": [
"pi-package",
Expand Down
Loading