Commit Graph

53 Commits

Author SHA1 Message Date
N0zoM1z0 77178bba54 feat(managed): project static evidence into application graph 2026-07-16 21:36:13 +08:00
morluto 0aef572a26 chore: merge main and resolve MCP contract conflicts 2026-07-16 20:42:14 +08:00
N0zoM1z0 8cbc125b93 feat(dotnet): verify managed native boundaries
Add the verify_managed_native_boundaries workflow for comparing authenticated inspect_managed_native_boundaries Evidence with supplied native export or function Evidence. The workflow verifies only P/Invoke declaration names against observed native symbols, keeps verified, inferred, contradicted, unresolved, and unsupported-native states explicit, and does not translate managed metadata tokens or RVAs into native addresses.

Expose schema-identical MCP and CLI surfaces, update managed workflow contracts, product catalog facts, TypeDoc output, README/localized docs, ADR status, package verification, and the REA analysis skill metadata for the 90-tool/50-command inventory.

Verification: npx vitest run tests/managedNativeVerification.test.ts --coverage=false; npm run typecheck; npm run docs:generate; npm run check (first run hit a load-sensitive sessionMcp timeout, isolated rerun passed); npx vitest run tests/sessionMcp.test.ts --coverage=false; npm run check; npm run knip; npm run jscpd; npm run scan:todos; npm run verify:managed; CXX=/usr/bin/g++-13 CC=/usr/bin/gcc-13 npm run verify:package.
2026-07-16 21:26:38 +09:00
morluto 0f2d01300a fix(package): accept expected doctor diagnostics 2026-07-16 20:26:25 +08:00
morluto ee1cd40405 feat(mcp)!: harden contracts and evidence references
BREAKING CHANGE: comparison tools now require session-owned Evidence IDs or approved bundle paths, and structured Evidence results use compact references.
2026-07-16 19:49:58 +08:00
N0zoM1z0 c506664744 feat(dotnet): import managed reconstructions 2026-07-16 20:37:42 +09:00
N0zoM1z0 5f66cfd57a feat(dotnet): add managed runtime correlation planning 2026-07-16 20:10:36 +09:00
N0zoM1z0 2b75fcfaac test(dotnet): add managed conformance verifier 2026-07-16 19:25:13 +09:00
N0zoM1z0 3fa2304bc7 feat(electron): map static process and IPC boundaries 2026-07-16 07:56:13 +09:00
N0zoM1z0 941d7101dd feat(session): add explicit provider registry and target binding
Introduce deterministic deep-provider discovery and immutable per-target routing while retaining disjoint artifact and native capability families.

Expose provider selection consistently through MCP, CLI, environment configuration, session status, prompt completion, typed diagnostics, and generated documentation. Preserve exact provider/profile provenance without request racing or transparent fallback.

Cover overlapping providers, ambiguity, rejection details, cancellation, restoration, package installation, and real Hopper target switching.
2026-07-15 22:13:48 +09:00
morluto acaf03056d test: keep package setup verification read-only 2026-07-15 06:40:23 +00:00
morluto 02f12b927a fix: address setup, upgrade, and process test regressions 2026-07-15 06:34:25 +00:00
morluto cfa110ccb4 fix(verify): reconcile PR-212/215/228 package E2E expectations
- Restore Linux hopper guards in scripts/verify-package.mjs so the packaged E2E handles the unsupported_hopper_build response on Linux.
- Keep the config symlink lifecycle check from PR-225 by preserving the pre-existing `existing` key when the failure-recovery test rewrites the cursor symlink target.
- Guard the packaged search command behind process.platform !== "linux".
- Adapt MCP current/batch verification to the Linux "not supported for unattended Linux analysis" rejection.
2026-07-14 23:00:11 +00:00
morluto d81687f383 fix(setup): omit aligned skill from plan 2026-07-14 22:25:48 +00:00
morluto 69744a421a fix(setup): configure every detected client 2026-07-14 22:25:43 +00:00
morluto 85285f1563 fix(setup): preserve client config symlinks 2026-07-14 22:23:59 +00:00
morluto a86da4ff3f fix(setup): omit aligned client configurations from plan
The setup plan was still advertising configure_client actions for clients
whose MCP registration already matched the desired command and Hopper
environment. As a result, an otherwise idempotent rerun requested
confirmation for changes that would not be applied.

- add SetupHost#clientNeedsConfigure to read a client config without
  mutating it
- filter detected clients in discoverSetupActions before building the plan
- align the package verifier's "aligned" run with the platform-specific
  status so Linux (where the fake Hopper path is unsupported) is expected
  to report needs_human while keeping an empty plan
2026-07-14 22:00:42 +00:00
N0zoM1z0 c50e51eb6f test(package): preserve unrelated symlink config 2026-07-14 21:41:33 +00:00
N0zoM1z0 8f7311285b test(setup): cover later clients after failure 2026-07-14 21:37:36 +00:00
N0zoM1z0 a5976396eb test(package): cover aligned setup plan 2026-07-14 21:37:36 +00:00
N0zoM1z0 d1ef7a5439 test(package): cover config symlink lifecycle 2026-07-14 21:37:36 +00:00
N0zoM1z0 6601e0cb7e test(application): verify packaged MCP replay 2026-07-14 21:35:10 +00:00
N0zoM1z0 be76f8090b feat: add web and Electron reverse-engineering workflows 2026-07-14 20:24:12 +09:00
N0zoM1z0 2c1ceabbf1 feat: add passive website reverse engineering 2026-07-14 12:27:13 +08:00
morluto 00c187e32b
fix(cli): return nonzero status for operation failures (#121) 2026-07-14 06:33:34 +08:00
morluto 977119f91b test(package): preserve unsupported host verification 2026-07-13 21:20:51 +00:00
morluto 75818d119e fix(linux): start Hopper demo sessions headlessly 2026-07-14 04:58:45 +08:00
morluto b394903b88 Merge remote-tracking branch 'origin/main' into feat/mcp-prompts-completion
# Conflicts:
#	scripts/verify-package.mjs
2026-07-14 04:55:38 +08:00
morluto a2076b47a6 fix(security): restrict investigation artifact inputs 2026-07-14 04:48:46 +08:00
morluto ee785ca9a9 Merge remote-tracking branch 'origin/main' into feat/persistent-workspace-investigation-runs
# Conflicts:
#	README.md
#	scripts/verify-package.mjs
#	src/cli.ts
#	src/domain/errors.ts
#	src/server/registerInvestigationTools.ts
#	tests/errors.test.ts
2026-07-14 04:28:14 +08:00
N0zoM1z0 65682ee65c fix(bridge): bound regex search work 2026-07-13 22:21:58 +08:00
N0zoM1z0 05fb9b17c9 test: strengthen MCP prompt acceptance coverage 2026-07-13 21:21:32 +08:00
N0zoM1z0 24c3adb553 feat: add guided MCP workflow prompts 2026-07-13 21:04:28 +08:00
N0zoM1z0 41366edd56 feat: add persistent cross-version investigation workspaces 2026-07-13 19:37:54 +08:00
morluto 3793889ce8 feat(setup): make installation explicit and safe 2026-07-13 15:13:59 +08:00
morluto 0d77a9f135 feat(cli): add self-upgrade command 2026-07-13 05:30:39 +00:00
morluto 4c54ff6bca fix(contracts)!: return structured workflow failures
Replace prose-encoded partial failures in batch decompilation, call graphs, and named xref lookup with discriminated structured results.

BREAKING CHANGE: batch_decompile, get_call_graph, and find_xrefs_to_name now return structured discriminated output shapes.
2026-07-13 05:03:47 +00:00
morluto c630f410b6 fix(cli): preserve function provider provenance 2026-07-13 03:34:57 +00:00
morluto b1912b18e1 feat(cli): align terminal workflows with MCP 2026-07-13 03:15:01 +00:00
morluto e651cb65db feat: add cross-platform installation lifecycle 2026-07-12 23:43:24 +00:00
morluto 993356b85a test: add package installation end-to-end coverage 2026-07-12 22:09:34 +00:00
morluto fbe8ec1f13 Expose historical source import through CLI 2026-07-12 21:34:05 +00:00
morluto 4ff4c11a00 Add evidence-backed investigation workflows 2026-07-12 21:12:18 +00:00
morluto b73558a7c9 Rename npm package to rea-agents 2026-07-12 20:49:30 +08:00
morluto cc8681a856 feat: add evidence-backed process investigations 2026-07-12 20:36:00 +08:00
morluto 4f18e26ee5 feat: evolve REA analysis platform 2026-07-12 19:32:13 +08:00
morluto 1f235cb52f docs: document the 43-tool workflow 2026-07-12 19:00:03 +08:00
morluto fc21c9a2d7 Simplify REA onboarding and app targeting 2026-07-12 12:26:16 +08:00
morluto 4c8b3341c2 Publish REA under the morluto scope 2026-07-12 09:51:30 +08:00
morluto 853a54799b Rename npm package to reaa 2026-07-12 09:28:54 +08:00