Final-diff simplify/review pass findings on #83785: - Consent gate (confirm_truncate -> 4029) now checked BEFORE target resolution, restoring the pre-PR precedence: an unconfirmed submit carrying truncation params refuses without paying the durable-transcript read or heal-stamping live history dicts, and an unconfirmed out-of-range ordinal returns 4029 (not 4018). Malformed params still refuse first with 4004. Regression test added (spy DB asserts zero reads pre-consent; mutation-checked against the previous commit). - _coerce_truncate_ordinal generalized to _coerce_truncate_int(param_name): the row_id branch was inlining the exact bool-guard + int() -> 4004 pattern the helper had just extracted. - Deleted the dead user_indices re-read after _resolve_truncate_row_id (heal mutates dicts in place; the filter output is identical) and the duplicate range check that had deadened the pre-existing guard. - Desktop: exported isVisibleUserMessage from use-prompt-actions/utils and used it in visibleUserOrdinal / visibleUserIndexAtOrdinal / rebindSurvivorRowIds — one predicate for the ordinal parity all three depend on instead of three verbatim copies. - Docs: programmatic-integration.md documents survivor_user_row_ids. |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| _stdin_recovery.py | ||
| compute_host.py | ||
| entry.py | ||
| event_publisher.py | ||
| git_probe.py | ||
| host_supervisor.py | ||
| loop_noise.py | ||
| method_ctx.py | ||
| methods_complete.py | ||
| methods_config.py | ||
| methods_profiles.py | ||
| methods_prompt.py | ||
| methods_session.py | ||
| methods_tools.py | ||
| project_tree.py | ||
| render.py | ||
| server.py | ||
| slash_fuzzy.py | ||
| slash_worker.py | ||
| synthetic_turn.py | ||
| transport.py | ||
| turn_marker.py | ||
| ws.py | ||