ores.compute

Table of Contents

1. Summary

ores.compute runs ORE Studio's distributed compute grid — hosts register with the cluster manager, receive batches assigned to them, and execute each run as a worker process. Structured as a composite component with five sub-components.

2. Sub-components

Sub-component Brief
ores.compute.api Domain types and NATS protocol schemas for the compute component.
ores.compute.client Engine package publisher — uploads packages with hash verification for shell and UI callers.
ores.compute.core Compute cluster management — app registration, batch dispatch, and result collection.
ores.compute.service NATS service entrypoint for the compute domain.
ores.compute.wrapper Compute worker wrapper — executes ORE risk runs and reports results to ores.compute.core.

3. Entity modules

Module Brief
ores.compute Logical entities for the compute namespace.

4. Audit record

The recurring component architecture audit ran on 2026-09-06. The triage of each finding is below.

  • Fixed. The client part had no modelling directory, overview, or diagram, and no row in the component registries. All are in place now. The group overview omitted the client row and truncated the core brief. Stale summaries in the System Model application page, the group overview, and the api overview now match the parts.
  • Recorded. The client part has no tests for its package publishing; a test needs shell or UI scaffolding, so it is not a mechanical fix. The wrapper function process_assignment is the complexity hotspot; a refactor pass starts from it. Both wait for a later pass.
  • Comments. Pass. Hand-written comments are rare and explain why. Generated files carry only template comments.
  • Complexity measure. 9607 NLOC over 466 functions at an average CCN of 2.0. One warning: process_assignment at CCN 17. Generated sources dominate the raw total. Read them as a template signal, not a component signal.

Emacs 29.3 (Org mode 9.6.15)