@vicoa/cli 1.9.1-win32-x64 → 1.9.1
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/README.md +82 -0
- package/bin/vicoa.js +38 -0
- package/package.json +32 -12
- package/bin/_internal/VCRUNTIME140.dll +0 -0
- package/bin/_internal/VCRUNTIME140_1.dll +0 -0
- package/bin/_internal/_asyncio.pyd +0 -0
- package/bin/_internal/_bz2.pyd +0 -0
- package/bin/_internal/_cffi_backend.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/_ctypes.pyd +0 -0
- package/bin/_internal/_decimal.pyd +0 -0
- package/bin/_internal/_hashlib.pyd +0 -0
- package/bin/_internal/_lzma.pyd +0 -0
- package/bin/_internal/_multiprocessing.pyd +0 -0
- package/bin/_internal/_overlapped.pyd +0 -0
- package/bin/_internal/_queue.pyd +0 -0
- package/bin/_internal/_socket.pyd +0 -0
- package/bin/_internal/_sqlite3.pyd +0 -0
- package/bin/_internal/_ssl.pyd +0 -0
- package/bin/_internal/_uuid.pyd +0 -0
- package/bin/_internal/_wmi.pyd +0 -0
- package/bin/_internal/_zoneinfo.pyd +0 -0
- package/bin/_internal/aiofile-3.12.3.dist-info/INSTALLER +0 -1
- package/bin/_internal/aiofile-3.12.3.dist-info/METADATA +0 -564
- package/bin/_internal/aiofile-3.12.3.dist-info/RECORD +0 -15
- package/bin/_internal/aiofile-3.12.3.dist-info/WHEEL +0 -4
- package/bin/_internal/aiofile-3.12.3.dist-info/licenses/LICENCE +0 -195
- package/bin/_internal/aiofile-3.12.3.dist-info/licenses/LICENCE.md +0 -195
- package/bin/_internal/aiohttp/_http_parser.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/aiohttp/_http_writer.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/aiohttp/_websocket/mask.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/aiohttp/_websocket/reader_c.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/aiohttp-3.14.3.dist-info/INSTALLER +0 -1
- package/bin/_internal/aiohttp-3.14.3.dist-info/METADATA +0 -257
- package/bin/_internal/aiohttp-3.14.3.dist-info/RECORD +0 -130
- package/bin/_internal/aiohttp-3.14.3.dist-info/WHEEL +0 -5
- package/bin/_internal/aiohttp-3.14.3.dist-info/licenses/LICENSE.txt +0 -201
- package/bin/_internal/aiohttp-3.14.3.dist-info/licenses/vendor/llhttp/LICENSE +0 -22
- package/bin/_internal/aiohttp-3.14.3.dist-info/top_level.txt +0 -1
- package/bin/_internal/api-ms-win-core-console-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-datetime-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-debug-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-errorhandling-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-fibers-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-fibers-l1-1-1.dll +0 -0
- package/bin/_internal/api-ms-win-core-file-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-file-l1-2-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-file-l2-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-handle-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-heap-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-interlocked-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-kernel32-legacy-l1-1-1.dll +0 -0
- package/bin/_internal/api-ms-win-core-libraryloader-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-localization-l1-2-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-memory-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-namedpipe-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-processenvironment-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-processthreads-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-processthreads-l1-1-1.dll +0 -0
- package/bin/_internal/api-ms-win-core-profile-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-rtlsupport-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-string-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-synch-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-synch-l1-2-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-sysinfo-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-sysinfo-l1-2-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-timezone-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-core-util-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-conio-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-convert-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-environment-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-filesystem-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-heap-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-locale-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-math-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-process-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-runtime-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-stdio-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-string-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-time-l1-1-0.dll +0 -0
- package/bin/_internal/api-ms-win-crt-utility-l1-1-0.dll +0 -0
- package/bin/_internal/attrs-26.1.0.dist-info/INSTALLER +0 -1
- package/bin/_internal/attrs-26.1.0.dist-info/METADATA +0 -199
- package/bin/_internal/attrs-26.1.0.dist-info/RECORD +0 -55
- package/bin/_internal/attrs-26.1.0.dist-info/WHEEL +0 -4
- package/bin/_internal/attrs-26.1.0.dist-info/licenses/LICENSE +0 -21
- package/bin/_internal/base_library.zip +0 -0
- package/bin/_internal/certifi/cacert.pem +0 -3959
- package/bin/_internal/certifi/py.typed +0 -0
- package/bin/_internal/charset_normalizer/cd.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/charset_normalizer/md.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/click-8.5.0.dist-info/INSTALLER +0 -1
- package/bin/_internal/click-8.5.0.dist-info/METADATA +0 -83
- package/bin/_internal/click-8.5.0.dist-info/RECORD +0 -40
- package/bin/_internal/click-8.5.0.dist-info/WHEEL +0 -4
- package/bin/_internal/click-8.5.0.dist-info/licenses/LICENSE.txt +0 -28
- package/bin/_internal/cryptography/hazmat/bindings/_rust.pyd +0 -0
- package/bin/_internal/cryptography-50.0.1.dist-info/INSTALLER +0 -1
- package/bin/_internal/cryptography-50.0.1.dist-info/METADATA +0 -110
- package/bin/_internal/cryptography-50.0.1.dist-info/RECORD +0 -199
- package/bin/_internal/cryptography-50.0.1.dist-info/WHEEL +0 -4
- package/bin/_internal/cryptography-50.0.1.dist-info/licenses/LICENSE +0 -3
- package/bin/_internal/cryptography-50.0.1.dist-info/licenses/LICENSE.APACHE +0 -202
- package/bin/_internal/cryptography-50.0.1.dist-info/licenses/LICENSE.BSD +0 -27
- package/bin/_internal/cryptography-50.0.1.dist-info/sboms/cryptography-rust.cyclonedx.json +0 -1365
- package/bin/_internal/cryptography-50.0.1.dist-info/sboms/sbom.json +0 -43
- package/bin/_internal/email_validator-2.3.0.dist-info/INSTALLER +0 -1
- package/bin/_internal/email_validator-2.3.0.dist-info/METADATA +0 -466
- package/bin/_internal/email_validator-2.3.0.dist-info/RECORD +0 -27
- package/bin/_internal/email_validator-2.3.0.dist-info/WHEEL +0 -5
- package/bin/_internal/email_validator-2.3.0.dist-info/entry_points.txt +0 -2
- package/bin/_internal/email_validator-2.3.0.dist-info/licenses/LICENSE +0 -27
- package/bin/_internal/email_validator-2.3.0.dist-info/top_level.txt +0 -1
- package/bin/_internal/fastmcp-4.0.4.dist-info/INSTALLER +0 -1
- package/bin/_internal/fastmcp-4.0.4.dist-info/METADATA +0 -161
- package/bin/_internal/fastmcp-4.0.4.dist-info/RECORD +0 -5
- package/bin/_internal/fastmcp-4.0.4.dist-info/WHEEL +0 -4
- package/bin/_internal/fastmcp-4.0.4.dist-info/licenses/LICENSE +0 -201
- package/bin/_internal/frozenlist/_frozenlist.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/httpcore2-2.13.0.dist-info/INSTALLER +0 -1
- package/bin/_internal/httpcore2-2.13.0.dist-info/METADATA +0 -749
- package/bin/_internal/httpcore2-2.13.0.dist-info/RECORD +0 -68
- package/bin/_internal/httpcore2-2.13.0.dist-info/WHEEL +0 -4
- package/bin/_internal/httpcore2-2.13.0.dist-info/licenses/LICENSE.md +0 -28
- package/bin/_internal/httpx2-2.13.0.dist-info/INSTALLER +0 -1
- package/bin/_internal/httpx2-2.13.0.dist-info/METADATA +0 -234
- package/bin/_internal/httpx2-2.13.0.dist-info/RECORD +0 -68
- package/bin/_internal/httpx2-2.13.0.dist-info/WHEEL +0 -4
- package/bin/_internal/httpx2-2.13.0.dist-info/entry_points.txt +0 -2
- package/bin/_internal/httpx2-2.13.0.dist-info/licenses/LICENSE.md +0 -13
- package/bin/_internal/integrations/cli_wrappers/IMPORTANT_USE_CASES.md +0 -33
- package/bin/_internal/integrations/headless/tests/README.md +0 -58
- package/bin/_internal/integrations/headless/tests/fixtures/antigravity/read_ok_write_denied.ndjson +0 -9
- package/bin/_internal/integrations/headless/tests/fixtures/antigravity/text_then_denied_command.ndjson +0 -10
- package/bin/_internal/integrations/headless/tests/fixtures/antigravity/tools_allowed.ndjson +0 -10
- package/bin/_internal/integrations/headless/tests/fixtures/omp/01-text.jsonl +0 -22
- package/bin/_internal/integrations/headless/tests/fixtures/omp/02-tools.jsonl +0 -41
- package/bin/_internal/integrations/headless/tests/fixtures/omp/03-hosttool.jsonl +0 -44
- package/bin/_internal/integrations/headless/tests/fixtures/omp/04-approval.jsonl +0 -68
- package/bin/_internal/integrations/headless/tests/fixtures/omp/05-todo.jsonl +0 -146
- package/bin/_internal/integrations/headless/tests/fixtures/omp/06-subagent.jsonl +0 -273
- package/bin/_internal/integrations/headless/tests/fixtures/omp/README.md +0 -108
- package/bin/_internal/integrations/headless/tests/fixtures/provider_usage/codex_wham_usage_free.json +0 -41
- package/bin/_internal/integrations/headless/tests/fixtures/provider_usage/codex_wham_usage_plus.json +0 -30
- package/bin/_internal/integrations/headless/tests/fixtures/provider_usage/copilot_user_free_limited.json +0 -67
- package/bin/_internal/integrations/headless/tests/fixtures/provider_usage/copilot_user_pro.json +0 -33
- package/bin/_internal/jiter/jiter.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/jsonschema/benchmarks/issue232/issue.json +0 -2653
- package/bin/_internal/jsonschema-4.26.0.dist-info/INSTALLER +0 -1
- package/bin/_internal/jsonschema-4.26.0.dist-info/METADATA +0 -170
- package/bin/_internal/jsonschema-4.26.0.dist-info/RECORD +0 -82
- package/bin/_internal/jsonschema-4.26.0.dist-info/WHEEL +0 -4
- package/bin/_internal/jsonschema-4.26.0.dist-info/entry_points.txt +0 -2
- package/bin/_internal/jsonschema-4.26.0.dist-info/licenses/COPYING +0 -19
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/metaschema.json +0 -42
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/applicator +0 -56
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/content +0 -17
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/core +0 -57
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/format +0 -14
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/meta-data +0 -37
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/validation +0 -98
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/metaschema.json +0 -58
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/applicator +0 -48
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/content +0 -17
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/core +0 -51
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/format-annotation +0 -14
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/format-assertion +0 -14
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/meta-data +0 -37
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/unevaluated +0 -15
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/validation +0 -98
- package/bin/_internal/jsonschema_specifications/schemas/draft3/metaschema.json +0 -172
- package/bin/_internal/jsonschema_specifications/schemas/draft4/metaschema.json +0 -149
- package/bin/_internal/jsonschema_specifications/schemas/draft6/metaschema.json +0 -153
- package/bin/_internal/jsonschema_specifications/schemas/draft7/metaschema.json +0 -166
- package/bin/_internal/libcrypto-3.dll +0 -0
- package/bin/_internal/libffi-8.dll +0 -0
- package/bin/_internal/libssl-3.dll +0 -0
- package/bin/_internal/mcp-2.2.0.dist-info/INSTALLER +0 -1
- package/bin/_internal/mcp-2.2.0.dist-info/METADATA +0 -179
- package/bin/_internal/mcp-2.2.0.dist-info/RECORD +0 -254
- package/bin/_internal/mcp-2.2.0.dist-info/WHEEL +0 -4
- package/bin/_internal/mcp-2.2.0.dist-info/entry_points.txt +0 -2
- package/bin/_internal/mcp-2.2.0.dist-info/licenses/LICENSE +0 -21
- package/bin/_internal/multidict/_multidict.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/opentelemetry_api-1.44.0.dist-info/INSTALLER +0 -1
- package/bin/_internal/opentelemetry_api-1.44.0.dist-info/METADATA +0 -43
- package/bin/_internal/opentelemetry_api-1.44.0.dist-info/RECORD +0 -78
- package/bin/_internal/opentelemetry_api-1.44.0.dist-info/WHEEL +0 -4
- package/bin/_internal/opentelemetry_api-1.44.0.dist-info/entry_points.txt +0 -15
- package/bin/_internal/opentelemetry_api-1.44.0.dist-info/licenses/LICENSE +0 -201
- package/bin/_internal/propcache/_helpers_c.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/pydantic-2.13.5.dist-info/INSTALLER +0 -1
- package/bin/_internal/pydantic-2.13.5.dist-info/METADATA +0 -1307
- package/bin/_internal/pydantic-2.13.5.dist-info/RECORD +0 -217
- package/bin/_internal/pydantic-2.13.5.dist-info/WHEEL +0 -4
- package/bin/_internal/pydantic-2.13.5.dist-info/licenses/LICENSE +0 -21
- package/bin/_internal/pydantic_core/_pydantic_core.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/pyexpat.pyd +0 -0
- package/bin/_internal/python3.dll +0 -0
- package/bin/_internal/python312.dll +0 -0
- package/bin/_internal/pywin32_system32/pythoncom312.dll +0 -0
- package/bin/_internal/pywin32_system32/pywintypes312.dll +0 -0
- package/bin/_internal/rpds/rpds.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/select.pyd +0 -0
- package/bin/_internal/setuptools/_vendor/jaraco/text/Lorem ipsum.txt +0 -2
- package/bin/_internal/sqlite3.dll +0 -0
- package/bin/_internal/ucrtbase.dll +0 -0
- package/bin/_internal/unicodedata.pyd +0 -0
- package/bin/_internal/vicoa-1.9.1.dist-info/INSTALLER +0 -1
- package/bin/_internal/vicoa-1.9.1.dist-info/METADATA +0 -111
- package/bin/_internal/vicoa-1.9.1.dist-info/RECORD +0 -10
- package/bin/_internal/vicoa-1.9.1.dist-info/REQUESTED +0 -0
- package/bin/_internal/vicoa-1.9.1.dist-info/WHEEL +0 -5
- package/bin/_internal/vicoa-1.9.1.dist-info/direct_url.json +0 -1
- package/bin/_internal/vicoa-1.9.1.dist-info/entry_points.txt +0 -2
- package/bin/_internal/vicoa-1.9.1.dist-info/top_level.txt +0 -4
- package/bin/_internal/watchfiles/_rust_notify.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/websockets/speedups.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/websockets-17.1.dist-info/INSTALLER +0 -1
- package/bin/_internal/websockets-17.1.dist-info/METADATA +0 -170
- package/bin/_internal/websockets-17.1.dist-info/RECORD +0 -116
- package/bin/_internal/websockets-17.1.dist-info/WHEEL +0 -5
- package/bin/_internal/websockets-17.1.dist-info/entry_points.txt +0 -2
- package/bin/_internal/websockets-17.1.dist-info/licenses/LICENSE +0 -24
- package/bin/_internal/websockets-17.1.dist-info/top_level.txt +0 -1
- package/bin/_internal/win32/_win32sysloader.pyd +0 -0
- package/bin/_internal/win32/win32api.pyd +0 -0
- package/bin/_internal/win32/win32evtlog.pyd +0 -0
- package/bin/_internal/win32/win32job.pyd +0 -0
- package/bin/_internal/yaml/_yaml.cp312-win_amd64.pyd +0 -0
- package/bin/_internal/yarl/_quoting_c.cp312-win_amd64.pyd +0 -0
- package/bin/vicoa.exe +0 -0
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
# OMP (`oh-my-pi`) RPC wire traces
|
|
2
|
-
|
|
3
|
-
Real frames captured from `omp --mode rpc`, one JSONL file per scenario, one
|
|
4
|
-
frame per line, verbatim except for the sanitization noted below. These are the
|
|
5
|
-
ground truth for the Pi/OMP wrapper's transport and event mapper — write the
|
|
6
|
-
parsers against these, not against a hand-written idea of the protocol.
|
|
7
|
-
|
|
8
|
-
Captured **2026-09-05** against:
|
|
9
|
-
|
|
10
|
-
| | |
|
|
11
|
-
|---|---|
|
|
12
|
-
| binary | `omp` 18.1.10 (`@oh-my-pi/pi-coding-agent`, needs Bun ≥ 1.3.14) |
|
|
13
|
-
| model | `claude-haiku-4-5-20251001` (via `--model haiku`) |
|
|
14
|
-
| flags | `--mode rpc --no-session --model haiku` (+ per-scenario extras) |
|
|
15
|
-
|
|
16
|
-
Regenerate with `capture.py` in this directory (see "Reproducing" below).
|
|
17
|
-
|
|
18
|
-
## Scenarios
|
|
19
|
-
|
|
20
|
-
| file | what it exercises | notable frames |
|
|
21
|
-
|---|---|---|
|
|
22
|
-
| `01-text.jsonl` | plain text turn, no tools | full `thinking_*` → `text_*` delta sequence, `turn_end` |
|
|
23
|
-
| `02-tools.jsonl` | native `read` tool | `tool_execution_start` / `_end` |
|
|
24
|
-
| `03-hosttool.jsonl` | full host-tool round trip | `host_tool_call`, our `host_tool_update` / `host_tool_result` reflected back |
|
|
25
|
-
| `04-approval.jsonl` | `--approval-mode always-ask` | the real permission dialog |
|
|
26
|
-
| `05-todo.jsonl` | todo list creation | `todo_reminder` + the native `todo` tool call |
|
|
27
|
-
| `06-subagent.jsonl` | `set_subagent_subscription: "events"` | `subagent_lifecycle` ×2, `subagent_progress` ×31, `subagent_event` ×110 |
|
|
28
|
-
|
|
29
|
-
## Sanitization
|
|
30
|
-
|
|
31
|
-
Only `available_commands_update` frames were modified: the real ones carry the
|
|
32
|
-
operator's full private slash-command and skill list (76 commands, 31 of them
|
|
33
|
-
personal skills). They are replaced with a small synthetic set that preserves
|
|
34
|
-
the shape, including a `subcommands` entry. **Every other frame is verbatim.**
|
|
35
|
-
No credentials, tokens or home-directory paths appear in any file (the capture
|
|
36
|
-
ran in `/tmp`).
|
|
37
|
-
|
|
38
|
-
## What these traces proved
|
|
39
|
-
|
|
40
|
-
Seven places where the real 18.1.10 wire disagrees with paseo's schemas
|
|
41
|
-
(`packages/server/src/server/agent/providers/omp/rpc-types.ts`, pinned to a
|
|
42
|
-
16.3.9 floor). Paseo uses `z.discriminatedUnion`, so unmodelled event types fail
|
|
43
|
-
`safeParse` and are silently dropped:
|
|
44
|
-
|
|
45
|
-
1. **`turn_end`** is a real event carrying the terminal assistant message plus
|
|
46
|
-
`usage`. Not in paseo's union at all.
|
|
47
|
-
2. **`tool_execution_start.intent`** — a human-readable label
|
|
48
|
-
(`"Reading sample.txt"`, `"Listing Vicoa sessions with limit 5"`). Unmodelled,
|
|
49
|
-
and better than anything we would synthesize from `args` for a tool-card
|
|
50
|
-
header.
|
|
51
|
-
3. **`todo_reminder.attempt` / `.maxAttempts`** — unmodelled.
|
|
52
|
-
4. **`available_commands_update` commands carry `subcommands`** — unmodelled.
|
|
53
|
-
5. **`subagent_event.payload.event` includes `advisor_cost_changed` and
|
|
54
|
-
`thinking_level_changed`** — event types absent from paseo's union entirely.
|
|
55
|
-
6. **`get_session_stats`** returns `sessionId`, `userMessages`,
|
|
56
|
-
`assistantMessages`, `toolCalls`, `toolResults`, `totalMessages`,
|
|
57
|
-
`premiumRequests` and `tokens.reasoning` beyond paseo's shape.
|
|
58
|
-
7. **`get_state.model`** carries `int`, `tps`, `thinking:{mode,efforts,supportsDisplay}`,
|
|
59
|
-
`identity:{class,family,revision}`, `requiresGlyphTokenization`, `tokenizer`,
|
|
60
|
-
`supportsComputerUse`, `compat:{…}`.
|
|
61
|
-
|
|
62
|
-
⇒ **Parse extra-allow. Never use a closed union for OMP event types** — dispatch
|
|
63
|
-
on `type` with an explicit default branch that logs and drops.
|
|
64
|
-
|
|
65
|
-
## Facts the traces settle
|
|
66
|
-
|
|
67
|
-
- **Delta order** is `thinking_start` → `thinking_delta`* → `thinking_end` →
|
|
68
|
-
`text_start` → `text_delta`* → `text_end`, each wrapped in
|
|
69
|
-
`message_update.assistantMessageEvent`. Thinking blocks also carry a
|
|
70
|
-
`thinkingSignature` in the final message.
|
|
71
|
-
- **`turn_*` is per model round trip, `agent_*` is per user prompt.** A single
|
|
72
|
-
tool-using prompt produces `agent_start` → (`turn_start`…`turn_end`) ×2 →
|
|
73
|
-
`agent_end`. Do not treat `turn_end` as end-of-work.
|
|
74
|
-
- **The `prompt` ack can be `data: null`** — not always `{agentInvoked}`. Do not
|
|
75
|
-
assume an object.
|
|
76
|
-
- **Host tools render as ordinary tools.** A `host_tool_call` also emits the
|
|
77
|
-
normal `tool_execution_start` / `_update` / `_end` triple, and our
|
|
78
|
-
`host_tool_update.partialResult` comes back as
|
|
79
|
-
`tool_execution_update.partialResult`. No separate rendering path is needed —
|
|
80
|
-
and streaming progress works for free.
|
|
81
|
-
- **`host_tool_call` uses two distinct ids**: `id` (correlation id; the one that
|
|
82
|
-
must be echoed in `host_tool_result`) and `toolCallId` (the model's
|
|
83
|
-
`toolu_…` id, which is what the `tool_execution_*` events key on).
|
|
84
|
-
- **Permission prompts arrive as `extension_ui_request` with `method: "select"`**,
|
|
85
|
-
a multi-line free-text `title` holding the whole prompt, and
|
|
86
|
-
`options: ["Approve", "Deny"]`. Maps onto `headless/permission.py`'s existing
|
|
87
|
-
prompt + options rendering.
|
|
88
|
-
- **`extension_ui_request` also fires with `method: "setWidget"`** in plain
|
|
89
|
-
`--mode rpc` (not just `rpc-ui`), at session start and end. Unknown methods
|
|
90
|
-
must be ignored silently.
|
|
91
|
-
- **`subagent_event` is a firehose** — 110 frames for one trivial subagent, since
|
|
92
|
-
it nests the child's entire event stream. Default
|
|
93
|
-
`set_subagent_subscription` to `"progress"`, not `"events"`, and derive cards
|
|
94
|
-
from `subagent_lifecycle` + `subagent_progress`.
|
|
95
|
-
- **`subagent_lifecycle.payload.id` is a human-readable name** (`"DelightedDinosaur"`),
|
|
96
|
-
not a UUID, and `parentToolCallId` is what links a subagent to its Task card.
|
|
97
|
-
|
|
98
|
-
## Reproducing
|
|
99
|
-
|
|
100
|
-
Requires an authenticated `omp` on the machine (`omp` → `/login`). Costs a few
|
|
101
|
-
cents on haiku.
|
|
102
|
-
|
|
103
|
-
```bash
|
|
104
|
-
cd backend/src/integrations/headless/tests/fixtures/omp
|
|
105
|
-
python3 capture.py # rewrites the *.jsonl files in place
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
Re-sanitize `available_commands_update` before committing anything regenerated.
|
package/bin/_internal/integrations/headless/tests/fixtures/provider_usage/codex_wham_usage_free.json
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"user_id": "user-REDACTED",
|
|
3
|
-
"account_id": "acct-REDACTED",
|
|
4
|
-
"email": "redacted@example.com",
|
|
5
|
-
"plan_type": "free",
|
|
6
|
-
"rate_limit": {
|
|
7
|
-
"allowed": true,
|
|
8
|
-
"limit_reached": false,
|
|
9
|
-
"primary_window": {
|
|
10
|
-
"used_percent": 0,
|
|
11
|
-
"limit_window_seconds": 2592000,
|
|
12
|
-
"reset_after_seconds": 2351904,
|
|
13
|
-
"reset_at": 1791709519
|
|
14
|
-
},
|
|
15
|
-
"secondary_window": null
|
|
16
|
-
},
|
|
17
|
-
"code_review_rate_limit": null,
|
|
18
|
-
"additional_rate_limits": null,
|
|
19
|
-
"model_usage": {},
|
|
20
|
-
"credits": {
|
|
21
|
-
"has_credits": false,
|
|
22
|
-
"unlimited": false,
|
|
23
|
-
"overage_limit_reached": false,
|
|
24
|
-
"balance": null,
|
|
25
|
-
"approx_local_messages": null,
|
|
26
|
-
"approx_cloud_messages": null
|
|
27
|
-
},
|
|
28
|
-
"spend_control": {
|
|
29
|
-
"reached": false,
|
|
30
|
-
"individual_limit": null
|
|
31
|
-
},
|
|
32
|
-
"rate_limit_reached_type": null,
|
|
33
|
-
"promo": {
|
|
34
|
-
"campaign_id": "REDACTED",
|
|
35
|
-
"message": "To continue using Codex and get access to GPT-5.3-Codex, start a free trial of Plus today (https://chatgpt.com/explore/plus)"
|
|
36
|
-
},
|
|
37
|
-
"rate_limit_reset_credits": {
|
|
38
|
-
"available_count": 0,
|
|
39
|
-
"applicable_available_count": 0
|
|
40
|
-
}
|
|
41
|
-
}
|
package/bin/_internal/integrations/headless/tests/fixtures/provider_usage/codex_wham_usage_plus.json
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"user_id": "user-REDACTED",
|
|
3
|
-
"account_id": "acct-REDACTED",
|
|
4
|
-
"email": "redacted@example.com",
|
|
5
|
-
"plan_type": "plus",
|
|
6
|
-
"rate_limit": {
|
|
7
|
-
"allowed": true,
|
|
8
|
-
"limit_reached": false,
|
|
9
|
-
"primary_window": {
|
|
10
|
-
"used_percent": 63.4,
|
|
11
|
-
"limit_window_seconds": 18000,
|
|
12
|
-
"reset_after_seconds": 7200,
|
|
13
|
-
"reset_at": 1789000000
|
|
14
|
-
},
|
|
15
|
-
"secondary_window": {
|
|
16
|
-
"used_percent": 41,
|
|
17
|
-
"limit_window_seconds": 604800,
|
|
18
|
-
"reset_after_seconds": 400000,
|
|
19
|
-
"reset_at": 1789400000
|
|
20
|
-
}
|
|
21
|
-
},
|
|
22
|
-
"credits": {
|
|
23
|
-
"has_credits": true,
|
|
24
|
-
"unlimited": false,
|
|
25
|
-
"overage_limit_reached": false,
|
|
26
|
-
"balance": "12.5",
|
|
27
|
-
"approx_local_messages": null,
|
|
28
|
-
"approx_cloud_messages": null
|
|
29
|
-
}
|
|
30
|
-
}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"login": "redacted",
|
|
3
|
-
"access_type_sku": "free_limited_copilot",
|
|
4
|
-
"analytics_tracking_id": "REDACTED",
|
|
5
|
-
"assigned_date": "2025-12-14T13:27:16+08:00",
|
|
6
|
-
"can_signup_for_limited": false,
|
|
7
|
-
"chat_enabled": true,
|
|
8
|
-
"cli_enabled": true,
|
|
9
|
-
"copilot_plan": "individual",
|
|
10
|
-
"organization_login_list": [],
|
|
11
|
-
"organization_list": [],
|
|
12
|
-
"endpoints": {
|
|
13
|
-
"api": "https://api.individual.githubcopilot.com",
|
|
14
|
-
"proxy": "https://proxy.individual.githubcopilot.com"
|
|
15
|
-
},
|
|
16
|
-
"can_upgrade_plan": true,
|
|
17
|
-
"quota_snapshots": {
|
|
18
|
-
"chat": {
|
|
19
|
-
"overage_count": 0,
|
|
20
|
-
"overage_permitted": false,
|
|
21
|
-
"percent_remaining": 100.0,
|
|
22
|
-
"quota_id": "REDACTED",
|
|
23
|
-
"quota_remaining": 200.0,
|
|
24
|
-
"unlimited": false,
|
|
25
|
-
"timestamp_utc": "2026-09-14T03:47:16.920Z",
|
|
26
|
-
"has_quota": true,
|
|
27
|
-
"quota_reset_at": 0,
|
|
28
|
-
"token_based_billing": true,
|
|
29
|
-
"credits_used": 0,
|
|
30
|
-
"remaining": 200,
|
|
31
|
-
"entitlement": 200
|
|
32
|
-
},
|
|
33
|
-
"completions": {
|
|
34
|
-
"overage_count": 0,
|
|
35
|
-
"overage_permitted": false,
|
|
36
|
-
"percent_remaining": 100.0,
|
|
37
|
-
"quota_id": "REDACTED",
|
|
38
|
-
"quota_remaining": 2000.0,
|
|
39
|
-
"unlimited": false,
|
|
40
|
-
"timestamp_utc": "2026-09-14T03:47:16.920Z",
|
|
41
|
-
"has_quota": true,
|
|
42
|
-
"quota_reset_at": 0,
|
|
43
|
-
"token_based_billing": true,
|
|
44
|
-
"credits_used": 0,
|
|
45
|
-
"remaining": 2000,
|
|
46
|
-
"entitlement": 2000
|
|
47
|
-
},
|
|
48
|
-
"premium_interactions": {
|
|
49
|
-
"overage_count": 0,
|
|
50
|
-
"overage_permitted": false,
|
|
51
|
-
"percent_remaining": 0.0,
|
|
52
|
-
"quota_id": "REDACTED",
|
|
53
|
-
"quota_remaining": 0.0,
|
|
54
|
-
"unlimited": false,
|
|
55
|
-
"timestamp_utc": "2026-09-14T03:47:16.920Z",
|
|
56
|
-
"has_quota": false,
|
|
57
|
-
"quota_reset_at": 0,
|
|
58
|
-
"token_based_billing": true,
|
|
59
|
-
"credits_used": 0,
|
|
60
|
-
"remaining": 0,
|
|
61
|
-
"entitlement": 0
|
|
62
|
-
}
|
|
63
|
-
},
|
|
64
|
-
"token_based_billing": true,
|
|
65
|
-
"quota_reset_date": "2026-10-01",
|
|
66
|
-
"quota_reset_date_utc": "2026-10-01T00:00:00.000Z"
|
|
67
|
-
}
|
package/bin/_internal/integrations/headless/tests/fixtures/provider_usage/copilot_user_pro.json
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"login": "redacted",
|
|
3
|
-
"access_type_sku": "monthly_subscriber",
|
|
4
|
-
"copilot_plan": "individual_pro",
|
|
5
|
-
"quota_snapshots": {
|
|
6
|
-
"chat": {
|
|
7
|
-
"percent_remaining": 100.0,
|
|
8
|
-
"unlimited": true,
|
|
9
|
-
"has_quota": true,
|
|
10
|
-
"remaining": 0,
|
|
11
|
-
"entitlement": 0
|
|
12
|
-
},
|
|
13
|
-
"completions": {
|
|
14
|
-
"percent_remaining": 100.0,
|
|
15
|
-
"unlimited": true,
|
|
16
|
-
"has_quota": true,
|
|
17
|
-
"remaining": 0,
|
|
18
|
-
"entitlement": 0
|
|
19
|
-
},
|
|
20
|
-
"premium_interactions": {
|
|
21
|
-
"overage_count": 0,
|
|
22
|
-
"overage_permitted": true,
|
|
23
|
-
"percent_remaining": 37.5,
|
|
24
|
-
"quota_remaining": 112.5,
|
|
25
|
-
"unlimited": false,
|
|
26
|
-
"has_quota": true,
|
|
27
|
-
"quota_reset_at": 0,
|
|
28
|
-
"remaining": 112,
|
|
29
|
-
"entitlement": 300
|
|
30
|
-
}
|
|
31
|
-
},
|
|
32
|
-
"quota_reset_date": "2026-10-01"
|
|
33
|
-
}
|
|
Binary file
|