27. Immutable configuration graph and capability compiler
A configuration is a content-addressed declaration of installed occurrences, material state, software/calibration, ports, connections and controlled effectivity. It is neither the engineering design nor every millisecond of operating state. The capability…
Concept & directionLNK
A configuration is a content-addressed declaration of installed occurrences, material state, software/calibration, ports, connections and controlled effectivity. It is neither the engineering design nor every millisecond of operating state. The capability compiler evaluates a configuration together with health, resources, environment, authority and mode; it never stores capability as an unqualified vehicle boolean.
#27.1 ConfigurationSnapshot v1
Immutable configuration snapshot - illustrative JSON
{
"configurationId": "cfg:sha256:...",
"assetId": "018f...aa",
"predecessorIds": ["cfg:sha256:previous"],
"creatingEventId": "record:modification-execution",
"effective": {"start": "2026-07-22T10:00:00Z", "end": null},
"packLock": [{"packId": "rtracer.domain.road", "version": "2.1.0", "digest": "sha256:..."}],
"nodes": [{"occurrenceId": "occ:...", "definitionRef": "part:...", "identityRef": "entity:..."}],
"edges": [{"kind": "installedAt", "from": "occ:...", "to": "slot:rear-axle", "effectivity": "true"}],
"software": [{"artifactRef": "artifact:...", "targetController": "occ:ecu-1", "activationState": "active"}],
"calibrations": [{"artifactRef": "artifact:...", "targetFeature": "feature:steering"}],
"configurationDigest": "sha256:..."
}#27.2 Typed graph families
| Graph | Allowed cycles | Critical constraints |
|---|---|---|
| physical composition | no | One node cannot contain itself; exclusive placements cannot overlap in valid time |
| structural/load path | only if mechanically meaningful and declared | Ports, direction, load cases, limits and test evidence compatible |
| energy/resource flow | yes | Typed form/carrier, direction, conversion, recovery and protection; no free-energy derivation |
| fluid/material flow | yes | Substance compatibility, pressure/temperature, containment and contamination constraints |
| data/communication | yes | Protocol/profile, trust zone, direction, bandwidth, latency, integrity and availability |
| control/command | yes with arbitration | Function scope, controller authority, feedback, safety partition and fallback |
| thermal | yes | Source/sink, conduction/convection/radiation relation, limits and operating state |
| kinematic/joint | yes for closed chains | Degrees of freedom, limits, frames, actuators, singularities and solver profile |
| functional dependency | yes | Dependency type, mode, minimum multiplicity, degraded alternatives and proof |
| temporary assembly/formation | no containment merge | Members retain identity; coupling, membership and command roles time-bounded |
#27.3 Port compatibility contract
| Port family | Compatibility dimensions | Connection adds |
|---|---|---|
| mechanical | geometry/mating profile, load axes, fastener/coupler, stiffness, clearance, environment | connection load envelope and inspection evidence |
| electrical power | voltage/frequency/phase/current, polarity, connector, isolation, grounding, fault level | protection coordination and energy direction |
| fluid | substance family, size, pressure, temperature, flow direction, seal/material compatibility | purity, leakage and contamination controls |
| data | physical/link/application profile, addressing, schema, bandwidth, latency, security and version | gateway transformations and loss manifest |
| control | command/feedback semantics, rate, authority, safe state, watchdog and arbitration | implementation lock and independent safety boundary |
| optical/RF/acoustic | band, power, aperture, modulation, field of view, timing and interference limits | jurisdiction, exposure and coexistence constraints |
| payload/tool | retention, pose/frame, loads, service ports, release method and hazard class | payload identity, mission grant and separation state |
| human/biological | fit, contact pressure, hygiene, accessibility, consent and emergency release | person remains principal/beneficiary, never component property |
#27.4 Effectivity expression and three-valued evaluation
Effectivity evaluator contract
applies(node_or_edge, context) -> TRUE | FALSE | UNKNOWN | ERROR
Expression := allOf | anyOf | not | compare | present | versionRange |
timeRange | jurisdictionIn | modeIn | configurationHas |
packTermMatches | quantityWithin | relationshipExists
Rules:
UNKNOWN never authorizes, installs, removes or releases an item.
ERROR quarantines the affected compilation path.
Evaluation receipt binds expression digest, context record IDs,
evaluator version, result and unresolved inputs.#27.5 Capability compilation
- Select the exact configuration, operating mode, mission phase, domain/environment, location and valid/known time.
- Match capability definitions whose structural, interface, software, calibration and pack requirements are realized.
- Evaluate health, fault, maintenance, resource, payload, communication, weather and infrastructure preconditions.
- Evaluate legal/organizational approval and function-scoped actor authority separately from physical availability.
- Resolve mutually exclusive modes, dependencies, alternatives, degradations and arbitration constraints.
- Emit designed, realized, available, authorized and engaged states independently with explanations and input IDs.
- Cache only under the digest of configuration, context, compiler, policy, pack lock and source checkpoint; otherwise recompute.
No giant capability bitset
A bitset cannot explain whether towing, hovering, autonomous docking, filming or bidding is possible for this configuration, actor, environment and moment. Capability results are derived records with a proof graph, not identity attributes.#27.6 Configuration diff and merge
| Operation | Required semantics | Invalid shortcut |
|---|---|---|
| add occurrence | new occurrence ID, definition/instance identity, placement, ports, effectivity and evidence | Copying a part row without provenance |
| remove occurrence | removed occurrence, reason, disposition, meters/condition and effective time | Deleting it from history |
| replace | linked remove+add, equivalence/substitution basis, serial/lot transfer and tests | Mutating serial number in place |
| move/reorient | old/new placement and frame transform; evaluate connection/load changes | Changing coordinates without event |
| connect/disconnect | typed ports, compatibility result, procedure, checks and evidence | Implicit relation inferred from proximity |
| software/calibration | old/new artifact, target, activation, compatibility, approval, rollback and test | Editing a current-version string |
| material/consumable | quantity balance, batch/mixture provenance, location and resulting state | Treating fuel or paint as reusable component |
| branch/merge | multiple predecessor snapshots, conflict resolution, independent source histories | Last-write-wins snapshot merge |