Commit Graph
587 Commits
Author SHA1 Message Date
Federico Jaramillo Martinez 9006db1e6d test: tolerate Windows line endings in Docker docs check 2026-07-04 22:36:45 +02:00
Federico Jaramillo Martinez 73b169a768 test: close selected coverage gaps 2026-07-03 21:40:36 +02:00
Federico Jaramillo Martinez 8511604e83 test: close audit cleanup findings 2026-07-03 21:40:36 +02:00
Federico Jaramillo Martinez 10efb7f221 fix(sessions): name relay handoffs deterministically 2026-07-03 10:51:45 +02:00
Federico Jaramillo Martinez 1564f1cfc5 test: audit existing suite 2026-07-03 09:48:20 +02:00
Pi Web Agent 031aee3efe test: skip Docker command executions on Windows 2026-07-02 21:52:24 +00:00
Pi Web Agent a2bfd3657d Merge remote-tracking branch 'origin/main' into feat/docker-runtime-host-admin
# Conflicts:
#	src/client/src/api.ts
#	src/client/src/api/parsers.test.ts
#	src/shared/piWebStatusParsing.test.ts
2026-07-02 20:52:50 +00:00
Pi Web Agent 14d0b0f181 docs: keep Docker setup docs scoped 2026-07-02 20:47:39 +00:00
Federico Jaramillo Martinez ad6285355d fix: show full tool details in chat 2026-07-02 22:18:15 +02:00
Federico Jaramillo Martinez 439520c3e4 fix: reconcile pending session starts 2026-07-02 19:05:23 +02:00
Federico Jaramillo Martinez 2665d1e4bc fix: handle session start persistence 2026-07-02 18:46:44 +02:00
Federico Jaramillo Martinez d2e10cd89a fix: use suffix for unnamed session labels 2026-07-02 14:27:21 +02:00
Federico Jaramillo Martinez 3cb81b1bcf fix: show pending session starts safely 2026-07-02 14:16:17 +02:00
Federico Jaramillo Martinez b61a9c0c54 feat(settings): unify settings panel layout 2026-07-02 13:28:03 +02:00
Federico Jaramillo Martinez 64b2b32705 feat: target settings to selected machine 2026-07-02 13:28:03 +02:00
Federico Jaramillo Martinez ad74ea4da7 refactor: generate session names via agent.streamFn instead of pi-ai compat
Rewrite sessionNameGenerator.ts to consume a StreamFn-shaped dependency
(sourced from PiAgentSession.agent.streamFn, wired in leg B) instead of
ModelRegistry plus a dynamic @earendil-works/pi-ai/compat import.

streamFn resolves auth/headers/retry internally, so the explicit
modelRegistry.getApiKeyAndHeaders(model) call and apiKey/headers stream
options are no longer needed.

Deletes now-dead compat-loading machinery: getPiAiProviderRegistryModule,
loadPiAiProviderRegistryModule, importOptionalPiAiModule,
isModuleUnavailableError, hasGetApiProvider, PI_AI_COMPAT_MODULE,
ModuleImporter, SessionNameApiProvider, PiAiProviderRegistryModule, and
the module-level provider registry cache.

Updates the maybeGenerateSessionName call site in piSessionService.ts to
pass session.agent.streamFn instead of this.modelRegistry, and updates
both test files: sessionNameGenerator.test.ts gains coverage for the new
streamFn-driven generateShortSessionName signature (success and error
paths), and piSessionService.test.ts gains an end-to-end test proving a
first prompt generates a session name through the wired agent.streamFn
fake.

sessionNameGenerator.ts no longer imports @earendil-works/pi-ai/compat
or references getApiProvider anywhere.
2026-07-02 11:42:30 +02:00
Federico Jaramillo Martinez 6f59a4243e refactor: expose session streamFn on PiAgentSession
Add a narrow `agent: { streamFn: StreamFn }` field to the PiAgentSession
interface, sourced structurally from the real AgentSession.agent (Agent,
from the stable @earendil-works/pi-agent-core package). This is the
resolved-auth/headers/retry "call this model" function pi's own
compaction/branch-summarization code uses internally, and will let
sessionNameGenerator.ts drop its dependency on the deprecated pi-ai
/compat provider registry in a follow-up leg.

No adapter object was needed: AgentSession's real .agent field already
structurally satisfies the new narrow shape, so defaultCreateAgentRuntime
needed no changes.

Adds a unit test proving the field is wired end-to-end via the injected
runtime creator. sessionNameGenerator.ts itself is untouched (leg C).
2026-07-02 11:28:18 +02:00
Federico Jaramillo Martinez e7d418fd2b fix: serialize pi package mutations 2026-07-01 22:31:37 +02:00
Federico Jaramillo Martinez 95a0ad7509 fix: guide package settings by runtime capability 2026-07-01 22:24:06 +02:00
Federico Jaramillo Martinez 332db5faeb feat: expose package management capability 2026-07-01 22:13:02 +02:00
Federico Jaramillo Martinez 0a1b7f9699 fix: decouple settings package loading 2026-07-01 22:05:48 +02:00
Federico Jaramillo Martinez 3df4041bd7 feat: manage Pi packages on selected machines 2026-07-01 21:54:18 +02:00
Federico Jaramillo Martinez 889672ff53 feat: add session runtime reload command 2026-07-01 19:32:52 +02:00
Federico Jaramillo Martinez 8ade238228 feat: add Pi package management settings 2026-07-01 15:34:34 +02:00
Federico Jaramillo Martinez 3f36394c17 fix: wait for git file suggestion probes before fallback 2026-07-01 09:39:59 +02:00
Pi Web Agent 01c75298f9 fix: keep federated docker updates tab visible 2026-06-29 16:12:40 +00:00
Pi Web Agent 4885aa0dd5 fix: clarify Docker checkout runtime guidance 2026-06-29 14:43:53 +00:00
Federico Jaramillo Martinez d165d69f73 feat: add bulk session mutations 2026-06-29 13:34:03 +02:00
Pi Web Agent bd28c93cfe feat: unify Docker entrypoint 2026-06-29 11:27:47 +00:00
Federico Jaramillo Martinez 1edebb1b04 fix: require explicit alternate agent state 2026-06-29 07:56:01 +02:00
Federico Jaramillo Martinez a87479815a fix: inherit dispatcher model for spawned sessions 2026-06-28 16:46:37 +02:00
Federico Jaramillo Martinez 75e2377756 feat: generalize agent runtime config 2026-06-28 16:36:40 +02:00
Federico Jaramillo Martinez 7063c2c3b1 fix: prevent iOS input zoom 2026-06-28 16:11:18 +02:00
Federico Jaramillo Martinez 2009e6a883 fix: keep chat prompt input stable during streaming
Coalesce session status/activity updates into one render per animation
frame instead of one per token, ignore prompt-editor status changes that
do not affect what it displays, and stop per-keystroke draft state from
re-rendering the surrounding template. This prevents streaming-driven
re-renders from interrupting in-progress touch gestures such as the iOS
long-press paste/edit callout.
2026-06-27 08:12:01 +02:00
Jeff Scott Ward 84a485d62e feat: add OMP runtime support 2026-06-26 12:49:58 -04:00
Jeff Scott Ward 4605a4f1d8 refactor: add session route service seam 2026-06-26 12:32:13 -04:00
Federico Jaramillo Martinez cb13af4b88 feat: add manual session cleanup 2026-06-26 15:57:12 +02:00
Federico Jaramillo Martinez 7bcd807867 Merge branch 'main' into chat-bidi-rtl-support 2026-06-26 00:16:01 +02:00
Federico Jaramillo Martinez 58a7560e51 Merge pull request #35 from aromancev/fix/mobile-enter-newline
fix: keep Enter as newline in mobile chat composer
2026-06-26 00:15:12 +02:00
Federico Jaramillo Martinez a43c782043 feat: add configurable prompt Enter behavior 2026-06-25 23:34:41 +02:00
Federico Jaramillo Martinez fd386b2d6b feat: add prompt enter behavior setting 2026-06-25 22:55:09 +02:00
Federico Jaramillo Martinez 7e812aa7f5 feat: support general chat file attachments 2026-06-25 21:32:07 +02:00
Andrey Romantsev 32ea809adc fix: keep Enter as newline in mobile chat composer 2026-06-25 18:11:41 +02:00
Federico Jaramillo Martinez e46d9ecbf8 feat: add safe manual workspace uploads 2026-06-25 15:16:44 +02:00
Federico Jaramillo Martinez f0b779b062 Merge pull request #32 from gilbertwong96/fix/fish-doctor-version-check
fix: run doctor version checks under fish
2026-06-25 14:47:34 +02:00
Federico Jaramillo Martinez 5269a7a7d7 fix: support symlinked CLI entrypoint guard 2026-06-25 14:41:58 +02:00
Federico Jaramillo Martinez 446f588324 Merge branch 'main' into fix/persist-subsession-links 2026-06-25 11:09:18 +02:00
Federico Jaramillo Martinez 56c1c1714e fix: treat missing subsession files as unavailable 2026-06-25 11:08:26 +02:00
Federico Jaramillo Martinez b14205e523 feat: add inline Git diff highlights 2026-06-25 10:57:28 +02:00
Federico Jaramillo Martinez b0b497d493 fix: require exact active subsession files 2026-06-25 09:47:41 +02:00