[PR #572] [MERGED] refactor!: simplify runtime tools and remove replay engines #2073

Closed
opened 2026-10-16 21:13:57 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/572
Author: @morluto
Created: 10/5/2026
Status: ✅ Merged
Merged: 10/5/2026
Merged by: @morluto

Base: main ← Head: refactor/tool-system-simplification


📝 Commits (2)

  • ae2d69d fix(hopper): report unavailable procedure body coverage
  • b715ed3 refactor!: simplify runtime tools and remove replay engines

📊 Changes

258 files changed (+1199 additions, -22450 deletions)

View changed files

➖ .github/workflows/real-javascript-replay.yml (+0 -40)
📝 AGENTS.md (+7 -3)
📝 README.md (+21 -23)
📝 README_ar.md (+12 -12)
📝 README_ja.md (+5 -5)
📝 README_ko.md (+5 -5)
📝 README_zh.md (+5 -5)
📝 bridge/hopper_bridge.py (+19 -2)
📝 docs/adr/0002-controlled-replay-authority-and-sandbox.md (+8 -9)
📝 docs/adr/0003-managed-code-evidence-and-provider-boundary.md (+14 -29)
📝 docs/adr/README.md (+5 -5)
📝 docs/architecture.mermaid (+0 -1)
📝 docs/browser-scenario-contract.md (+20 -23)
➖ docs/controlled-javascript-replay.md (+0 -97)
📝 docs/error-contract.schema.json (+0 -34)
📝 docs/javascript-application-graph.md (+1 -1)
📝 docs/javascript-application-workflows.md (+11 -21)
📝 docs/javascript-runtime-observation.md (+1 -1)
📝 docs/managed-code-analysis.md (+22 -36)
📝 docs/mcp-contracts.md (+4 -4)

...and 80 more files

📄 Description

REA's replay engines and prepare/execute flows required agents to translate ordinary experiments into custom plans, fixture routes, and state machines. This change keeps direct inspection, capture, and comparison tools and lets agents supply commands, scripts, and local fixture servers themselves. CLI and MCP use the same simplified contracts; the published catalog contains 116 tools.

Removes run_controlled_replay, prepare_node_characterization, execute_node_characterization, run_replay_machine, and the plan-only plan_managed_runtime_correlation. Removes the redundant find_code_for_string tool; trace_feature covers that investigation. Retires process replay servers, command shims, reactive orchestration, custom checkpoints, browser request interception, and the active browser scenario's duplicate origin allowlist, together with their configuration, diagnostics, documentation, and exclusive verification lanes. Direct process capture retains timed input, resize and signal events, filesystem snapshots, terminal evidence, cancellation, settlement, and owned-resource cleanup.

Tool handlers now resolve named, typed contracts instead of relying on catalog positions, preventing tool removals from silently selecting another schema. Real Hopper verification also exposed a producer mismatch: the advertised procedure schema requires body coverage, but the bridge omitted it. All Hopper procedure producers now explicitly report unavailable complete body ranges rather than inventing extents. AGENTS.md adds prose guidance on these boundaries and on keeping experimentation in agent-composed tools.

Example MCP invocation:

{
  "name": "capture_process_scenario",
  "arguments": {
    "executable": "node",
    "arguments": ["-e", "console.log('ready')"]
  }
}

The equivalent CLI invocation is rea capture-process ./scenario.json, with the scenario object saved in that file.

Validation:

  • npm run check:pr: typecheck, lint, formatting, dead-code checks, build, generated-document checks, and 336 test files passed (1,810 tests passed; one skipped).
  • npm run verify:browser: real Chrome, browser scenarios, CLI/MCP screenshots, and launch/attach cleanup passed.
  • npm run verify:package: installed package, CLI/MCP, setup backups and idempotence, and 116-tool catalog passed.
  • npm run verify:hopper: real Hopper operations and lifecycle verification passed after the body-coverage fix.
  • Real Ghidra verification was not performed.

BREAKING CHANGE: The six listed tools and retired replay/orchestration/browser-scope inputs are removed. Old scenario fields are rejected explicitly. Stored evidence authority values remain readable for provenance.

Follow-up to #555.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/morluto/rea/pull/572 **Author:** [@morluto](https://github.com/morluto) **Created:** 10/5/2026 **Status:** ✅ Merged **Merged:** 10/5/2026 **Merged by:** [@morluto](https://github.com/morluto) **Base:** `main` ← **Head:** `refactor/tool-system-simplification` --- ### 📝 Commits (2) - [`ae2d69d`](https://github.com/morluto/rea/commit/ae2d69dc1e1b60fc782bc72b7b7b2d5f36b4aa76) fix(hopper): report unavailable procedure body coverage - [`b715ed3`](https://github.com/morluto/rea/commit/b715ed301ce26c2507011d652d575c3e39bfc83b) refactor!: simplify runtime tools and remove replay engines ### 📊 Changes **258 files changed** (+1199 additions, -22450 deletions) <details> <summary>View changed files</summary> ➖ `.github/workflows/real-javascript-replay.yml` (+0 -40) 📝 `AGENTS.md` (+7 -3) 📝 `README.md` (+21 -23) 📝 `README_ar.md` (+12 -12) 📝 `README_ja.md` (+5 -5) 📝 `README_ko.md` (+5 -5) 📝 `README_zh.md` (+5 -5) 📝 `bridge/hopper_bridge.py` (+19 -2) 📝 `docs/adr/0002-controlled-replay-authority-and-sandbox.md` (+8 -9) 📝 `docs/adr/0003-managed-code-evidence-and-provider-boundary.md` (+14 -29) 📝 `docs/adr/README.md` (+5 -5) 📝 `docs/architecture.mermaid` (+0 -1) 📝 `docs/browser-scenario-contract.md` (+20 -23) ➖ `docs/controlled-javascript-replay.md` (+0 -97) 📝 `docs/error-contract.schema.json` (+0 -34) 📝 `docs/javascript-application-graph.md` (+1 -1) 📝 `docs/javascript-application-workflows.md` (+11 -21) 📝 `docs/javascript-runtime-observation.md` (+1 -1) 📝 `docs/managed-code-analysis.md` (+22 -36) 📝 `docs/mcp-contracts.md` (+4 -4) _...and 80 more files_ </details> ### 📄 Description REA's replay engines and prepare/execute flows required agents to translate ordinary experiments into custom plans, fixture routes, and state machines. This change keeps direct inspection, capture, and comparison tools and lets agents supply commands, scripts, and local fixture servers themselves. CLI and MCP use the same simplified contracts; the published catalog contains 116 tools. Removes `run_controlled_replay`, `prepare_node_characterization`, `execute_node_characterization`, `run_replay_machine`, and the plan-only `plan_managed_runtime_correlation`. Removes the redundant `find_code_for_string` tool; `trace_feature` covers that investigation. Retires process replay servers, command shims, reactive orchestration, custom checkpoints, browser request interception, and the active browser scenario's duplicate origin allowlist, together with their configuration, diagnostics, documentation, and exclusive verification lanes. Direct process capture retains timed input, resize and signal events, filesystem snapshots, terminal evidence, cancellation, settlement, and owned-resource cleanup. Tool handlers now resolve named, typed contracts instead of relying on catalog positions, preventing tool removals from silently selecting another schema. Real Hopper verification also exposed a producer mismatch: the advertised procedure schema requires body coverage, but the bridge omitted it. All Hopper procedure producers now explicitly report unavailable complete body ranges rather than inventing extents. AGENTS.md adds prose guidance on these boundaries and on keeping experimentation in agent-composed tools. Example MCP invocation: ```json { "name": "capture_process_scenario", "arguments": { "executable": "node", "arguments": ["-e", "console.log('ready')"] } } ``` The equivalent CLI invocation is `rea capture-process ./scenario.json`, with the scenario object saved in that file. Validation: - `npm run check:pr`: typecheck, lint, formatting, dead-code checks, build, generated-document checks, and 336 test files passed (1,810 tests passed; one skipped). - `npm run verify:browser`: real Chrome, browser scenarios, CLI/MCP screenshots, and launch/attach cleanup passed. - `npm run verify:package`: installed package, CLI/MCP, setup backups and idempotence, and 116-tool catalog passed. - `npm run verify:hopper`: real Hopper operations and lifecycle verification passed after the body-coverage fix. - Real Ghidra verification was not performed. BREAKING CHANGE: The six listed tools and retired replay/orchestration/browser-scope inputs are removed. Old scenario fields are rejected explicitly. Stored evidence authority values remain readable for provenance. Follow-up to #555. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-16 21:13:57 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#2073
No description provided.