Model¶
The developer's by-kind index: where each CORA aggregate's I15-1 content lives, why it adds no catalog kinds and reinforces the existing model, and the record of what is deliberately deferred. Design-phase scaffold.
For the aggregate shapes see the architecture model and the per-BC modules.
| Aggregate (BC) | Where at I15-1 |
|---|---|
| Asset (Equipment) | the stage pages: Source, Sample |
| Capability, Method (Recipe) | Techniques |
| Enclosure (Enclosure) | the index |
| Zone, Conduit, Policy (Trust); Actor (Access) | Governance |
| Procedure, Recipe, Caution, Supply, Subject, Run, Campaign, Dataset, Decision | deferred (design-phase; see below) |
Why I15-1 adds no catalog kinds¶
I15-1 was picked partly expecting it to graduate the open settable-actuator affordance from its SafeOrBeamPositioner sample-environment devices. A source-level adversarial eval refuted that, and the refutation is the modelling content of this deployment:
SafeOrBeamPositionerfolds into Positioner. It is aMovablethat drives a motor to two named positions (SAFE / BEAM), which is the existing Positioner Role with Indexable named positions, not a new affordance. It is also not aTemperatureController: the dodal classes are named for temperature controllers (blower / cobra / cryostream) but model only the in/out-of-beam move, so calling themTemperatureControllerwould mirror the class name rather than the behaviour (intentional-modelling-not-mirroring). Modelled asLinearStage+ Positioner / Indexable (SAFEBEAM-1).- The
railfolds into Table (the TomoWISE DetectorGantry precedent), not a newRailFamily (RAIL-1). - The interlocks fold into the Enclosure permit, not an equipment Family (INTERLOCK-1).
So I15-1 is a reuse + reinforce deployment: it provides the third FluxMonitor deployment that completed its rule-of-three graduation into the catalog, and adds a third robot-as-Positioner instance, while coining no new vocabulary of its own. That is a result, not a gap: the value is confirming the existing model absorbs a new technique cleanly.
What is deliberately not here yet¶
- New Capabilities / Methods and vendor Models. The total-scattering Method is carried pending; no Model is bound.
- The robot as a Family. It presents the existing Positioner Role; shape deferred (ROBOT-1).
- Integration scenarios. No
test_i15_1_*.pyregisters I15-1 Assets. - Operations and experiment views. A runbook for an unmodelled beamline would be invention; see the index.