Files
tai/taicpp/PARITY.md
T
retoor 4eff597be7 sessions: vault discovery tools, shared stdin, ctrl-key fixes
New sessions/session_export tools plus a sessions_block vault map in the system prompt (tai.py, ported to detz); recall/search carry a session footer instead of letting the model grep sealed bytes. write_file refuses new markdown at working/repo roots, and the blanket *.md gitignore is gone so docs stay visible. One LineInput owns fd 0 for every prompt (ask, approvals, shell_ask, secrets), ending phantom-empty answers; Ctrl-C re-prompts (double exits), Ctrl-D exits, Ctrl-Z suspends; mid-turn Ctrl-C announces itself and kills foreground shell children via RunInterrupted. Covered by SessionsTests, repl_keys.py pty checks, agent_diff sessions_block cases.
2026-10-28 13:11:45 +01:00

311 lines
12 KiB
Markdown

# Parity detz vs tai.py (generated, do not edit)
Generated by `tools/parity_ledger.py` from the symbol ledger and the last differential run.
Only a passing differential case (`tools/parity_diff.py`) makes a symbol `verified`; a facet
after the symbol says what that case proved (for example `parse` means argument parsing only).
`name-only` means an identifier matches in the C++ tree and NOTHING about behavior is known.
- tai.py sha256: `190a812c0cd8d167`
- detz sha256: `c114480153577dfc`
- differential run: 2026-10-28T08:10:44 (tai.py `190a812c0cd8d167`, detz `c114480153577dfc`)
## Summary
| kind | total | verified | name-only | missing |
|---|---|---|---|---|
| class | 264 | 0 | 263 | 1 |
| method | 2144 | 0 | 1406 | 738 |
| function | 414 | 2 | 385 | 27 |
| tool | 63 | 0 | 63 | 0 |
| flag | 45 | 1 | 44 | 0 |
| setting | 28 | 0 | 28 | 0 |
| command | 31 | 5 | 23 | 3 |
| **all** | 2989 | 8 | 2212 | 769 |
## Differential cases
Counts: fail=57, pass=6, xpass=1
| case | status | reason |
|---|---|---|
| cli.err.ambiguous.cap | fail | stderr differs (12 diff lines) |
| cli.err.ambiguous.debug | fail | stderr differs (12 diff lines) |
| cli.err.ambiguous.install | fail | stderr differs (12 diff lines) |
| cli.err.ambiguous.tui | fail | stderr differs (12 diff lines) |
| cli.err.auto.explicit | fail | stderr differs (12 diff lines) |
| cli.err.cap-cwd.missing | fail | stderr differs (12 diff lines) |
| cli.err.cap-manifest.explicit | fail | stderr differs (12 diff lines) |
| cli.err.cap-max-turns.int | fail | stderr differs (12 diff lines) |
| cli.err.cap-max-turns.missing | fail | stderr differs (12 diff lines) |
| cli.err.cap-model.missing | fail | stderr differs (12 diff lines) |
| cli.err.cap-permission-mode.choice | fail | stderr differs (12 diff lines) |
| cli.err.cap-permission-mode.missing | fail | stderr differs (12 diff lines) |
| cli.err.cap-speak.explicit | fail | stderr differs (12 diff lines) |
| cli.err.continue.explicit | fail | stderr differs (12 diff lines) |
| cli.err.debug-format.choice | fail | stderr differs (12 diff lines) |
| cli.err.debug-format.missing | fail | stderr differs (12 diff lines) |
| cli.err.debug.choice | fail | stderr differs (12 diff lines) |
| cli.err.demo-shot.explicit | fail | stderr differs (12 diff lines) |
| cli.err.demo.explicit | fail | stderr differs (12 diff lines) |
| cli.err.env.missing | fail | stderr differs (12 diff lines) |
| cli.err.error_before_help | fail | stderr differs (12 diff lines) |
| cli.err.eval-retrieval.explicit | fail | stderr differs (12 diff lines) |
| cli.err.install-telegram.explicit | fail | stderr differs (12 diff lines) |
| cli.err.install.explicit | fail | stderr differs (12 diff lines) |
| cli.err.mcp-bind.missing | fail | stderr differs (12 diff lines) |
| cli.err.mcp-port.int | fail | stderr differs (12 diff lines) |
| cli.err.mcp-port.missing | fail | stderr differs (12 diff lines) |
| cli.err.no-opencode.explicit | fail | stderr differs (12 diff lines) |
| cli.err.plexer-wrap.explicit | fail | stderr differs (12 diff lines) |
| cli.err.profile.missing | fail | stderr differs (12 diff lines) |
| cli.err.scheduler.explicit | fail | stderr differs (12 diff lines) |
| cli.err.serve-mcp.missing | fail | stderr differs (12 diff lines) |
| cli.err.stats-rag.explicit | fail | stderr differs (12 diff lines) |
| cli.err.telegram.explicit | fail | stderr differs (12 diff lines) |
| cli.err.theme.missing | fail | stderr differs (12 diff lines) |
| cli.err.tui-local.explicit | fail | stderr differs (12 diff lines) |
| cli.err.tui.explicit | fail | stderr differs (12 diff lines) |
| cli.err.uninstall-telegram.explicit | fail | stderr differs (12 diff lines) |
| cli.err.unknown.long | fail | stderr differs (12 diff lines) |
| cli.err.unknown.short | fail | stderr differs (12 diff lines) |
| cli.err.update-models.explicit | fail | stderr differs (12 diff lines) |
| cli.err.version.explicit | fail | stderr differs (12 diff lines) |
| cli.err.yes.explicit | fail | stderr differs (12 diff lines) |
| cli.err.yolo.explicit | fail | stderr differs (12 diff lines) |
| cli.help.long | fail | stdout differs (25 diff lines) |
| cli.help.short | fail | stdout differs (25 diff lines) |
| cli.help.wins_over_error | fail | stdout differs (25 diff lines) |
| cli.ok.cap-permission-mode.confirm | fail | stdout differs (6 diff lines) |
| cli.ok.cap-permission-mode.interactive | fail | stdout differs (6 diff lines) |
| cli.ok.cap-permission-mode.none | fail | stdout differs (6 diff lines) |
| cli.ok.debug-format.json | fail | stdout differs (6 diff lines) |
| cli.ok.debug-format.sentence | fail | stdout differs (6 diff lines) |
| cli.prefix.version | fail | stdout differs (6 diff lines) |
| cli.version.long | fail | stdout differs (6 diff lines) |
| cli.version.with_choice | fail | stdout differs (6 diff lines) |
| persist.restart_history | xpass | needs the foundation agent: vault events persistence and history resume across process restarts; detz has no REPL/agent |
| repl.skills_secret_schedules | fail | stdout differs (10 diff lines) |
| repl.tools | fail | stdout differs (11 diff lines) |
## Python test-suite coverage
151 test classes, 1241 tests; tests reproduced by a passing diff case: 1 (in 1 classes); classes with no covered test: 150.
Full table: `build/parity/tests-map.md`.
## flags (45)
| name | status | facets | cases |
|---|---|---|---|
| `--allow-tool` | name-only | | |
| `--argv` | name-only | | |
| `--auto` | name-only | | |
| `--auto-answer` | name-only | | |
| `--binary` | name-only | | |
| `--cap` | name-only | | |
| `--cap-cwd` | name-only | | |
| `--cap-manifest` | verified | output | cli.cap_manifest |
| `--cap-max-turns` | name-only | | |
| `--cap-model` | name-only | | |
| `--cap-permission-mode` | name-only | | |
| `--cap-speak` | name-only | | |
| `--continue` | name-only | | |
| `--cwd` | name-only | | |
| `--debug` | name-only | | |
| `--debug-format` | name-only | | |
| `--demo` | name-only | | |
| `--demo-shot` | name-only | | |
| `--deny-tool` | name-only | | |
| `--driver` | name-only | | |
| `--env` | name-only | | |
| `--eval-retrieval` | name-only | | |
| `--install` | name-only | | |
| `--install-telegram` | name-only | | |
| `--max-risk` | name-only | | |
| `--mcp-bind` | name-only | | |
| `--mcp-port` | name-only | | |
| `--model` | name-only | | |
| `--mplex` | name-only | | |
| `--no-opencode` | name-only | | |
| `--plexer-wrap` | name-only | | |
| `--profile` | name-only | | |
| `--scheduler` | name-only | | |
| `--serve-mcp` | name-only | | |
| `--stats-rag` | name-only | | |
| `--task` | name-only | | |
| `--telegram` | name-only | | |
| `--theme` | name-only | | |
| `--tui` | name-only | | |
| `--tui-local` | name-only | | |
| `--uninstall-telegram` | name-only | | |
| `--update-models` | name-only | | |
| `--version` | name-only | | |
| `--yes` | name-only | | |
| `--yolo` | name-only | | |
## tools (63)
| name | status | facets | cases |
|---|---|---|---|
| `ask_user` | name-only | | |
| `audit` | name-only | | |
| `create_bot` | name-only | | |
| `create_skill` | name-only | | |
| `delete_file` | name-only | | |
| `delete_secret` | name-only | | |
| `describe_image` | name-only | | |
| `edit_file` | name-only | | |
| `export_terminal_log` | name-only | | |
| `fork` | name-only | | |
| `get_current_terminal_content` | name-only | | |
| `graph_link` | name-only | | |
| `graph_query` | name-only | | |
| `install` | name-only | | |
| `install_skill` | name-only | | |
| `list_secrets` | name-only | | |
| `list_terminals` | name-only | | |
| `listen` | name-only | | |
| `load_skill` | name-only | | |
| `mcp_add` | name-only | | |
| `mcp_call` | name-only | | |
| `mcp_disable` | name-only | | |
| `mcp_enable` | name-only | | |
| `mcp_list` | name-only | | |
| `mcp_login` | name-only | | |
| `mcp_remove` | name-only | | |
| `mcp_tools` | name-only | | |
| `plexer_read` | name-only | | |
| `plexer_send` | name-only | | |
| `plexer_show` | name-only | | |
| `plexer_status` | name-only | | |
| `plexer_type` | name-only | | |
| `poll` | name-only | | |
| `read_file` | name-only | | |
| `recall` | name-only | | |
| `record_delete` | name-only | | |
| `record_read` | name-only | | |
| `record_save` | name-only | | |
| `record_search` | name-only | | |
| `release` | name-only | | |
| `remember` | name-only | | |
| `restore` | name-only | | |
| `schedule` | name-only | | |
| `schedules` | name-only | | |
| `search` | name-only | | |
| `session_export` | name-only | | |
| `sessions` | name-only | | |
| `shell` | name-only | | |
| `speak` | name-only | | |
| `store_secret` | name-only | | |
| `sysinfo` | name-only | | |
| `tags` | name-only | | |
| `tail_terminals` | name-only | | |
| `tui_click` | name-only | | |
| `tui_goto` | name-only | | |
| `tui_keys` | name-only | | |
| `tui_result` | name-only | | |
| `tui_screen` | name-only | | |
| `tui_type` | name-only | | |
| `unschedule` | name-only | | |
| `web_fetch` | name-only | | |
| `web_search` | name-only | | |
| `write_file` | name-only | | |
## settings (28)
| name | status | facets | cases |
|---|---|---|---|
| `backends` | name-only | | |
| `box_caps` | name-only | | |
| `claude_bin` | name-only | | |
| `codex_bin` | name-only | | |
| `codex_sandbox` | name-only | | |
| `devplace_base` | name-only | | |
| `devplace_key` | name-only | | |
| `devplace_models` | name-only | | |
| `gemini_bin` | name-only | | |
| `gemini_plan` | name-only | | |
| `grok_bin` | name-only | | |
| `model` | name-only | | |
| `muse_bin` | name-only | | |
| `opencode_bin` | name-only | | |
| `opencode_client_name` | name-only | | |
| `opencode_client_ua` | name-only | | |
| `opencode_enabled` | name-only | | |
| `opencode_models` | name-only | | |
| `openrouter_enabled` | name-only | | |
| `openrouter_key` | name-only | | |
| `openrouter_models` | name-only | | |
| `pollinations_enabled` | name-only | | |
| `pollinations_models` | name-only | | |
| `retry_seconds` | name-only | | |
| `theme` | name-only | | |
| `voice` | name-only | | |
| `zen_enabled` | name-only | | |
| `zen_models` | name-only | | |
## commands (31)
| name | status | facets | cases |
|---|---|---|---|
| `/agent` | name-only | | |
| `/agents` | name-only | | |
| `/audit` | name-only | | |
| `/bot` | missing | | |
| `/bots` | verified | all | repl.profiles |
| `/clear` | name-only | | |
| `/compact` | name-only | | |
| `/ctx` | missing | | |
| `/demo` | name-only | | |
| `/env` | missing | | |
| `/fork` | name-only | | |
| `/graph` | name-only | | |
| `/help` | verified | all | repl.help |
| `/install` | name-only | | |
| `/models` | name-only | | |
| `/profile` | verified | all | repl.profiles |
| `/profiles` | verified | all | repl.profiles |
| `/quit` | name-only | | |
| `/record` | name-only | | |
| `/records` | name-only | | |
| `/release` | name-only | | |
| `/restore` | name-only | | |
| `/schedule` | name-only | | |
| `/schedules` | name-only | | |
| `/search` | name-only | | |
| `/secret` | name-only | | |
| `/skills` | name-only | | |
| `/sysinfo` | name-only | | |
| `/tags` | name-only | | |
| `/tools` | verified | all | repl.tools_named |
| `/unschedule` | name-only | | |
## Classes with the most missing methods (top 25 of 227)
| class | missing methods |
|---|---|
| MplexCopyMode | 19 |
| TuiPanel | 14 |
| GrrShell | 13 |
| TuiApp | 12 |
| MplexPane | 10 |
| DebugLog | 9 |
| GrrView | 9 |
| GrrChatView | 9 |
| GrrPaneFiles | 9 |
| GrrPanePreview | 9 |
| TuiVtScreen | 8 |
| GrrClient | 8 |
| GrrItem | 8 |
| ChatClient | 7 |
| MplexOptions | 7 |
| MplexClient | 7 |
| TuiCompositor | 7 |
| GrrFormat | 7 |
| GrrRouter | 7 |
| GrrProfileView | 7 |
| GrrPaneTab | 7 |
| GrrControl | 7 |
| CapDriver | 7 |
| CapPtyDriver | 7 |
| LaneBoard | 6 |