mirror of
https://github.com/morluto/rea.git
synced 2026-10-29 19:05:45 +00:00
Bind existing EVM CLI/MCP metadata and the legacy service factory through one static descriptor, and register the same selected service that owns cleanup. Preserve original names, schemas, inputs/full defaults, configuration, Evidence and injection identity.
Verified exact SDK catalog/fact parity across six real EVM pairs, 59 actual EVM CLI/MCP cases, six real cross-domain workflows, six actual Codex CLI fact/reference/lifecycle trials and relevant local checks. CI run 38283026233 succeeds for exact head d999d9874b. No token reduction from wiring or fully qualified resource claim; final counters remain unknown. Continues #2016.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
22 lines
1012 B
TypeScript
22 lines
1012 B
TypeScript
import { EvmInterfaceService } from "../application/evm/EvmInterfaceService.js";
|
|
import { EvmoleInterfaceProvider } from "../evm/EvmoleInterfaceProvider.js";
|
|
import { CLI_COMMANDS } from "../cliCommandNames.js";
|
|
import { INSPECT_EVM_INTERFACE_CONTRACT } from "../contracts/evm/evmToolContracts.js";
|
|
|
|
/** Compose offline interface analysis without import-time I/O or dependency acquisition. */
|
|
export const createEvmInterfaceService = (
|
|
environment: Readonly<NodeJS.ProcessEnv> = process.env,
|
|
): EvmInterfaceService =>
|
|
new EvmInterfaceService(new EvmoleInterfaceProvider(environment));
|
|
|
|
/**
|
|
* Static binding of the existing operation, command and fresh service factory.
|
|
* The host owns injected service identity and its retryable cleanup lifetime.
|
|
* Construction performs no acquisition, target I/O or import-time execution.
|
|
*/
|
|
export const evmInterfaceModule = {
|
|
contract: INSPECT_EVM_INTERFACE_CONTRACT,
|
|
cliCommand: CLI_COMMANDS.inspectEvmInterface,
|
|
create: createEvmInterfaceService,
|
|
} as const;
|