Commit Graph
564 Commits
Author SHA1 Message Date
Federico Jaramillo Martinez 52925c1405 fix(sessions): restrict delegation tools in tracked children 2026-07-11 15:56:20 +02:00
Federico Jaramillo Martinez a660ba8ef8 fix(sessions): clarify subsession waiting behavior 2026-07-11 09:41:03 +02:00
Pi Web Agent 8f1b6b91ab fix: stream docker helper logs inline 2026-07-10 20:50:26 +00:00
Federico Jaramillo Martinez 410242aae8 Merge branch 'test-suite-audit-followup'
# Conflicts:
#	src/server/sessions/piSessionService.test.ts
2026-07-10 22:44:13 +02:00
Federico Jaramillo Martinez 32907bba5f chore(deps): update runtime and development packages 2026-07-10 22:10:40 +02:00
Federico Jaramillo Martinez abcf44b962 fix: show complete chat message metadata 2026-07-10 22:10:40 +02:00
Pi Web Agent 3b2a225f87 fix(docker): resolve Pi runtime from peer dependency 2026-07-10 19:44:31 +00:00
Pi Web Agent d6cfffd70d fix: support clipboard copy on private HTTP origins 2026-07-08 21:02:21 +00:00
Pi Web Agent 829b3508a4 fix: repair Docker installer asset fetch 2026-07-08 20:45:56 +00:00
Federico Jaramillo Martinez b0d4942b8d test(client): cover workspace upload helper options 2026-07-05 01:00:25 +02:00
Federico Jaramillo Martinez 6b61596ebd test(sessions): cover attachment filename safety 2026-07-05 00:49:45 +02:00
Federico Jaramillo Martinez c0538cff65 test(client): cover prompt attachment paste wiring 2026-07-05 00:41:38 +02:00
Federico Jaramillo Martinez a6e0f1db18 test(client): cover workspace files panel tree boundary 2026-07-05 00:26:34 +02:00
Federico Jaramillo Martinez fad83772b7 test(client): cover file explorer tree workflows 2026-07-05 00:20:17 +02:00
Federico Jaramillo Martinez 7b11f2ad75 test(server): cover websocket bridge behavior 2026-07-05 00:16:27 +02:00
Federico Jaramillo Martinez 168343a289 test(terminals): cover lifecycle publication 2026-07-05 00:11:22 +02:00
Federico Jaramillo Martinez afc0a21bfc test(client): cover machine add workflow 2026-07-05 00:06:18 +02:00
Federico Jaramillo Martinez 6bfb0a47d3 test(machines): cover remote mutation contract 2026-07-05 00:01:39 +02:00
Federico Jaramillo Martinez 1f26ae3935 test(sessions): cover archive lookup edge cases 2026-07-04 23:58:32 +02:00
Federico Jaramillo Martinez 386386d2b5 test(sessions): split pi session service specs 2026-07-04 23:53:58 +02:00
Federico Jaramillo Martinez 04f9d0e764 test(client): split session controller specs 2026-07-04 23:48:12 +02:00
Federico Jaramillo Martinez 4c084b77cc test(server): split app route specs 2026-07-04 23:41:49 +02:00
Federico Jaramillo Martinez 45bcc63544 test(settings): split settings dialog specs 2026-07-04 23:35:11 +02:00
Federico Jaramillo Martinez 9fed05850f test(workspaces): split file content service specs 2026-07-04 23:29:50 +02:00
Federico Jaramillo Martinez 40b1d2dabc Merge remote-tracking branch 'origin/main' into test-suite-audit-followup 2026-07-04 22:44:39 +02:00
Federico Jaramillo Martinez 1025978f21 Merge branch 'main' into test-suite-audit-followup 2026-07-04 22:40:47 +02:00
Federico Jaramillo Martinez eb1727688f fix: preserve legacy federated session actions 2026-07-04 22:39:55 +02:00
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