Commit Graph
800 Commits
Author SHA1 Message Date
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
amosblomqvist f24fda926a fix: finish new-session opening-message handoff 2026-10-27 18:19:38 +02:00
amosblomqvist 282f01e1f4 Merge accepted local main into PR #184 working branch 2026-10-27 18:12:09 +02:00
amosblomqvist 8ca291526c Merge accepted local main into PR #154 working branch 2026-10-27 17:13:15 +02:00
amosblomqvist 82c6999a63 fix: preserve failed responses when retrying model calls
Keep failed attempts in the saved transcript and omit only trailing failures from Retry's temporary agent history. Use the matching temporary prefix length when persisting genuinely new output.

Preserve the error notice across plan/compaction markers, refuse Retry after later compaction, and avoid synthesizing results for tool calls inside failed generations while retaining Pi's native filtering.

Verified: 173 focused Retry/session/compaction-projection/practice-record tests, typecheck, changed-file lint, and diff --check. No app launch or real provider calls.
2026-10-27 16:49:29 +02:00
amosblomqvist 2049998ed7 Merge reviewed provider-first setup recovery and session-identity correction 2026-10-27 16:35:06 +02:00
amosblomqvist 06714e5998 Keep unresolved session identity separate from Strong fallback 2026-10-27 16:21:54 +02:00
Martin 8ad17a4fe4 docs: fix relative links in development guide 2026-10-27 15:18:44 +01:00
amosblomqvist 419dcf1ba2 Restore exclusive provider-first setup recovery 2026-10-27 16:12:13 +02:00
amosblomqvist c1ef6d6822 Merge PR #211 dynamic dock sizing with reviewed viewport corrections 2026-10-27 15:47:15 +02:00
amosblomqvist d30acd4fdd fix: finish measured dock sizing and short-window scrolling 2026-10-27 15:27:08 +02:00
amosblomqvist ae380b156b Merge model-label, OpenCode key-row and setup initialization fixes 2026-10-27 15:01:44 +02:00
amosblomqvist d6ae6f3256 Merge compaction summary projection and incomplete-checkpoint guard 2026-10-27 14:57:36 +02:00
amosblomqvist 03e379c3e7 Merge provider-independent model-slot repair after disconnect 2026-10-27 14:57:36 +02:00
Casimir ArlabosseandClaude Opus 5.5 cb7e719e92 test: resolve golden fixture path with import.meta.dirname
new URL(import.meta.url).pathname keeps percent-encoding, so the test
failed with ENOENT when the checkout path contains a space. Use
import.meta.dirname like the other tests.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 15:46:28 +08:00
anikam13 42814ba6a6 fix: budget dock height for answer controls and toolbar 2026-10-26 23:03:09 -07:00
amosblomqvist 683eb93bcc Fix model labels and catalog-backed setup initialization 2026-10-26 19:43:09 +02:00
amosblomqvist b81f0a3455 fix: avoid replaying superseded compaction summaries 2026-10-26 19:08:15 +02:00
amosblomqvist 88ba42fd37 fix: allow repairing model slots after subscription disconnect 2026-10-26 18:50:54 +02:00
Evangelos Stavropoulos a572675900 fix: let the learner retry a turn whose model call failed 2026-10-26 14:31:51 +02:00
amosblomqvist 3dc88472ee chore: prepare 0.3.8 2026-10-26 06:08:04 +02:00
amosblomqvist 8c277f8320 Merge source-preserving math content presentation 2026-10-26 05:26:13 +02:00
amosblomqvist d3c8709bd2 fix: preserve source data and recover tool math at presentation 2026-10-26 04:49:47 +02:00
amosblomqvist c1d044f91b Merge server-owned web subscription connections 2026-10-26 03:18:19 +02:00
amosblomqvist c0c670b810 feat: enable subscription connections in web and dev 2026-10-26 03:00:40 +02:00
amosblomqvist a19f53b2b4 test: preserve PDF history guards alongside canonical result delivery 2026-10-26 02:57:33 +02:00
amosblomqvist 6370c9d618 Merge durable background job delivery and recovery 2026-10-26 02:39:59 +02:00
amosblomqvist 85329290f2 Merge Electron 44.9.3 security update 2026-10-26 02:19:19 +02:00
amosblomqvist 90828cef49 fix: scope wake settlement ownership and allow legacy result deletion 2026-10-26 02:04:18 +02:00
amosblomqvist c7c4bd2cbe Merge Claude learner-facing message output 2026-10-26 01:57:26 +02:00
amosblomqvist 87b04cc86e fix: deliver Claude teaching prose through an output tool 2026-10-26 01:55:57 +02:00
amosblomqvist e851432f4c fix: separate worker completion from durable session delivery 2026-10-26 01:55:52 +02:00
ferponse 472844e691 fix: keep the opening chat text out of the URL
A long first message in ?prompt= exceeds Node's header limit. The chat GET returns 431 and Electron commits an empty window. Stash the text in sessionStorage and open /chat/<id>.
2026-10-26 00:45:16 +01:00
amosblomqvist 926486e37b Merge PDF home-relative path consistency 2026-10-26 01:34:49 +02:00
amosblomqvist d9fa314c20 fix(pdf): resolve learner paths relative to home 2026-10-26 01:18:53 +02:00
amosblomqvist e1fbb0ca36 Merge SVG figure style isolation 2026-10-26 00:17:25 +02:00
amosblomqvist 46c95c7b59 fix: update Electron to 44.9.3 2026-10-26 00:15:59 +02:00