rust 1,849,384 · typescript 232,426 · javascript 131,078 · python 19,227 · 6,366 files · digest 815dcbacab85 · built in 1.4 s · crystals off
cre8-app-iot iot cargo crate
IotApp — the provable-IoT coordinator. A storeless composite that unifies device identity (Device.Sync), signed telemetry (Device.Reading), and proof (Device.VerifyReadingChain) behind Iot.{Onboard,Telemetry,Snapshot} — dispatched by connection name, no crate dep on Device. (2026-07-01).
Neighbourhood
Left: crates that declare this one. Right: crates it declares (dev-dependencies included). Edge width grows with resolved calls.
Declared but never named in this crate's source: cre8-runtime-core (normal).
Files
File call graph
Resolved calls between this crate's files, callers left of callees.
Heaviest functions
By call-graph weight (PageRank; 1.0 is the average function). 24 functions in all.
| function | kind | lines | cyclomatic | callers | callees | weight | crystal |
|---|---|---|---|---|---|---|---|
| connectsrc/connection.rs:53 | fn | 14 | 5 | 7 | 4 | 2.1 | |
| compose_snapshotsrc/connection.rs:179 | fn | 29 | 1 | 3 | 0 | 1.8 | |
| onboardsrc/connection.rs:73 | fn | 19 | 2 | 2 | 3 | 1.5 | |
| telemetrysrc/connection.rs:120 | fn | 25 | 5 | 2 | 2 | 1.5 | |
| snapshotsrc/connection.rs:153 | fn | 22 | 1 | 2 | 3 | 1.5 | |
| commandsrc/connection.rs:215 | fn | 22 | 4 | 2 | 2 | 1.5 | |
| capability_profile_from_inputsrc/connection.rs:97 | fn | 17 | 6 | 2 | 0 | 1.3 | |
| handle_iot_onboardsrc/connection.rs:240 | fn | 3 | 1 | 2 | 1 | 0.7 | |
| handle_iot_commandsrc/connection.rs:244 | fn | 3 | 1 | 2 | 1 | 0.7 | |
| handle_iot_telemetrysrc/connection.rs:248 | fn | 3 | 1 | 2 | 1 | 0.7 | |
| handle_iot_snapshotsrc/connection.rs:252 | fn | 3 | 1 | 2 | 1 | 0.7 | |
| IotApp::metasrc/app.rs:13 | trait impl | 3 | 1 | 0 | 0 | 0.5 | |
| IotApp::connectionssrc/app.rs:17 | trait impl | 23 | 5 | 0 | 5 | 0.5 | |
| IotApp::connectsrc/app.rs:41 | trait impl | 3 | 1 | 0 | 1 | 0.5 | |
| iot_app_declares_composite_connection_surfacesrc/app.rs:51 | fn | 10 | 1 | 0 | 0 | 0.5 | |
| capability_profile_prefers_array_then_wraps_singlesrc/connection.rs:263 | fn | 20 | 1 | 0 | 1 | 0.5 | |
| compose_snapshot_maps_all_three_sectionssrc/connection.rs:285 | fn | 16 | 1 | 0 | 1 | 0.5 | |
| compose_snapshot_degrades_when_sections_missingsrc/connection.rs:303 | fn | 11 | 1 | 0 | 1 | 0.5 | |
| onboard_reports_requested_shape_and_degrades_without_providersrc/connection.rs:322 | fn | 12 | 1 | 0 | 2 | 0.5 | |
| snapshot_is_wellformed_and_degraded_without_providersrc/connection.rs:336 | fn | 9 | 1 | 0 | 2 | 0.5 | |
| telemetry_validates_fields_before_dispatchsrc/connection.rs:347 | fn | 15 | 1 | 0 | 2 | 0.5 | |
| per_id_handlers_force_their_action_without_an_action_fieldsrc/connection.rs:364 | fn | 23 | 1 | 0 | 5 | 0.5 | |
| command_validates_fields_before_dispatchsrc/connection.rs:389 | fn | 5 | 1 | 0 | 2 | 0.5 | |
| unknown_action_lists_supportedsrc/connection.rs:396 | fn | 8 | 1 | 0 | 2 | 0.5 |
Outside the workspace
anyhow serde_json