Commit Graph
356 Commits
Author SHA1 Message Date
Federico Jaramillo Martinez 55bc567b7b refactor(test): add shared template-inspection test helper (Slice A)
Consolidate the duplicated, per-file Lit TemplateResult inspection helper
cluster into one shared, strictly-typed, type-guarded seam at
src/client/src/templateInspection.testSupport.ts, documented as the
testing-guide escape hatch. Migrate PiWebApp.clearQueue.test.ts to it as a
proof and delete its local copies. Tag not-yet-consumed public entry points
with @public so knip does not flag them until Slice B adds consumers.

Relay: testing-skill-compliance leg 1 (Finding 1).
2026-07-17 20:23:21 +02:00
Federico Jaramillo Martinez aedcbf885e feat(sessions): surface live session startup warnings in the web UI
Show a pinned banner at the top of the session view with resource and
runtime diagnostics (skills, prompts, themes, extension load errors) plus
the Anthropic subscription-auth billing notice, recomputed live from the
current runtime so they stay accurate across browser reloads.

Warnings carry an optional dismiss capability; the Anthropic notice is
dismissable and durably suppressed through pi's own anthropicExtraUsage
warning setting. Also fixes the testing-guide skill frontmatter so it
loads.
2026-07-17 19:16:58 +02:00
Federico Jaramillo Martinez 2b17145291 feat(sessions): stream in-flight partial when joining a mid-turn session
Seed the in-flight partial assistant message (text, thinking, and
in-progress tool calls) when opening or reconnecting to a session that is
mid-stream, then continue streaming live deltas on top of it. Replaces the
blocking "Catching up..." placeholder and the end-of-turn transcript reload.

Server stamps every per-session UI event with a monotonic seq at the
SessionEventHub publish choke point and exposes
GET /sessions/:sessionId/stream-snapshot returning { seq, partial }. The
client fetches the snapshot on join, seeds the normalized partial into the
in-memory transcript (never the history cache), and applies buffered/live
events using the seq watermark for exactly-once delivery.

The snapshot is a progressive enhancement: a 404 from an older remote
pi-web or a not-yet-restarted session daemon falls back to an empty seed
(seq 0, drops nothing), so sessions still open and stream normally. The
stream-snapshot route is registered in the federation allowlist for
remote-machine proxying.
2026-07-17 14:49:56 +02:00
Federico Jaramillo Martinez ae9eaf3082 Match image zoom close button to app button styling 2026-07-17 11:15:05 +02:00
Federico Jaramillo Martinez 6cd666f9b8 Add click-to-enlarge modal viewer for chat images 2026-07-17 09:52:54 +02:00
Federico Jaramillo Martinez cc4443ea55 Merge pull request #60 from jmfederico/fix/pr-53-live-tool-result-images
fix: show live tool result images outside event groups
2026-07-14 23:36:54 +02:00
Federico Jaramillo Martinez 58aa9b8955 fix: use standard chat styling for tool images 2026-07-14 23:28:06 +02:00
Federico Jaramillo Martinez 5fa52a9fba fix: present tool images as labeled output 2026-07-14 22:55:07 +02:00
Federico Jaramillo Martinez b8c12caa9e test: isolate chat image rendering coverage 2026-07-14 09:02:46 +02:00
Federico Jaramillo Martinez c22a2feff6 fix: keep late-loading chat images pinned 2026-07-14 08:58:00 +02:00
Federico Jaramillo Martinez 5ce76a12e2 fix: show live tool result images 2026-07-14 08:48:48 +02:00
Federico Jaramillo Martinez ca07e48c0a docs: clarify Pi-compatible agent profiles 2026-07-14 00:30:09 +02:00
Federico Jaramillo Martinez a1f749cdb6 feat: add server session queue clearing 2026-07-14 00:24:14 +02:00
Federico Jaramillo Martinez 8b5ccc2fd9 feat: apply agent profile settings atomically 2026-07-14 00:11:39 +02:00
Federico Jaramillo Martinez cfa9f5a2fa Merge remote-tracking branch 'origin/main' into pr-36-generic-agent-config
# Conflicts:
#	docs/config.html
#	docs/config.md
#	src/cli.test.ts
#	src/cli.ts
#	src/client/src/components/settings/SettingsSessiondPanel.ts
#	src/client/src/components/settings/settingsConfigDraft.test.ts
#	src/client/src/components/settings/settingsConfigDraft.ts
#	src/server/app.test.ts
#	src/server/app.ts
#	src/server/configRoutes.test.ts
#	src/server/configRoutes.ts
#	src/server/piWebPluginService.test.ts
#	src/server/piWebPluginService.ts
#	src/server/piWebStatus.test.ts
#	src/server/piWebStatus.ts
#	src/server/piWebStatusCache.ts
#	src/server/sessions/authService.test.ts
#	src/server/sessions/piSessionService.ts
#	src/server/sessions/sessionRoutes.test.ts
2026-07-13 20:30:08 +02:00
Phát kana f181c47191 fix: show tool result images outside event groups 2026-07-13 22:48:28 +07:00
Federico Jaramillo Martinez c64a01da63 fix(client): enforce application path conventions 2026-07-13 14:29:50 +02:00
Federico Jaramillo Martinez 62ba7f394a test(client): cover resolved update check URLs 2026-07-12 23:30:05 +02:00
Federico Jaramillo Martinez ceeb0d413d fix(plugins): make manifests deployment relative 2026-07-12 23:28:03 +02:00
Federico Jaramillo Martinez 4b2882bb5c fix(client): make build assets deployment relative 2026-07-12 23:27:43 +02:00
Federico Jaramillo Martinez c661fad7e3 fix(client): resolve URLs from application base 2026-07-12 23:27:43 +02:00
chenyimeng 27af5a70ad feat: support deploying pi-web under an arbitrary base path
Make all browser-facing API paths and WebSocket URLs relative so that
vite's <base href> can resolve them correctly when pi-web is served
from a subpath (e.g. /ai or /test/ai).

Also introduce PI_WEB_BASE_PATH so the server can generate plugin
module URLs that include the base path.
2026-07-12 23:27:43 +02:00
Federico Jaramillo Martinez d72b14f40a feat: add manual PI WEB update checks 2026-07-12 23:21:43 +02:00
Federico Jaramillo Martinez 338faf4b81 perf: speed up chat loading and resume 2026-07-12 09:22:19 +02:00
Federico Jaramillo Martinez 02f34c495c feat(terminal): add touch-friendly copy mode 2026-07-11 22:50:25 +02:00
Federico Jaramillo Martinez bc6718a7e2 fix: stabilize mobile message headers 2026-07-11 16:26:41 +02: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 d6cfffd70d fix: support clipboard copy on private HTTP origins 2026-07-08 21:02:21 +00:00
Federico Jaramillo Martinez b0d4942b8d test(client): cover workspace upload helper options 2026-07-05 01:00:25 +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 afc0a21bfc test(client): cover machine add workflow 2026-07-05 00:06:18 +02:00
Federico Jaramillo Martinez 04f9d0e764 test(client): split session controller specs 2026-07-04 23:48:12 +02:00
Federico Jaramillo Martinez 45bcc63544 test(settings): split settings dialog specs 2026-07-04 23:35:11 +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 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 1564f1cfc5 test: audit existing suite 2026-07-03 09:48:20 +02: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
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