pi-mono/apps/p2/test/p2
Mario Zechner 20d86c3657 feat(p2): Chord v2 cleanup pass
p2 rewritten by the Chord v2 authoring rules (decision "App authoring rules confirmed
by the p2 audit"), in four parts merged together:
- core: session lifecycle (relocate, clone, fork, archive) and search rebuild are
  persisted jobs on a new server store; Sessions v6 with client-chosen ids and visible
  operations; Retry answers with the worker's real outcome; workers push branch,
  subagent and status state to the server; roots take the method's ctx.
- services: models, envs, ports, login, mcp, logs, sharing and voice follow external
  state (self.follow, followNative) instead of copy loops; methods answer after their
  state commits; presence from host.references.
- chat: chat mode, artifacts and prompt resources follow Durable and native state;
  shell commands are Chord jobs (shellId is the requestId); status pushed before
  send and stop answer; race-free draft claim.
- ui: optimistic updates on web (useOptimistic) and terminal (TuiScope.optimistic,
  extended in Chord with a reducer and a pending flag), pending states for long work,
  visible rollback, load waterfalls removed; merged with the one composer and
  immediate first send (ccff9876e) and the folder + button (5a31a6d5f).
docs/optimistic-ui.md describes the pattern.
2026-11-05 18:22:13 +00:00
..
agent.test.ts feat(p2): subagent messages start with a <sender kind="subagent"> block instead of a [subagent …] line 2026-11-05 07:23:22 +00:00
archive.test.ts fix(p2): archiving a viewed session shows no error and starts no refused worker 2026-11-04 13:19:01 +01:00
artifacts.test.ts feat(p2): render artifacts inline at the tool call site 2026-11-04 21:13:26 +01:00
browser.ts feat(p2): render artifacts inline at the tool call site 2026-11-04 21:13:26 +01:00
bundles.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
chat-contracts.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
chat-mode-fixture.test.ts feat(p2): <sender> block for the model, peer messages as p2.peer-message entries, legacy speaker reader removed 2026-11-04 22:07:38 +00:00
chat-mode-host.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
chat-mode-reload.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
chat-mode-ui.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
chat-mode.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
codemode-card.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
codemode-plugin.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
codemode-setting.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
codemode.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
completion.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
context-files.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
contract-versions.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
conversation-stats.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
conversations-restart.test.ts feat(p2): <sender> block for the model, peer messages as p2.peer-message entries, legacy speaker reader removed 2026-11-04 22:07:38 +00:00
conversations.test.ts feat(p2): tools declare who may call them and where, turn origin from the run's inputs, agents give their own tools 2026-11-04 23:28:14 +00:00
dequeue.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
dev-modules.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
dev-tools.test.ts feat(p2): tools declare who may call them and where, turn origin from the run's inputs, agents give their own tools 2026-11-04 23:28:14 +00:00
dev.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
devices.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
drafts.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
durable-registry.test.ts feat(p2): terminal tool for the agent, tmux-style argv, code mode only 2026-11-04 21:56:56 +01:00
envs.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
failed-turns.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
fetch.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
file-index-listing.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
files.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
foreign-requests.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
fork-clone.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
ghostty.test.ts fix(p2): touch selection, Copy and Paste in the web terminal 2026-11-05 19:11:58 +01:00
harness-cwd.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
health.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
helpers.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
history-tools.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
history.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
image-size.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
inputs.test.ts fix(p2): a report's origin scans past mid-run error answers and compaction markers 2026-11-05 07:38:16 +00:00
lifecycle.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
locations.test.ts feat(p2): tools declare who may call them and where, turn origin from the run's inputs, agents give their own tools 2026-11-04 23:28:14 +00:00
login-owners.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
login.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
logs.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
loopback-join.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
m1.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
mcp-environments.test.ts feat(p2): MCP servers on the host, on environments and from projects 2026-11-03 16:48:38 +01:00
mcp-instances.test.ts feat(p2): MCP OAuth sign-in, MCP sheet and TUI command, footer menu 2026-11-04 18:34:13 +01:00
mcp-leases.test.ts feat(p2): MCP servers on the host, on environments and from projects 2026-11-03 16:48:38 +01:00
mcp-project.test.ts feat(p2): MCP servers on the host, on environments and from projects 2026-11-03 16:48:38 +01:00
mcp-sign-in.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
mcp-tools.test.ts feat(p2): MCP OAuth sign-in, MCP sheet and TUI command, footer menu 2026-11-04 18:34:13 +01:00
mcp-windows-command.test.ts feat(p2): MCP servers on the host, on environments and from projects 2026-11-03 16:48:38 +01:00
mcp-worker.test.ts feat(p2): expose MCP tools to code mode only, as pi does 2026-11-03 18:29:00 +01:00
mcp.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
nested-calls.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
outbox.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
plugin-layout.test.ts feat(p2): MCP servers on the host, on environments and from projects 2026-11-03 16:48:38 +01:00
plugins.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
ports.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
powershell.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
prompt-templates.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
prompt.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
proxy-marker.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
radius.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
rebuild-index.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
relocate-worker.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
relocate.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
remote-env-keys.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
remote-login.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
search.test.ts feat(p2): <sender> block for the model, peer messages as p2.peer-message entries, legacy speaker reader removed 2026-11-04 22:07:38 +00:00
send-file.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
session-operations.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
session-start.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
sharing-db.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
sharing.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
shell.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
smoke.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
socket-limits.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
subagent-cwd.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
subagent-reporter.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
subagent-team.test.ts feat(p2): subagent messages start with a <sender kind="subagent"> block instead of a [subagent …] line 2026-11-05 07:23:22 +00:00
subagents.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
terminal-agent-host.test.ts feat(p2): terminal tool for the agent, tmux-style argv, code mode only 2026-11-04 21:56:56 +01:00
terminal-clipboard.test.ts fix(p2): touch selection, Copy and Paste in the web terminal 2026-11-05 19:11:58 +01:00
terminal-commands.test.ts feat(p2): terminal tool for the agent, tmux-style argv, code mode only 2026-11-04 21:56:56 +01:00
terminal-daemon.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
terminal-input.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
terminal-keys.test.ts feat(p2): terminal tool for the agent, tmux-style argv, code mode only 2026-11-04 21:56:56 +01:00
terminal-ping.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
terminal-plain.test.ts feat(p2): terminal tool for the agent, tmux-style argv, code mode only 2026-11-04 21:56:56 +01:00
terminal-reconnect.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
terminal-service.test.ts fix(p2): archiving closes an outdated terminal host's terminals through the viewer protocol 2026-11-04 21:56:56 +01:00
terminal-tool-unit.test.ts fix(p2): guest turns may use the terminal tool again, as decided (reverts 2b78884e3) 2026-11-05 00:05:40 +00:00
terminal-tool.test.ts feat(p2): subagent messages start with a <sender kind="subagent"> block instead of a [subagent …] line 2026-11-05 07:23:22 +00:00
terminals-host.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
terminals.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
test-host.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
titles.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tool-access.test.ts feat(p2): tools declare who may call them and where, turn origin from the run's inputs, agents give their own tools 2026-11-04 23:28:14 +00:00
tree.test.ts feat(p2): subagent messages start with a <sender kind="subagent"> block instead of a [subagent …] line 2026-11-05 07:23:22 +00:00
tui-actions.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tui-attach.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tui-commands.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tui-fixture.ts feat(p2): /tree, branches of the main conversation as Durable forks 2026-11-04 13:40:36 +01:00
tui-fork.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
tui-grants.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tui-guest.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tui-isolation.test.ts fix(p2): report TUI sandbox crashes with their stack 2026-11-05 00:35:13 +01:00
tui-launcher.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tui-location.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
tui-login.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tui-mermaid.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tui-mouse.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tui-optimistic.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
tui-p4.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
tui-p11.test.ts feat(p2): render artifacts inline at the tool call site 2026-11-04 21:13:26 +01:00
tui-quiet-tools.test.ts feat(p2): quiet-tools plugin and plugin settings in the TUI 2026-11-04 14:55:06 +01:00
tui-render.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
tui-settings.test.ts feat(p2): quiet-tools plugin and plugin settings in the TUI 2026-11-04 14:55:06 +01:00
tui-shell.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tui-theme.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
tui-transcript.test.ts fix(p2): TUI transcript render survives a sync from its own callbacks 2026-11-05 00:35:13 +01:00
tui-tree.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
tui.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
ui-agents.test.ts feat(p2): subagent messages start with a <sender kind="subagent"> block instead of a [subagent …] line 2026-11-05 07:23:22 +00:00
ui-chat-controls.test.ts feat(p2): a new session's first message sends at once; one composer for every screen 2026-11-05 12:52:52 +00:00
ui-dev-network.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-drawer.test.ts feat(p2): add a + button to sidebar folders to start a new session there 2026-11-05 18:21:02 +01:00
ui-file-completion.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-inline-artifacts.test.ts feat(p2): render artifacts inline at the tool call site 2026-11-04 21:13:26 +01:00
ui-logs.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-mobile-fixes.test.ts fix(p2): archiving a viewed session shows no error and starts no refused worker 2026-11-04 13:19:01 +01:00
ui-optimistic.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
ui-outbox.test.ts feat(p2): a new session's first message sends at once; one composer for every screen 2026-11-05 12:52:52 +00:00
ui-owner-notices.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-parity.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-reconnect.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-resume.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-service-worker.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-sheet-swipe.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-sheets.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
ui-tree.test.ts feat(p2): sidebar branch rows behind the session's expand control 2026-11-04 16:15:33 +01:00
ui-view-window.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-viewers-search.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-virtual-scroll.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
ui-workspace.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
unread.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
v1-data.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
validation.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
view-window.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
virtual-list.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
voice-service.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
voice-ui.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
voice.test.ts feat(p2): Chord v2 cleanup pass 2026-11-05 18:22:13 +00:00
web-protocol-mismatch.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
web-reconnect.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
web.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
worker-base.test.ts fix(p2): session workers load OAuth flows and Bedrock from the worker base 2026-11-05 08:49:18 +01:00
worker-oauth.test.ts fix(p2): session workers load OAuth flows and Bedrock from the worker base 2026-11-05 08:49:18 +01:00
workflows.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
workspace-environment.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00
workspace.test.ts feat: add apps/p2 (imported from pi-private at 7dadff697) 2026-11-03 13:39:06 +00:00