Commit Graph
850 Commits
Author SHA1 Message Date
amosblomqvist 3993122a4e fix: keep live question placeholders pending client-side 2026-10-28 23:41:24 +02:00
amosblomqvist 6ff4924780 fix: align pending questions by native occurrence 2026-10-28 23:31:37 +02:00
amosblomqvist de9caf6bc4 Merge contributor foundation for pending-question authority 2026-10-28 23:23:46 +02:00
amosblomqvist f69fa354cc fix: reserve native Claude Code provider namespace 2026-10-28 21:52:48 +02:00
amosblomqvist 8883fe1f5f Merge native Claude Code integration with explicit opt-in
# Conflicts:
#	src/agent/teacher-agent.ts
#	src/server/keys.ts
2026-10-28 21:45:50 +02:00
amosblomqvist c9c8cead57 feat: require explicit opt-in for Claude Code use 2026-10-28 21:37:03 +02:00
amosblomqvist ab76e4ff50 fix: clarify Claude CLI billing and compact status copy 2026-10-28 21:13:43 +02:00
amosblomqvist 074ba7afe4 feat: use session-reported Claude CLI context windows 2026-10-28 20:36:42 +02:00
amosblomqvist 17c94be327 fix: show native Claude CLI usage as unpriced 2026-10-28 19:58:07 +02:00
amosblomqvist eeaa147565 Merge model-visible image processing and desktop file-path attachments 2026-10-28 19:54:32 +02:00
amosblomqvist 1750dd8a24 fix: keep successful file path attachments silent 2026-10-28 19:52:07 +02:00
amosblomqvist 9fbd0598f1 Merge declarative custom and local providers 2026-10-28 19:27:28 +02:00
amosblomqvist 5093809ea0 fix: authorize CLI probes and preserve executable identity 2026-10-28 19:26:36 +02:00
amosblomqvist c5a756d707 feat: report Claude CLI installation and gate unsupported versions 2026-10-28 19:10:47 +02:00
amosblomqvist 0b576d5973 fix: preserve native word and line deletion around file chips 2026-10-28 19:07:25 +02:00
amosblomqvist c4e934c9dc feat: attach desktop file paths as editable learner chips 2026-10-28 18:54:57 +02:00
amosblomqvist 32ef9e84fe Merge Next upgrade fixing gzip drain listener accumulation 2026-10-28 18:31:40 +02:00
amosblomqvist c0de3f968d fix: preserve native Claude CLI authentication provenance 2026-10-28 18:17:50 +02:00
amosblomqvist 84f93999c5 fix: normalize model-visible images with Pi processing 2026-10-28 18:16:04 +02:00
amosblomqvist 64a36bebd2 fix: scope held Claude processes and honor MCP cancellation 2026-10-28 17:19:51 +02:00
amosblomqvist 6ca431644d fix: enforce Claude CLI MCP admission and safe continuation 2026-10-28 08:01:50 +02:00
amosblomqvist 812ea23419 Merge current main into PR61 finishing branch 2026-10-28 07:08:36 +02:00
Hadrien Cornier 82f0b59355 Keep the question dock aligned with the native pending call 2026-10-27 22:58:00 -05:00
amosblomqvist 3dd52110bb docs: add Discord link to README navigation 2026-10-28 05:24:27 +02:00
amosblomqvist 313a3c88a3 Recompute custom thinking preferences for each model request 2026-10-28 05:07:55 +02:00
amosblomqvist fb7341d82b Keep native Bedrock implementation in standalone traces 2026-10-28 04:54:57 +02:00
amosblomqvist f84bef1f91 Add declarative custom providers through native Pi AI 2026-10-28 04:42:46 +02:00
amosblomqvist 59f389d0a6 fix: upgrade Next to bound gzip drain listeners 2026-10-28 00:20:49 +02:00
amosblomqvist 8f6fd7cd29 Merge release test synchronization correction 2026-10-27 23:48:37 +02:00
amosblomqvist 4f4b5643d4 test: await completed ChatGPT sign-in and consent saves
Replace arbitrary event-loop budgets in two release-gate tests with fresh per-attempt sign-in notifications and the actual consent control reply, bounded by a clear watchdog. Retain all final-state assertions and explicitly verify successful connected/error-free completion.

Controlled token/save gates demonstrate both old 100-turn waits return before completion; the corrected waits remain pending and retain the final persistence/UI assertions after release. Add small watchdog result/error/timeout tests. No production, workflow or dependency changes.

Isolated checks: focused 87/87, full suite once 2517/2517, full ESLint and typecheck. The full run preceded three runtime-erased non-null array-index annotations; focused tests/typecheck/full ESLint passed again on final source.
2026-10-27 23:44:48 +02:00
amosblomqvist b577ec5453 Prepare 0.3.9 release 2026-10-27 23:12:39 +02:00
amosblomqvist 0348897eb1 Merge reviewed Deepgram dictation language feature for 0.3.9 2026-10-27 22:39:34 +02:00
amosblomqvist 8337836199 Use sans settings labels and link Deepgram key setup 2026-10-27 22:32:55 +02:00
amosblomqvist 27e277099f Align dictation controls with settings dropdowns and show setup guidance 2026-10-27 22:18:01 +02:00
amosblomqvist f5a655b2f9 Preserve native Enter activation on dictation language options 2026-10-27 22:01:16 +02:00
amosblomqvist fbafc5e53a Finish Deepgram language settings with shared searchable picker 2026-10-27 21:51:09 +02:00
amosblomqvist 88266eaaf4 Merge PR114 dictation foundation for approved provider-row finishing
Preserve original contributor commit 3bb28e5f29. Resolve only the settings-dialog conflict by retaining current General/update behavior: the donor General-only language placement is explicitly superseded by the human-approved row BELOW the full-width Deepgram key. The assigned implementation worker will implement that placement and approved shared dropdown finishing. Foundation only, not a checked candidate.
2026-10-27 21:33:40 +02:00
amosblomqvist 3e657523ef Merge reviewed PR216 and PR228 maintenance bundle for 0.3.9 2026-10-27 21:27:28 +02:00
amosblomqvist 00a7d1437c Merge accepted main probe baseline before maintenance checks 2026-10-27 21:13:59 +02:00
amosblomqvist 2b1343ab38 Merge reviewed bounded probe-completion correction for 0.3.9 2026-10-27 21:11:02 +02:00
amosblomqvistandaksalatdev f01fdf3260 fix: require a successful probe result before handoff
Adapt the bounded probe-completion foundation from PR #130 by aksalatdev (source commit 535202bebe038fa1e0648f5df809d5ccfc26d071), not its mixed stream-salvage implementation.

Require a non-failed call followed by a matching probe_done result with neither isError nor explicit details.ok:false. Preserve older clean acknowledgments, saved attempts, and all existing handoff/retry/provider policies. Share the native completion seam with phase detection and exclude explicit refusals from UI phases.

Verify retained failed-probe Retry recovery with real agent/tool composition and synthetic engines: one fresh conclusion, one handoff, then teacher selection, without stored-tool replay. Focused tests 58/58; full tests 2473/2473; typecheck and full ESLint pass in isolated storage with scrubbed provider credentials.

Co-authored-by: aksalatdev <73862605+aksalatdev@users.noreply.github.com>
2026-10-27 20:49:04 +02:00
amosblomqvist 27abb31219 Integrate approved PR #228 maintenance foundation 2026-10-27 20:37:01 +02:00
amosblomqvist 31ea0c9f52 Integrate approved PR #216 maintenance foundation 2026-10-27 20:37:01 +02:00
amosblomqvist 354bd34c0c Merge PR #184 test typing compatibility for combined send contract 2026-10-27 19:18:20 +02:00
amosblomqvist 3b97056d01 test: infer the session send return type in refusal coverage
Avoid hardcoding Promise<void> so the test also typechecks with PR154's Promise<boolean> admission result. Type-only correction; no product behavior changes.
2026-10-27 19:17:27 +02:00
amosblomqvist 320d5e4704 Merge PR #154 short opening URLs and recoverable prompt handoff 2026-10-27 19:13:19 +02:00
amosblomqvist 30f52990b1 Merge PR #184 preserved-history failed-turn retry 2026-10-27 19:10:19 +02:00
amosblomqvist 3b29b5e9e7 fix: retire stale composer recovery drafts before retry
A failed-response Retry submits no composer text. Retire the earlier accepted text send's recovery fallback synchronously so a Retry model/key refusal cannot restore it over the current unsent draft. Never clear a later ordinary send's fallback at async settlement.

Add key/model503, superseding-draft and ordinary-refusal coverage. Verified 183 focused tests, typecheck, full ESLint, production build, and a red/green live production regression plus ordinary-draft recovery; no external provider calls.
2026-10-27 18:56:55 +02:00
amosblomqvist 1ff60b4681 fix: recover opening refusals after view teardown 2026-10-27 18:39:42 +02:00
amosblomqvist 5984eb4914 fix: render failed-response retry refusals as readable text
Decode only Retry's HTTP 400 error field for the existing banner. Preserve raw model/key refusal envelopes and other submission-error handling.

Verified on the accepted-main integration: 2424 full-suite tests, typecheck, full ESLint, production build and isolated synthetic production-browser Retry/Submit smoke. No real provider calls.
2026-10-27 18:35:31 +02:00