@pi-in-go/pigpen-acp 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CREDITS.md +23 -0
- package/LICENSE +22 -0
- package/README.md +110 -0
- package/extensions/acp/cmd/pig-acp/e2e_llm_test.go +168 -0
- package/extensions/acp/cmd/pig-acp/e2e_test.go +541 -0
- package/extensions/acp/cmd/pig-acp/go.mod +6 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/agent.go +784 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/agent_builtin_test.go +536 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/agent_commands_test.go +199 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/agent_config_test.go +530 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/agent_helpers_test.go +215 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/agent_load_test.go +333 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/agent_prompt.go +289 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/agent_session_test.go +429 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/auth.go +61 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/bench_test.go +47 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/helpers_test.go +421 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/main_test.go +28 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/mutation_extra_test.go +142 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/paths.go +77 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/pisessions.go +317 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/protocol.go +188 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/server.go +218 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/server_test.go +386 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/session.go +1068 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/session_diff_test.go +183 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/session_events_test.go +443 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/session_extra_test.go +547 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/session_usage_test.go +198 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/settings.go +79 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/slash.go +278 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/slash_test.go +128 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/startup.go +156 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/store.go +118 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/store_paths_test.go +466 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/translate.go +352 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/translate_test.go +105 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/twin_test.go +28 -0
- package/extensions/acp/cmd/pig-acp/internal/acp/types.go +202 -0
- package/extensions/acp/cmd/pig-acp/internal/jsonrpc/bench_test.go +24 -0
- package/extensions/acp/cmd/pig-acp/internal/jsonrpc/jsonrpc.go +302 -0
- package/extensions/acp/cmd/pig-acp/internal/jsonrpc/jsonrpc_test.go +320 -0
- package/extensions/acp/cmd/pig-acp/internal/jsonrpc/twin_test.go +28 -0
- package/extensions/acp/cmd/pig-acp/internal/pirpc/kill_unix.go +19 -0
- package/extensions/acp/cmd/pig-acp/internal/pirpc/kill_windows.go +11 -0
- package/extensions/acp/cmd/pig-acp/internal/pirpc/process.go +530 -0
- package/extensions/acp/cmd/pig-acp/internal/pirpc/process_test.go +355 -0
- package/extensions/acp/cmd/pig-acp/internal/pirpc/twin_test.go +28 -0
- package/extensions/acp/cmd/pig-acp/main.go +177 -0
- package/extensions/acp/cmd/pig-acp/main_test.go +213 -0
- package/extensions/acp/cmd/pig-acp/sigpipe_unix.go +10 -0
- package/extensions/acp/cmd/pig-acp/sigpipe_windows.go +5 -0
- package/extensions/acp/cmd/pig-acp/testdata/ask/extension.go +28 -0
- package/extensions/acp/cmd/pig-acp/testdata/ask/go.mod +7 -0
- package/extensions/acp/cmd/pig-acp/testdata/ask/go.sum +2 -0
- package/extensions/acp/cmd/pig-acp/testdata/gate/extension.go +37 -0
- package/extensions/acp/cmd/pig-acp/testdata/gate/go.mod +7 -0
- package/extensions/acp/cmd/pig-acp/testdata/gate/go.sum +2 -0
- package/extensions/acp/cmd/pig-acp/twin_test.go +28 -0
- package/extensions/acp/extension.go +63 -0
- package/extensions/acp/extension_test.go +111 -0
- package/extensions/acp/fakehost_test.go +548 -0
- package/extensions/acp/go.mod +6 -0
- package/extensions/acp/go.sum +2 -0
- package/package.json +41 -0
- package/port/PORT.md +147 -0
- package/port/interop/package-lock.json +89 -0
- package/port/interop/package.json +13 -0
- package/port/interop/run.mjs +229 -0
- package/port/mutate.mjs +110 -0
- package/port/mutation-results.txt +107 -0
- package/port/mutations.json +748 -0
- package/port/oracle/pi-acp/LICENSE +21 -0
- package/port/oracle/pi-acp/README.md +209 -0
- package/port/oracle/pi-acp/package.json +65 -0
- package/port/oracle/pi-acp/src/acp/agent.ts +1661 -0
- package/port/oracle/pi-acp/src/acp/auth-required.ts +37 -0
- package/port/oracle/pi-acp/src/acp/auth.ts +59 -0
- package/port/oracle/pi-acp/src/acp/paths.ts +15 -0
- package/port/oracle/pi-acp/src/acp/pi-commands.ts +59 -0
- package/port/oracle/pi-acp/src/acp/pi-sessions.ts +333 -0
- package/port/oracle/pi-acp/src/acp/pi-settings.ts +75 -0
- package/port/oracle/pi-acp/src/acp/session-store.ts +68 -0
- package/port/oracle/pi-acp/src/acp/session.ts +1078 -0
- package/port/oracle/pi-acp/src/acp/slash-commands.ts +197 -0
- package/port/oracle/pi-acp/src/acp/translate/bash.ts +100 -0
- package/port/oracle/pi-acp/src/acp/translate/pi-messages.ts +17 -0
- package/port/oracle/pi-acp/src/acp/translate/pi-tools.ts +51 -0
- package/port/oracle/pi-acp/src/acp/translate/prompt.ts +71 -0
- package/port/oracle/pi-acp/src/index.ts +82 -0
- package/port/oracle/pi-acp/src/pi-rpc/command.ts +16 -0
- package/port/oracle/pi-acp/src/pi-rpc/process.ts +432 -0
- package/port/oracle/pi-acp/test/component/agent-steering-followup-modes.test.ts +143 -0
- package/port/oracle/pi-acp/test/component/session-diff.test.ts +214 -0
- package/port/oracle/pi-acp/test/component/session-events.test.ts +1102 -0
- package/port/oracle/pi-acp/test/component/session-list-and-load.test.ts +129 -0
- package/port/oracle/pi-acp/test/component/session-list-custom-session-dir.test.ts +52 -0
- package/port/oracle/pi-acp/test/component/session-list-scoped.test.ts +76 -0
- package/port/oracle/pi-acp/test/component/session-load-toolresult.test.ts +68 -0
- package/port/oracle/pi-acp/test/component/session-queue-cancel.test.ts +43 -0
- package/port/oracle/pi-acp/test/component/session-slash-commands.test.ts +37 -0
- package/port/oracle/pi-acp/test/component/session-thinking-modes.test.ts +22 -0
- package/port/oracle/pi-acp/test/component/session-title-long-session.test.ts +56 -0
- package/port/oracle/pi-acp/test/component/session-updatedAt-message-only.test.ts +57 -0
- package/port/oracle/pi-acp/test/helpers/fakes.ts +87 -0
- package/port/oracle/pi-acp/test/unit/auth-methods-terminal-auth-meta.test.ts +22 -0
- package/port/oracle/pi-acp/test/unit/builtin-commands.test.ts +60 -0
- package/port/oracle/pi-acp/test/unit/context-usage.test.ts +204 -0
- package/port/oracle/pi-acp/test/unit/merge-commands.test.ts +19 -0
- package/port/oracle/pi-acp/test/unit/model-thinking-levels.test.ts +268 -0
- package/port/oracle/pi-acp/test/unit/new-session-auth-required-when-no-models.test.ts +51 -0
- package/port/oracle/pi-acp/test/unit/new-session-pi-not-found.test.ts +26 -0
- package/port/oracle/pi-acp/test/unit/new-session-runtime-startup-errors.test.ts +148 -0
- package/port/oracle/pi-acp/test/unit/pi-command.test.ts +44 -0
- package/port/oracle/pi-acp/test/unit/pi-commands.test.ts +32 -0
- package/port/oracle/pi-acp/test/unit/pi-enable-embed-context-flag.test.ts +35 -0
- package/port/oracle/pi-acp/test/unit/pi-messages.test.ts +29 -0
- package/port/oracle/pi-acp/test/unit/pi-rpc-request-timeout.test.ts +137 -0
- package/port/oracle/pi-acp/test/unit/pi-rpc-session-path.test.ts +93 -0
- package/port/oracle/pi-acp/test/unit/pi-tools.test.ts +40 -0
- package/port/oracle/pi-acp/test/unit/prompt-to-pi-message.test.ts +74 -0
- package/port/oracle/pi-acp/test/unit/session-config-options.test.ts +217 -0
- package/port/oracle/pi-acp/test/unit/session-delete.test.ts +170 -0
- package/port/oracle/pi-acp/test/unit/session-restore.test.ts +239 -0
- package/port/oracle/pi-acp/test/unit/slash-commands.test.ts +36 -0
- package/port/oracle/pi-acp/test/unit/startup-info-env.test.ts +84 -0
- package/port/oracle/pi-acp/test/unit/startup-info-load-session.test.ts +53 -0
- package/port/oracle/pi-acp/test/unit/startup-info-project-packages.test.ts +74 -0
- package/port/oracle/pi-acp/test/unit/stdout-destroyed-does-not-crash.test.ts +32 -0
- package/port/oracle/pi-acp/test/unit/thinking-level-rpc.test.ts +43 -0
- package/port/schema/LICENSE +191 -0
- package/port/schema/schema.json +8015 -0
- package/port/upstream-tests.json +201 -0
- package/provenance.json +28 -0
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
{
|
|
2
|
+
"component/agent-steering-followup-modes": [
|
|
3
|
+
"PiAcpAgent: /steering reports current steeringMode",
|
|
4
|
+
"PiAcpAgent: /steering sets steering mode",
|
|
5
|
+
"PiAcpAgent: /steering rejects invalid value",
|
|
6
|
+
"PiAcpAgent: /follow-up reports current followUpMode",
|
|
7
|
+
"PiAcpAgent: /follow-up sets follow-up mode",
|
|
8
|
+
"PiAcpAgent: /follow-up rejects invalid value"
|
|
9
|
+
],
|
|
10
|
+
"component/session-diff": [
|
|
11
|
+
"PiAcpSession: emits ACP diff content for edit tool from actual before/after file contents",
|
|
12
|
+
"PiAcpSession: does not turn requested edit args into finalized ACP diffs at tool start",
|
|
13
|
+
"PiAcpSession: edit diff uses realized fuzzy-match file contents instead of requested args",
|
|
14
|
+
"PiAcpSession: emits write diff content from actual before/after file contents on completion",
|
|
15
|
+
"PiAcpSession: emits write diff content for new files on completion"
|
|
16
|
+
],
|
|
17
|
+
"component/session-events": [
|
|
18
|
+
"PiAcpSession: emits agent_message_chunk for text_delta",
|
|
19
|
+
"PiAcpSession: emits agent_thought_chunk for thinking_delta",
|
|
20
|
+
"PiAcpSession: emits tool_call + tool_call_update + completes",
|
|
21
|
+
"PiAcpSession: emits tool locations from pi path args",
|
|
22
|
+
"PiAcpSession: handles extension select via ACP permission request",
|
|
23
|
+
"PiAcpSession: handles extension confirm via ACP permission request",
|
|
24
|
+
"PiAcpSession: sends cancelled response when ACP confirm is cancelled",
|
|
25
|
+
"PiAcpSession: cancels unsupported input and editor extension UI requests with visible fallback",
|
|
26
|
+
"PiAcpSession: emits agent_message_chunk for auto_retry_start with attempt/maxAttempts and rounded delay",
|
|
27
|
+
"PiAcpSession: formats a positive sub-second auto_retry_start delay as waiting 1s",
|
|
28
|
+
"PiAcpSession: falls back to a generic retry message when auto_retry_start fields are missing or malformed",
|
|
29
|
+
"PiAcpSession: omits raw errorMessage content from surfaced auto_retry_start status text",
|
|
30
|
+
"PiAcpSession: emits agent_message_chunk for auto_retry_end",
|
|
31
|
+
"PiAcpSession: emits agent_message_chunk for auto_compaction_start",
|
|
32
|
+
"PiAcpSession: emits agent_message_chunk for auto_compaction_end",
|
|
33
|
+
"PiAcpSession: preserves ordering when auto_retry_start is interleaved with text_delta events",
|
|
34
|
+
"PiAcpSession: emits streamed tool locations from pi path args",
|
|
35
|
+
"PiAcpSession: emits edit tool line when oldText matches uniquely",
|
|
36
|
+
"PiAcpSession: emits edit tool line from edits array when oldText matches uniquely",
|
|
37
|
+
"PiAcpSession: emits edit tool line from stringified edits array",
|
|
38
|
+
"PiAcpSession: omits edit tool line when oldText matches multiple times",
|
|
39
|
+
"PiAcpSession: prompt stays open through retry runs until agent_settled",
|
|
40
|
+
"PiAcpSession: does not re-emit startup info on first prompt after it was already sent",
|
|
41
|
+
"PiAcpSession: cancel flips stopReason to cancelled",
|
|
42
|
+
"PiAcpSession: queues concurrent prompt and starts it after agent_settled",
|
|
43
|
+
"PiAcpSession: cancel clears queued prompts",
|
|
44
|
+
"PiAcpSession: expands /command before sending to pi",
|
|
45
|
+
"PiAcpSession: tags extension notify chunks with severity in _meta",
|
|
46
|
+
"PiAcpSession: defaults notify severity to info when notifyType is absent",
|
|
47
|
+
"PiAcpSession: emits usage_update from contextUsage before resolving prompt on agent_settled",
|
|
48
|
+
"PiAcpSession: skips usage_update when contextUsage tokens are null",
|
|
49
|
+
"PiAcpSession: skips usage_update for invalid contextUsage values",
|
|
50
|
+
"PiAcpSession: get_session_stats rejection does not break the prompt",
|
|
51
|
+
"PiAcpSession: get_session_stats timeout does not block the prompt",
|
|
52
|
+
"PiAcpSession: cancelled turn still reports cancelled after usage publish"
|
|
53
|
+
],
|
|
54
|
+
"component/session-list-and-load": [
|
|
55
|
+
"PiAcpAgent: listSessions lists pi sessions and loadSession replays history"
|
|
56
|
+
],
|
|
57
|
+
"component/session-list-custom-session-dir": [
|
|
58
|
+
"listPiSessions: respects sessionDir from pi settings.json"
|
|
59
|
+
],
|
|
60
|
+
"component/session-list-scoped": [
|
|
61
|
+
"PiAcpAgent: listSessions defaults to lastSessionCwd when cwd param is omitted"
|
|
62
|
+
],
|
|
63
|
+
"component/session-load-toolresult": [
|
|
64
|
+
"PiAcpAgent: loadSession replays toolResult as tool_call + tool_call_update"
|
|
65
|
+
],
|
|
66
|
+
"component/session-queue-cancel": [
|
|
67
|
+
"PiAcpSession: cancel clears queued prompts"
|
|
68
|
+
],
|
|
69
|
+
"component/session-slash-commands": [
|
|
70
|
+
"PiAcpSession: expands /command before sending to pi"
|
|
71
|
+
],
|
|
72
|
+
"component/session-thinking-modes": [
|
|
73
|
+
"PiAcpAgent: setSessionMode maps to pi setThinkingLevel + emits current_mode_update"
|
|
74
|
+
],
|
|
75
|
+
"component/session-title-long-session": [
|
|
76
|
+
"listPiSessions: finds session_info.name even when it is outside the tail window"
|
|
77
|
+
],
|
|
78
|
+
"component/session-updatedAt-message-only": [
|
|
79
|
+
"listPiSessions: updatedAt prefers last message timestamp over later non-message entries"
|
|
80
|
+
],
|
|
81
|
+
"unit/auth-methods-terminal-auth-meta": [
|
|
82
|
+
"getAuthMethods: includes Zed terminal-auth metadata when enabled",
|
|
83
|
+
"getAuthMethods: omits Zed terminal-auth metadata when disabled"
|
|
84
|
+
],
|
|
85
|
+
"unit/builtin-commands": [
|
|
86
|
+
"PiAcpAgent: /steering is handled adapter-side",
|
|
87
|
+
"PiAcpAgent: /name sets session display name adapter-side"
|
|
88
|
+
],
|
|
89
|
+
"unit/context-usage": [
|
|
90
|
+
"PiAcpSession: context usage request specifies the auxiliary timeout",
|
|
91
|
+
"PiAcpAgent: newSession publishes context usage only after the response is returned",
|
|
92
|
+
"PiAcpAgent: newSession tolerates a failing get_session_stats",
|
|
93
|
+
"PiAcpAgent: switching the model config option refreshes context usage",
|
|
94
|
+
"PiAcpAgent: unstable_setSessionModel refreshes context usage",
|
|
95
|
+
"PiAcpAgent: switching the thinking level does not publish context usage"
|
|
96
|
+
],
|
|
97
|
+
"unit/merge-commands": [
|
|
98
|
+
"mergeCommands: preserves order and de-dupes (first wins)"
|
|
99
|
+
],
|
|
100
|
+
"unit/model-thinking-levels": [
|
|
101
|
+
"${legacy ? 'legacy' : 'config'} reasoning setter reports actual max for ${requested}",
|
|
102
|
+
"${legacy ? 'legacy' : 'config'} reasoning setter reports an opaque applied level",
|
|
103
|
+
"${legacy ? 'legacy' : 'config'} model setter refreshes model-specific levels and current mode",
|
|
104
|
+
"${legacy ? 'legacy' : 'config'} reasoning setter emits no success on ${failure} read failure",
|
|
105
|
+
"invalid configuration and legacy mode requests do not mutate Pi",
|
|
106
|
+
"${load ? 'load' : 'new'} session advertises exact ${levels} levels",
|
|
107
|
+
"load configuration ${failure} failure closes restored child and preserves history for retry"
|
|
108
|
+
],
|
|
109
|
+
"unit/new-session-auth-required-when-no-models": [
|
|
110
|
+
"PiAcpAgent: newSession throws AUTH_REQUIRED when pi reports zero available models"
|
|
111
|
+
],
|
|
112
|
+
"unit/new-session-pi-not-found": [
|
|
113
|
+
"PiAcpAgent: newSession returns a helpful Internal error when pi is not installed"
|
|
114
|
+
],
|
|
115
|
+
"unit/new-session-runtime-startup-errors": [
|
|
116
|
+
"PiAcpAgent: newSession returns AUTH_REQUIRED when pi reports an auth error after spawn",
|
|
117
|
+
"PiAcpAgent: newSession returns Internal error on non-auth model probe failures after spawn",
|
|
118
|
+
"PiAcpAgent: cleans up only the new session after ${failure} configuration failure"
|
|
119
|
+
],
|
|
120
|
+
"unit/pi-command": [
|
|
121
|
+
"defaultPiCommand: uses pi.cmd on Windows and pi elsewhere",
|
|
122
|
+
"shouldUseShellForPiCommand: enables shell for Windows cmd launchers only",
|
|
123
|
+
"shouldUseShellForPiCommand: keeps shell disabled on non-Windows"
|
|
124
|
+
],
|
|
125
|
+
"unit/pi-commands": [
|
|
126
|
+
"toAvailableCommandsFromPiGetCommands: hides extension commands by default and filters skill commands"
|
|
127
|
+
],
|
|
128
|
+
"unit/pi-enable-embed-context-flag": [
|
|
129
|
+
"PI_ACP_ENABLE_EMBEDDED_CONTEXT: defaults embeddedContext to false when undefined",
|
|
130
|
+
"PI_ACP_ENABLE_EMBEDDED_CONTEXT: 'false' keeps embeddedContext disabled",
|
|
131
|
+
"PI_ACP_ENABLE_EMBEDDED_CONTEXT: 'true' enables embeddedContext"
|
|
132
|
+
],
|
|
133
|
+
"unit/pi-messages": [
|
|
134
|
+
"normalizePiMessageText: supports string",
|
|
135
|
+
"normalizePiMessageText: joins text blocks",
|
|
136
|
+
"normalizePiAssistantText: joins only text blocks"
|
|
137
|
+
],
|
|
138
|
+
"unit/pi-rpc-request-timeout": [
|
|
139
|
+
"PiRpcProcess: auxiliary context usage has a one-second timeout",
|
|
140
|
+
"PiRpcProcess: getSessionStats without a timeout accepts a response after one second",
|
|
141
|
+
"PiRpcProcess: request timeout rejects, clears pending, and swallows the late response",
|
|
142
|
+
"PiRpcProcess: response before the timeout resolves and clears pending",
|
|
143
|
+
"PiRpcProcess: responses with unknown ids are dropped while real events are delivered"
|
|
144
|
+
],
|
|
145
|
+
"unit/pi-rpc-session-path": [
|
|
146
|
+
"PiRpcProcess passes distinct session paths intact to the pi launcher",
|
|
147
|
+
"PiRpcProcess keeps a simulated Windows cmd session path intact"
|
|
148
|
+
],
|
|
149
|
+
"unit/pi-tools": [
|
|
150
|
+
"toolResultToText: extracts text from content blocks",
|
|
151
|
+
"toolResultToText: prefers details.diff when present",
|
|
152
|
+
"toolResultToText: falls back to JSON",
|
|
153
|
+
"toolResultToText: extracts bash stdout/stderr from details"
|
|
154
|
+
],
|
|
155
|
+
"unit/prompt-to-pi-message": [
|
|
156
|
+
"promptToPiMessage: concatenates text and resource links",
|
|
157
|
+
"promptToPiMessage: includes embedded resource text as marker",
|
|
158
|
+
"promptToPiMessage: includes embedded resource blob as marker",
|
|
159
|
+
"promptToPiMessage: includes audio as marker",
|
|
160
|
+
"promptToPiMessage: maps image to pi image content"
|
|
161
|
+
],
|
|
162
|
+
"unit/session-config-options": [
|
|
163
|
+
"PiAcpAgent: newSession returns configOptions for model and thinking selectors",
|
|
164
|
+
"PiAcpAgent: setSessionConfigOption maps model changes to pi and emits config_option_update",
|
|
165
|
+
"PiAcpAgent: setSessionConfigOption maps thought level changes to pi and emits sync updates"
|
|
166
|
+
],
|
|
167
|
+
"unit/session-delete": [
|
|
168
|
+
"PiAcpAgent: deleteSession removes stored session and session file",
|
|
169
|
+
"PiAcpAgent: deleteSession finds session via pi discovery when SessionStore misses",
|
|
170
|
+
"PiAcpAgent: deleteSession succeeds idempotently for unknown sessionId",
|
|
171
|
+
"PiAcpAgent: deleteSession survives missing session file"
|
|
172
|
+
],
|
|
173
|
+
"unit/session-restore": [
|
|
174
|
+
"PiAcpAgent: prompt auto-restores a missing session from SessionStore",
|
|
175
|
+
"PiAcpAgent: setSessionConfigOption auto-restores via pi session discovery when SessionStore misses",
|
|
176
|
+
"PiAcpAgent: cancel ignores stale session IDs without spawning a restore process"
|
|
177
|
+
],
|
|
178
|
+
"unit/slash-commands": [
|
|
179
|
+
"parseCommandArgs: handles quotes",
|
|
180
|
+
"substituteArgs: replaces $1.. and $@",
|
|
181
|
+
"expandSlashCommand: expands known command",
|
|
182
|
+
"toAvailableCommands: de-dupes by name (first wins)"
|
|
183
|
+
],
|
|
184
|
+
"unit/startup-info-env": [
|
|
185
|
+
"PiAcpAgent: quietStartup=true disables startup info generation/emission"
|
|
186
|
+
],
|
|
187
|
+
"unit/startup-info-load-session": [
|
|
188
|
+
"PiAcpAgent: does not emit startup info on loadSession"
|
|
189
|
+
],
|
|
190
|
+
"unit/startup-info-project-packages": [
|
|
191
|
+
"PiAcpAgent: startup info includes project-level packages from .pi/settings.json"
|
|
192
|
+
],
|
|
193
|
+
"unit/stdout-destroyed-does-not-crash": [
|
|
194
|
+
"stdout writer: resolves even if stdout is destroyed"
|
|
195
|
+
],
|
|
196
|
+
"unit/thinking-level-rpc": [
|
|
197
|
+
"thinking RPC preserves returned levels ${levels}",
|
|
198
|
+
"thinking RPC rejects malformed payload ${JSON.stringify(data)}",
|
|
199
|
+
"thinking RPC propagates unsuccessful responses and transport rejection"
|
|
200
|
+
]
|
|
201
|
+
}
|
package/provenance.json
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"origin": "ported",
|
|
3
|
+
"authors": ["Michael Kinsy"],
|
|
4
|
+
"license": "MIT",
|
|
5
|
+
"licenseFile": "LICENSE",
|
|
6
|
+
"upstreams": [
|
|
7
|
+
{
|
|
8
|
+
"name": "pi-acp",
|
|
9
|
+
"authors": ["Sergii Kozak"],
|
|
10
|
+
"url": "https://github.com/svkozak/pi-acp",
|
|
11
|
+
"revision": "b0581c9c1d675e634234674484247008b03d69b4",
|
|
12
|
+
"path": "port/oracle/pi-acp",
|
|
13
|
+
"license": "MIT",
|
|
14
|
+
"licenseFile": "port/oracle/pi-acp/LICENSE",
|
|
15
|
+
"attributionFile": "CREDITS.md"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"name": "Agent Client Protocol",
|
|
19
|
+
"authors": ["Zed Industries"],
|
|
20
|
+
"url": "https://github.com/agentclientprotocol/typescript-sdk",
|
|
21
|
+
"revision": "73bc30649b650de320340c782733bf69a545bd28",
|
|
22
|
+
"path": "port/schema/schema.json",
|
|
23
|
+
"license": "Apache-2.0",
|
|
24
|
+
"licenseFile": "port/schema/LICENSE",
|
|
25
|
+
"attributionFile": "CREDITS.md"
|
|
26
|
+
}
|
|
27
|
+
]
|
|
28
|
+
}
|