Commit Graph

336 Commits

Author SHA1 Message Date
can1357 623ae8df35 chore: bump version to 16.0.10 2026-06-19 01:32:28 +02:00
can1357 20f8c3776f chore: bump version to 16.0.9 2026-06-18 23:01:31 +02:00
can1357 2023a6f674 chore: bump version to 16.0.8 2026-06-18 20:05:56 +02:00
can1357 38d1d3a2f5 feat(coding-agent): vendor relevant parts of markit 2026-06-18 19:11:22 +02:00
can1357 f5ebab2b83 feat(utils): vendor mermaid rendering 2026-06-18 18:52:38 +02:00
can1357 f0a383332b build: updated setup script to link omp binary
- Added a command to the setup script to link the omp binary into the global bun bin directory.
- Updated the omp script documentation to reflect the new installation method.
2026-06-18 17:01:48 +02:00
can1357 93624f0239 chore: bump version to 16.0.7 2026-06-18 16:38:08 +02:00
can1357 159b8a1c63 chore: bump version to 16.0.6 2026-06-18 03:20:08 +02:00
can1357 41917feba4 docs: add developer setup guide (#2898) 2026-06-18 02:46:48 +02:00
can1357 7c295faa52 feat: added native support for ArkType schemas alongside Zod
- Added native support for parsing, normalized validation, and serialization of ArkType schemas throughout the agent pipeline.
- Implemented pruning of unconstrained union branches and normalization helpers to handle unrepresentable strict-mode branches.
- Patched ArkType's schema package to preserve declared object key order during serialization.
- Integrated ArkType schemas into `agent-loop` and migrated coding agent tool parameters to ArkType format.
2026-06-18 00:59:56 +02:00
can1357 d4317d3d20 feat(ai): consolidated OpenAI-family streaming and add OpenRouter API support
This change introduces a new `openrouter` API type and extensively refactors OpenAI-family streaming providers, centralizing shared logic and improving robustness.

Key changes include:
- **Unified OpenAI-family Logic:** Consolidated core utilities, compat resolution, request shaping, and stream processing into `openai-shared.ts`, reducing duplication across `openai-completions`, `openai-responses`, and `openai-codex-responses`.
- **OpenRouter API Type:** Introduced a dedicated `openrouter` API type with dual-surface compatibility, allowing it to dispatch requests as either OpenAI Chat Completions or Responses.
- **Enhanced Provider Integration:**
    - Improved Perplexity search to leverage shared OpenAI streaming transports, including API-key fallback to OpenRouter and support for Perplexity's Responses API.
    - Integrated xAI-specific logic directly into the shared `stream.ts` dispatch, removing the dedicated `xai-responses` provider.
    - Refined credential parsing for Google Gemini CLI and handling of Azure deployment names.
- **Robustness & Consistency:** Improved error handling for Codex, standardized output token parameter resolution, and ensured consistent application of reasoning suppression across all Chat Completions dialects.
- **New Documentation:** Added `provider-endpoint-constraints.md` to detail endpoint-specific behaviors and quirks for various providers.
- **Telemetry & Debugging:** Extended telemetry propagation to advisor calls and overflow compaction tasks. Improved debugging for Codex WebSocket failures and stream error messages.
- **Tooling & Security:** Updated browser stealth scripts to prevent detection and added a new `ts-no-inline-cast-access` TTSR rule.
2026-06-17 21:36:48 +02:00
roboomp 85b0dc9592 docs: added developer setup guide
Added a root setup script that installs workspaces and builds the native addon before running the source CLI.

Documented the fresh-clone setup and smoke-check flow in the README development section.

Fixes #2895
2026-06-17 17:51:06 +00:00
can1357 7e87709d22 chore: bump version to 16.0.5 2026-06-17 15:11:23 +02:00
can1357 94a813788f chore: bump version to 16.0.4 2026-06-17 09:44:33 +02:00
can1357 8eeb707387 chore: bump version to 16.0.3 2026-06-17 01:58:36 +02:00
can1357 dc14689fc1 chore: bump version to 16.0.2 2026-06-16 15:33:47 +02:00
can1357 e24f789de4 chore: bump version to 16.0.1 2026-06-15 21:30:30 +02:00
can1357 44f9867e0e chore: bump version to 16.0.0 2026-06-15 17:27:48 +02:00
can1357 789d4f6948 chore: bump version to 15.13.3 2026-06-15 12:47:58 +02:00
can1357 b7b1b54f6a chore: bump version to 15.13.2 2026-06-15 08:49:41 +02:00
can1357 8f7112e853 build: remove fix:changelogs from fix script 2026-06-15 08:22:12 +02:00
can1357 6c48b6224d chore: bump version to 15.13.1 2026-06-15 04:36:40 +02:00
roboomp 4d9f9d9edf fix(ci): aggregated release notes across silent intervening tags
scripts/ci-release-notes.ts previously extracted only the single
target-version section, so changelog entries finalized under tags pushed
without a GitHub Release (e.g. v15.12.5 and v15.12.6 — collateral from
the pre-#2564 release-cancellation bug) were stranded out of the next
published release body.

The generator now walks the range (latest-published-release, target],
resolved via 'gh release list', and merges every in-range '## [X.Y.Z]'
section per package — grouped by '### <category>' with bullet-level
dedup so post-release changelog flattening cannot surface the same
entry twice. Versions iterate newest-first so newer phrasing wins on
dup resolution, and categories are sorted into the canonical
Breaking/Added/Changed/Fixed/Removed order regardless of source order.

Falls back to legacy single-version extraction when 'gh' is unavailable
or no prior published release resolves (safe no-op);
'OMP_RELEASE_NOTES_FLOOR=v15.12.4' overrides the lookup for manual
re-runs (empty string forces legacy mode).

Adds scripts/ci-release-notes.test.ts covering: range inclusion above
floor, target-inclusive boundary, dedup of bullets flattened forward
into multiple versions, canonical category ordering, the null-floor
legacy fallback, empty version sections skipped, and no empty-category
emission when dedup drains a bucket. Wired into 'bun run test:scripts'.

Fixes #2596
2026-06-14 23:36:19 +00:00
can1357 b8e4da23d0 ci(ci): refactored CI setup and test-state isolation for coding-agent workflows
- Added a setup-system-deps action with preloaded-runner guards and apt fallbacks.
- Updated CI workflows to download Linux x64 native artifacts and gate on native job success.
- Renamed coding-agent fast mode to singleton in scripts and test partitioning logic.
- Added settings test-state begin/restore helpers with recursive cleanup in affected tests.
2026-06-14 22:37:05 +02:00
can1357 a734c29234 ci(scripts): reworked CI test execution with mode-based TypeScript buckets
- Added a mode-based `ci-test-ts.ts` runner with `--dry-run` support.
- Partitioned coding-agent tests into fast/ui/runtime/native/heavy buckets and separated workspace/native runs.
- Added coding-agent bucket modes that fail CI when a target bucket has no matching tests.
- Updated CI scripts/workflow to run the new TS buckets, use `omp-kata`, and gate releases on them.
2026-06-14 21:55:55 +02:00
can1357 7e8122000a chore: bump version to 15.13.0 2026-06-14 18:21:59 +02:00
can1357 cbc3107fda build: added changelog-fix step to fix and fix-all script chains
- Updated the `fix` script to run `fix:changelogs` alongside existing fix tasks.
- Updated the `fix:all` script to run `fix:changelogs` with the other full-fix commands.
2026-06-14 17:26:39 +02:00
can1357 e9846a38df Merge remote-tracking branch 'origin/farm/8be13284/scope-release-concurrency-per-sha' 2026-06-14 16:08:22 +02:00
can1357 b830f7912b feat: unified speech setup and introduced local STT/TTS capabilities
- Added unified `omp setup speech` flow with JSON/check modes and model picker.
- Added local STT pipeline with sherpa workers, recorder/download flow, and streaming inference.
- Added local TTS pipeline with `omp say`, backend selection, and streaming vocalization.
- Replaced legacy speech settings with unified `speech`/`speechgen` configuration keys.
2026-06-14 16:07:44 +02:00
roboomp ea4880fee4 test(ci): ran release concurrency regression in ts tests
Added a root-level test:scripts script for scripts/ci-concurrency.test.ts and chained it from test:ts so the GitHub Actions Test & smoke (TS) job runs the release-concurrency regression after workspace TypeScript tests pass.

Verified bun run test:scripts passes. bun run test:ts reaches the existing workspace suite first and currently fails before the new tail command on unrelated pre-existing package tests (pi-mnemopi optional embedding load, pi-coding-agent GitHub worktree/retry-cap cases).
2026-06-14 12:33:54 +00:00
can1357 19766762cd chore: bump version to 15.12.6 2026-06-14 02:35:06 +02:00
can1357 eac1d21f93 chore: bump version to 15.12.5 2026-06-13 21:51:43 +02:00
can1357 15b5c1397f chore: bump version to 15.12.4 2026-06-13 18:04:39 +02:00
chan1103 4b136b0710 fix: align Mermaid ASCII box borders for CJK/emoji labels
beautiful-mermaid@1.1.3 measures label width in UTF-16 code units, but
terminals render East Asian characters (Hangul/CJK/kana) and emoji 2
columns wide, so fenced mermaid blocks in assistant messages and
render_mermaid tool output had misaligned box borders for non-Latin
labels (upstream: lukilabs/beautiful-mermaid#119, #122).

Adds a patchedDependencies entry rebuilding the ASCII renderer to
measure terminal display columns: grapheme-cluster segmentation
(Intl.Segmenter), wcwidth-style policy (East Asian Wide + emoji
presentation + ZWJ/VS16/flag sequences = 2 columns; text-presentation
symbols like the renderer's own arrowheads stay narrow), and atomic
wide-glyph cell pairs so label collisions cannot shift row widths.

The patch modifies only existing files (bun cannot patch in new files,
and the exports "bun" condition loads src/ directly, so both src and
dist are patched). It mirrors the upstream PR and should be dropped
once the fix ships in a beautiful-mermaid release; a new CJK alignment
regression test keeps that transition honest.

Verified: bun test packages/coding-agent/test/modes/components/
assistant-message-mermaid.test.ts (8 pass, incl. new display-column
alignment regression test); bun test packages/utils (154 pass); Korean
flowchart renders with uniform display-column row widths through the
patched package.
2026-06-13 16:44:17 +09:00
can1357 6e8a56e24e fix(deps): migrated OpenAI providers to wire-based streaming and removed SDK dependency
- Replaced Azure and OpenAI provider calls with `postOpenAIStream` flow.
- Fixed stream error handling by retaining status, headers, and body on failures.
- Fixed stream parsing by handling raw JSON SSE frames and `[DONE]` events.
- Added `OpenAIHttpError` with parsed messages and timeout-aware retry behavior.
- Added remote-compaction tests for timeout, abort, and 500-fallback behavior.
2026-06-13 00:43:24 +02:00
can1357 074857fea9 build(dependencies): upgraded dependency versions and synced bun.lock
- Bumped core workspace dependencies to newer versions, including @agentclientprotocol/sdk and onnxruntime-node.
- Updated packages/mnemopi peer dependency on onnxruntime-node from 1.24.3 to 1.26.0.
- Regenerated bun.lock to sync dependency metadata and checksums after version updates.
2026-06-13 00:20:05 +02:00
can1357 db421bb2ef chore: bump version to 15.12.3 2026-06-12 18:13:09 +02:00
can1357 7975ebea8c chore: bump version to 15.12.2 2026-06-12 17:03:05 +02:00
can1357 ba27bbd3a3 chore: bump version to 15.12.1 2026-06-12 16:27:14 +02:00
can1357 89e0801a5d chore: bump version to 15.12.0 2026-06-12 15:50:06 +02:00
can1357 9d159ced17 chore(coding-agent): composed HTML export template at runtime instead of committing generated artifacts
- Replaced the committed `template.generated.ts` with Bun text imports (`with { type: "text" }`) of `template.html/css/js` plus the gitignored `tool-views.generated.js`, composed in a memoized `getTemplate()` in `src/export/html/index.ts`.
- Deleted `scripts/generate-template.ts` and the unused `template.macro.ts`; removed the stale package-level `.gitignore` and the `biome.json` exclusion for the generated file.
- Wired root `prepare` to `generate-docs-index` + new `build-tool-views` script and coding-agent `prepack` to rebuild tool views before `bundle-dist`, so source runs and publishes never need a manual generate step.
- Added narrow ambient text-module declarations (`*.css`, `*/template.js`, `*.generated.js`) to `bun-imports.d.ts`; `*.html` stays untyped because bun-types claims it as `HTMLBundle`, so the import casts at the use site.
- Updated `DEVELOPMENT.md` and `docs/porting-from-pi-mono.md` references; the rewritten import block transiently carries `loadEntriesFromFile`, consumed by the next commit's sub-session loader.
2026-06-12 15:00:16 +02:00
can1357 e13ad3805f chore: bump version to 15.11.8 2026-06-12 12:16:34 +02:00
can1357 8fa1f6c250 feat: added shared collab wire protocol and web guest collaboration client
- Added @oh-my-pi/pi-wire and reworked collab protocol types into shared contracts.
- Added wire-compatibility guards in coding-agent host to block unsupported events.
- Added standalone collab-web package with guest UI, mock-host tooling, and local relay.
- Added secure room-link validation, WebCrypto framing, and safer socket routing.
2026-06-12 11:54:41 +02:00
can1357 10d577e301 chore: bump version to 15.11.7 2026-06-12 10:02:58 +02:00
can1357 1eb7cbe3fe chore: bump version to 15.11.6 2026-06-12 06:31:58 +02:00
can1357 f80cf7d584 chore: bump version to 15.11.5 2026-06-12 05:58:26 +02:00
can1357 0cb3cb6b9d chore: bump version to 15.11.4 2026-06-12 04:26:57 +02:00
can1357 37faeb6a6d chore: bump version to 15.11.3 2026-06-11 21:28:47 +02:00
can1357 23dedc5086 chore: bump version to 15.11.2 2026-06-11 18:15:52 +02:00
can1357 8db03c56d4 chore: bump version to 15.11.1 2026-06-11 16:59:21 +02:00