Design decisions: Chain of Thought

Context and consequences for a few choices in the prototype. Personal work only. Not a product plan and not employer systems.

Decision: execution graph is primary state

The graph is the investigation. Nodes hold typed references. The model requests tools; it does not carry science objects as prompt payload.

Decision: MCP over direct HTTP

MCP for tool contracts, remote federation without planner rewrites, and one loop for compute tools plus validated UI actions.

Decision: declarative data catalogue, no runtime discovery

Sources and tables are declared in config. The app never lists databases at runtime to build the catalogue.

Decision: provenance in the execution path

Provenance is recorded as the work runs, not reconstructed afterwards from logs.

Decision: fail closed on unsafe tool use

A false negative is a contractual breach, so the system fails closed.

Alex Benn ยท Technical overview