r-io suiter-io suitereference docs
← Documentation home
Reference / Development plan

Development plan

The end-to-end scenarios as they are played today on the development branch, with their checkpoints in order. This page follows the plan and changes with it; the Scenario sheets give the last result of each one. The plan of a published release stays on the Release plan page.

01 · RP-01-01

IMT Crisis default game scenario

Game scenario: « Default Game Scenario », 4 dates · 8 DATA steps, 22 planned sensors; one r-iosemit Next step moves the whole scenario forward by one date and sends 8 launchDataSetOnTopic (r-iota has no step button). The 4 dates are played:

DateTimeline itemMoving values
20:48:48message « Energy company social media » (Margaret Parker): Due to high electricity demand, there is a risk of power outages in your area.Rapsodee gas 113.9
20:59:57planned actuality « Analyze the gas leak at Rapsodee »Rapsodee gas 643.5 → 656.5 (threshold 650) → CEP rule R1 of the gas sensor
21:09:04actuality « Presence detected at Iomega »Main Entrance intrusion → true → CEP rule R1 of the intrusion sensor
21:27:02actuality « Alert detected at Iomega »Iomega radar → true → reflex event, drone photo analysed by the LLM

Checkpoints, in order:

#ActionExpected result
0start-up: Projects workspace → IMT Albi Crisis → Load → « create a specific collaboration ? » No → OK« Use-case successfully loaded !!! »; « Project List »: IMT Albi Crisis, 12 launchers
0br-ioga « Edit project », read only, CancelIA Provider Albert, IA Model Mistral-small-3-2-24b-instruct-2506
1r-ioda (launcher), Context And Partners tabActive filter only; 69 active nodes: Albi, École des mines and its buildings (Gymnase, Rapsodee, ICA, Incubator, Iomega, Main Building), 25 people (Emily Hernandez and Oliver Taylor with phone, watch, GPS, temperature, heart rate), dogs Rocky and Tyson, SDIS 81, Police station Albi, sensors, Gas boiler, 4 cameras, 3 pedestrian networks; the diagram is larger than the screen
2r-ioplay (launcher)World map, satellite view centred on the École: green footprint, coloured buildings, triangular purple area to the south-east; 42 markers; view lock padlock
3r-iosemit (launcher), STORY tab« Default Game Scenario »; Story settings: Current timeline, 23/09/2026 20:44:44 → 21:44:44, French; Story guidance « Burglars try to create a diversion… Rapsodee… Iomega… IT equipment »; 1 social message; Invented story present; Story narrator (FR)
4r-iosemit TIMELINE → Next step (date 1)log: 8 launchDataSetOnTopic, 2 calls to albert.api.etalab.gouv.fr in HTTP 200
5r-iotalive: 1 ALERTS TO VALIDATE, FIND SOLUTION(S) greyed out, yellow status rgb(255, 238, 50)
6OPEN DETAILS« Problems found », 1 item: Power outages / Risk / « Prevents Power outages »; SIMILAR TYPE Risk; NEAREST INSTANCE « Risk of power outage (near: 0.95) »; Delete / Validate
7Validate → Save1 SURE ALERTS, FIND SOLUTION(S) enabled, red status; risk « ⚠ 70 % » south-west of the site
8r-iosemit Next step (date 2), then r-iotalog: 8 launchDataSetOnTopic, CEP rule R1 of the gas sensor (node …_rule_R1_…, edges Impacts Rapsodee and Near); r-iota live: 2 SURE ALERTS
9OPEN DETAILSas expected: 2 items, Delete only — Power outages / Risk / « Prevents Power outages » / « The sentence explicitly states that due to high electricity demand… »; Analyze the gas leak at Rapsodee / Toxic_Gas_Alert / « Treats Analyze the gas leak »; then Save (state unchanged)
10r-iosemit Next step (date 3), then r-iotalog: 8 launchDataSetOnTopic, no LLM; r-iota live: 5 SURE ALERTS, « Reflex Events Detected !!! », Cameras panel « None camera » (camera off: expected); 5 red pulsars rgb(231, 30, 30): Prevents Power outages, Treats Analyze the gas leak, Contact the center manager, Treats Presence detected, Secured the site
11OPEN DETAILSas expected: 5 items, Delete only — Power outages / Risk; Analyze the gas leak at Rapsodee / Toxic_Gas_Alert; Presence detected at Iomega / Intrusion_Alert × 3 (Contact the center manager, Treats Presence detected, Secured the site); close without change (name « Presence detected » before the RIOSUITE-1232 fix)
12r-iosemit Next step (date 4), then r-iotar-iosemit: end of the timeline, Next step greyed out; log: 8 launchDataSetOnTopic, 2 Albert calls in 200; r-iota: 6 SURE ALERTS, drone photo thumbnail « Wait picture analysis (IA from ALBERT)... »
13wait for the end of the analysis (1 to 2 min)5 SURE ALERTS + 2 ALERTS TO VALIDATE; thumbnail: Retry and « 2 problems found !!! »; yellow circle in the green area
14click the number « 2 » of the thumbnail« Problems to resolve from 'Alert detected at Iomega' » (photo, Open button), 2 items Risk produced by the LLM (names vary): Drone Collision (NEAREST « None (near: 0) ») and Loss of Control (NEAREST « Risk of power outage (near: 0.75) »)
15Drone Collision: PROBLEM TYPE pencil → « Edit Type » → Actuality → SavePROBLEM TYPE Actuality; SIMILAR TYPE Intrusion_Alert (Damage); NEAREST INSTANCE « Unidentified flying object (near: 0.85) »
16Validate on Drone Collision, Delete on the other problem, Save6 SURE ALERTS; thumbnail « 1 problems found !!! »; 6th red pulsar « Treats Drone Collision »; Drone Collision marker in the green area
17OPEN DETAILS, then Saveas expected: 6 items, Delete only — the 5 of step 11 + Drone Collision / Intrusion_Alert / « Treats Drone Collision » with the photo and « The image shows a drone in flight… »
18FIND SOLUTION(S) → Advanced options strategy = YES → Findpreselected strategy Drools - Crisis Satisfaction Strategy, « Deduce and run » at YES
19advanced options window: scroll through it entirelyas expected, as is: title « Drools - Simple Satisfaction Strategy »; FIRST_GOOD_SOLUTION, max 30; Actualities: Analyze the gas leak at Rapsodee → Confirm gas leak; Presence detected → Contact the center manager, Secured the site, Arrest the suspects, Arrest the suspects with the surveillance dog (all checked); Potentialities: Power outages (Emerging Risk), Preventive and Corrective → Relieve the electricity grid (Electric vehicle charging circuit breaker), Activate another power source (Circuit breaker for all circuits except IT and communications, Start the generator); 5 objectives not prioritized (Treats Analyze the gas leak, Contact the center manager, Secured the site, Treats Presence detected, Relieve the electricity grid); Implementation Potentiality empty; PERSON_FIRST; Insert move tasks NO; Default solver; Drone Collision absent
20Deducethe deduction starts (« At least one actor provides each functions for each plans »)
21—OK since 2026-10-15 (RIOSUITE-1232 fixed): no « Error » dialog, straight to « Starting supervision... » (~50 s after Deduce). Behaviour before the fix, to be treated as a failure if it comes back: « Error » dialog « … have no 'Impacts' relationship to any resource: Presence detected (objective(s): 'Contact the center manager', 'Treats Presence detected', 'Secured the site') » — the CEP intrusion actuality only has Near, not Impacts → Iomega. Workaround: add the edge by hand, redo steps 18 to 20
22wait for the supervision (~20 s)log: deduceSolutionASync, deploySolution, selectSolution, superviseSolution in 200, 0 ERROR; Event_Flow condition Creates("Power outages"); cockpit « Supervision active », blue status, objectives 0/6, « 0 achieved tasks on 23 expected (total: 25) »; « Started at » = time of the day (a transient « 1970-01-01 » display is not a failure)
23r-iota, Process tab (since 2026-10-15 the tabs are only icons: Process = account_tree, cockpit = speed)Start → Nominal SubTask #f5b041 → CE flow → corrective « Circuit breaker for all circuits except IT and communications » neutral → End
24r-iosemit: TIMELINE, then DATATIMELINE at the end of the timeline; DATA → Sensors: 22 sensors, « Connected »
25DATA → Potentialities Management → refreshbefore refresh: « No active emerging or intrinsic potentiality »; after: Power outages (EMERGING) at 70 %, actuality to activate « Power outage »
26Power outages slider to 100 %« 100 % », « Power outage » activated; log [EVENT-FLOW] Nominal SubTask_… : rule fired, launching recovery Circuit breaker for all circuits…
27r-iota, without reloadinggraph: the corrective turns orange #f5b041; map: as expected, the 100 % risk became an actuality — Power outages risk frozen and no longer drawn, « Power outage » actuality (red beacon) with « Treats Power outage » and its blue pulsar rgb(50, 101, 255); the remaining « ⚠ 60 % » label is the probability of Drone Collision
28backend log, over the whole run0 Impossible to find scope, 0 TEMP-DEBUG, 0 hexString can not be null; only ERROR allowed: getRiopiotContext (camera off)
02 · RP-01-02

IMT Crisis conditions scenario: mute, deletion and exclusive conditions

Game scenario: « Default Game Scenario » modified without saving it (no click on the floppy disk); the mute and the deletions only apply to the playback session.

#ActionExpected result
0start-up with IMT Albi Crisis« Use-case successfully loaded !!! »; « Project List »: IMT Albi Crisis
1r-iosemit (launcher), TIMELINE tabDefault Game Scenario, 23/09/2026 20:44:44 → 21:44:44, header « 4 dates · 8 DATA steps »; 4 cards: message Energy company social media (20:48:48), Analyze the gas leak at Rapsodee (20:59:57), Presence detected at Iomega (21:09:04), Alert detected at Iomega (21:27:02)
2🔈 icon (aria-label="Mute") of the Energy company social media cardcard greyed out and struck through (class muted), 🔇 icon « Muted: kept on the timeline but not played », hollow dot on the timeline; « 4 dates · 8 DATA steps · 1 muted »
3click Presence detected at Iomega → « Planned actuality » dialog (Activation, « Actualities produced by the same CEP rule are scheduled and removed together ») → Remove scheduled transitioncard removed; « 3 dates · 6 DATA steps · 1 muted »
4same for Alert detected at Iomega (the dialog also shows the reflex photo « Photo-Cam-Radar-iomega »)card removed; « 2 dates · 4 DATA steps · 1 muted »; no refusal
5Next step (date 1, muted message)log: [PLAYBACK] checkpoint … before step 0, 4 launchDataSetOnTopic in 200, no LLM call (neither Albert, OpenAI nor Mistral), no trace of the message text, 0 ERROR; the only ML lines are WARN ChatGPTPredictEngine: Not implemented !!! (ordinary sensor events)
6Next step (date 2)log: 4 launchDataSetOnTopic in 200, CEP rule R1 of the gas sensor (…_rule_R1_…, edges Near and Impacts to Rapsodee), 0 ERROR; r-iosemit: Next step greyed out (end of the timeline)
7r-iota (launcher)bundle ng-version 22.x; 1 SURE ALERTS, FIND SOLUTION(S) enabled, red status; a single pulsar « Treats Analyze the gas leak »; neither Power outages nor Iomega alert
8OPEN DETAILS → Save« Problems found », 1 item: Analyze the gas leak at Rapsodee / Toxic_Gas_Alert / « Treats Analyze the gas leak »; state unchanged after Save
9FIND SOLUTION(S), default settings → FindDrools - Crisis Satisfaction Strategy, entries at NO (Prioritize objectives, Include forecast, Advanced options, Insert move tasks), Deduce and run at YES; log: deduceSolutionASync, deploySolution, selectSolution, superviseSolution in 200; 0 ERROR, 0 ConcurrentModificationException, 0 hexString; « Deduction, deployment and supervision completed »; cockpit « Supervision active », 0/1, 11 tasks
10r-iota, Process tab, zoom out twiceStart → Confirm gas leak → two CE flows to Cut off the local gas valve and Cut off the school gas supply (never chained), two otherwise flows Confirm gas leak → End, no __bypass__ flow. Local valve branch: Grab the toolbox, Report the damage, Event report to the center team → End (order varies from one deduction to the next; on 2026-10-16: Grab → Report → Event report → End). School supply branch: Secure equipment → Repair gas installation → End; Retrieve information about the event → Validate the message… → Send a message to colleagues → End. No join between the two branches (Report the damage only depends on the local valve branch, since the fix of defect no. 2, checked on 2026-10-16)
11r-ioga to-do list11 tasks; Confirm gas leak started (orange); the two cut-offs planned on the same slot
12Confirm gas leak → Accept → CONFIRMED GAS LEAK = Yes and repairable → Donelog: [SEQUENCE-FLOW-CONDITION] Confirm gas leak → local gas valve true, → school gas supply false, → End (otherwise) true and false; engine: enter in node: Cut off the local gas valve, no enter in node: Cut off the school gas supply; to-do list: Confirm gas leak green, local valve orange, school supply grey; r-iota: Confirm gas leak node green #31964e, local valve orange #f5b041, objectives 0/1, blue pulsar rgb(50, 101, 255) (an objective is only reached once its whole task graph is done, since 2026-10-15; « 1/1, orange pulsar » at this point would be a regression)
13validate in the to-do list every started task (Accept → Done)the 4 tasks of the local valve branch done (order set by the deduction, on 2026-10-16: Cut off the local gas valve, Grab the toolbox, Report the damage, Event report to the center team); the 6 tasks of the school supply branch never started; engine End of join, end of execution; 0 ERROR; r-iota « No alert detected !!! », green status, RESOLVED / TARGET 1 / 1, orange pulsar rgb(245, 176, 65)
14r-iota → Delete positive deviations (add_circle) → Delete → refresha single « Positive Deviation Analysis » dialog: OBJECTIVES Treats Analyze the gas leak and ACTUALITIES Analyze the gas leak at Rapsodee, both at YES; deleteModels 200; log supervision of … ended: processes ended and no ACTIVE objective left (~10 s); after refresh: no pulsar, no add_circle button, « No alert detected », green status
15r-ioda (launcher), Objectives tabActive filter: only « Default Objectives Manager »; with Freeze: only the frozen nodes of the use case (« Load new configuration », « Equipment signal off »); neither the gas objective nor the gas actuality, active or frozen
03 · RP-01-03

IMT Crisis: tasks on the field, real or simulated (r-io4U, r-ioga, Move, Wait)

Game scenario: « Default Game Scenario » modified without saving it; the changes of the TASKS tab, however, are saved in the open scenario (simulations).

#ActionExpected result
0start-up with IMT Albi Crisis« Project List »: IMT Albi Crisis, r-iosemit and r-iota launchers
1r-iosemit, TIMELINE tab: mute the Energy company social media message, Presence detected at Iomega and Alert detected at Iomega« 4 dates · 8 DATA steps · 3 muted »
2Next step × 2gas CEP rule R1; 0 ERROR
3r-iota1 SURE ALERTS, FIND SOLUTION(S) enabled
4FIND SOLUTION(S): Crisis, Insert move tasks = YES, Insert wait tasks = YES → Find« Deduction, deployment and supervision completed »; 16 tasks, including 4 Move and 1 Wait; log Simulated moves … 4 generated
5r-iosemit, TASKS tab16 rows: actor with its icon, status (Not started, Waiting for acceptance…), Expected / Simulated sub-tables with KPIL icons; Simulated = middle of the expected interval; tooltip on On
6output of Confirm gas leak → Yes and repairable; Move of Emily → another path, ×8value kept (edited); Move: expected 613 m / 446 s, simulated 891 m / 646 s
7r-io4U: Move to Confirm gas leak → Accept2D/3D preview of the path and the ghost; after Accept, position followed live (ahead/late, on/off the path)
8arrivalreal path replayed, field values 652 s / 809 m in red (> +20 %), Done enabled → Done
9r-io4U: Confirm gas leak → Acceptexpected values before, field values after, output filled with Yes and repairable; Done → repair branch
10r-io4U: Cut off the local gas valve → Accept, sheet openDone greyed out, then the values arrive in the open sheet (~0.5 s) and Done becomes enabled → Done
11r-ioga to-do listsame tasks, actor (person, good or group) with photo and tooltip; Wait of 470 s of Alice before Send a message to colleagues (branch not taken: stays planned)
12r-ioga: Grab the toolbox → Acceptno call to r-iosemit from r-ioga; field values received by event; Done enabled → Done
13r-iosemit TASKS: uncheck On on Report the damage; r-ioga: Acceptno simulated value; duration measured, remaining value to type; Done enabled once typed → Done
14Event report to the center team → Accept → Doneend of the process; TASKS: every task of the branch Done
15r-iota + log« No alert detected », green status; 0 ERROR (except PhilipsHue)
04 · RP-02

Exception_Flow on an implementation risk

Checkpoints, in order (wait 15 to 25 s after each step before reading r-ioda, r-iota or r-ioga):

#CheckExpected
0start-upIMT Albi Healthcare in « Project List », 12 launchers
1r-iocal« Treat Routine checkup of James Miller » Planned in « My default planning »
2r-ioda, Objectives tab (Active filter only); r-iota« Treat Routine checkup of James Miller », « Routine checkup of James Miller -impacts: Iomega- », « My default planning »; r-iota: 1 SURE ALERTS
3r-iosemit, 1 step (« sensor not started » → Yes); r-ioda« Danger of Electrical Failure » and 3 risks at probability: 0 appear: « Risk of software unavailability », « … for Blood Test Request Function », « … for Preparation of equipment Function »
42nd step; r-iodathe 3 risks at 0.33. The parent risk is renamed by the rule « Risk of software unavailability at École des mines d'Albi-Carmaux »
53rd step; r-ioda; logthe 3 risks at 0.66; exactly 3 POST launchDataSetOnTopic, 0 ERROR
6r-iota FIND SOLUTION(S), preselected strategy, Deduce and run = YESstrategy Drools - Healthcare Satisfaction Strategy; « total: 8 »; 1 POST selectSolution; 3 edge_exception_flow_* edges published; graph: Blood test Request in #f5b041, the 3 correctives neutral
7r-ioga, to-do listTotal tasks 8; Blood test Request orange rgb(236, 131, 47), the 7 others grey rgb(122, 117, 117)
84th step; r-iodathe risks disappear (frozen); « Sofware unavailable », « Healthcare software unavailability for Blood Test Request Function », « Healthcare sofware unavailability for Preparation of equipment Function » appear
9r-iota map2 blue pulsars rgb(50, 101, 255): « Treat Routine checkup of James Miller » and « Sofware unavailable »
10r-iota graph, without reloadingBlood test Request #d50000; Paper Record and White Board Centralisation #f5b041; Edition by Handwritten note neutral
11r-ioga, to-do listBlood test Request red rgb(218, 45, 45); Paper Record and White Board Centralisation orange rgb(236, 131, 47), started (-> ???); the 5 others grey
12backend log[EXCEPTION-FLOW] Blood test Request … 2 rule(s) became true while running; Impossible to find scope 0; TEMP-DEBUG 0; a single ERROR allowed: HumantaskSOAPImpl « Nominal task replaced by recovery » (the normal replacement of the task, logged as an error)
05 · RP-03

Crisis Event Show Parc des Princes: three successive incidents

Checkpoints, in order (wait ~15 s after each Next step before reading r-iota):

#CheckExpected
0start-upCrisis Event Show Parc des Princes in « Project List », Collaborative/Crisis domains, 9 extensions, 12 launchers
1r-ioda, Context And Partners tabthe diagram shows Stade du Parc des Princes, Parc des Princes, Paris and the staff with their roles (Marc Dubois, Camille Leroy, Lucas Bernard…)
2r-ioplay, MAP → World, then the stadium 3D view (last entry of the selector, « Stade du Parc des Princes › 3D view »)r-ioplay opens on the « Parc des Princes » plan; World: Paris, stadium to the south-west; 3D: the stadium model (WebGL canvas) and the MOVE / LOOK / ALT / ZOOM panel
3r-iotaNo alert detected !!!, green status rgb(59, 180, 46)
4r-iosemit: Full Scenario, 3 dates · 6 DATA steps; Next stepr-iota 2 SURE ALERTS, red status; 2 red pulsars rgb(231, 30, 30) on Gate B, titles Treats Door Breakdown and Treats Crowd Orientation; OPEN DETAILS: 2 items Door Breakdown on Gate B (Alert) with these two objectives
5FIND SOLUTION(S), preselected strategy Drools - Crisis Satisfaction Strategy, Find« Deduction, deployment and supervision completed. »; total: 10; blue status and pulsars rgb(50, 101, 255); graph: 5 tasks #f5b041 in parallel (Identify the fault, Ask an agent to check if an IT problem…, Check the status of the ticketing system, Ask an agent to check the technique on door, Request door closure)
6r-ioga To Do ListTotal tasks 10; each started task (orange) is clickable: « To accept » dialog → Accept → « Accepted » → Done; after Confirm door closure, the 4 reorientation tasks turn orange; r-iota graph live (green #31964e / orange)
7r-iota after the 10 tasksorange pulsars rgb(245, 176, 65) on Gate B (the status dot is green), « RESOLVED / TARGET 2 / 2 », « 10 achieved tasks on 10 expected »; Delete positive deviations button present
8Delete positive deviations → Delete → Refreshobjectives deleted, pulsars and button gone; log supervision of … ended: processes ended and no ACTIVE objective left
9r-ioda, Objectives tab, Active filter (after reloading)no more Door Breakdown on Gate B actuality; only Default Objectives Manager nodes remain (one per deduction played: expected)
10Next step (16:17:44)r-iota 2 SURE ALERTS: Broken Seat number 11 with Treats Spectateur and with Treats Broken Seat; red pulsars in the centre of the stadium
11FIND SOLUTION(S) → Find; to-do listtotal: 7 = 7 new tasks (Total tasks 17); all completed; orange pulsars
12Delete positive deviationsobjectives deleted, and Broken Seat number 11 deleted
13Next step (16:36:02)r-iota 1 SURE ALERTS: Metro line breakdown at Aera 2 with Treats Metro line breakdown
14FIND SOLUTION(S) → Find; to-do list; Delete positive deviationstotal: 6 (Total tasks 23); orange pulsar; the dialog lists the objective and the actuality; after Delete: « No alert detected », r-ioda without any of the three actualities (three Default Objectives Manager, one per deduction: expected)
15backend log0 ERROR; 3 POST selectSolution; 0 hexString can not be null
06 · RP-04

Generate a use case from a document (Tarbes Crisis)

Checkpoints, in order:

#CheckExpected
0start-up« Use-case successfully loaded !!! »; Tarbes Crisis in « Project List », 12 launchers; log EmbeddingStoreIngestor « Finished storing 5 text segments »
1r-ioga « Edit project » → IA & RAG Knowledge documents, then CancelIA Provider Openai, IA Model Gpt-5.5; RAG base: Tarbes_Crisis_Case_Study_Context_Form.pdf (506.9 KB); note with the here link to /r-ioga/webjars/app/share/assets/docs/Template_Case_Study_Context_Form.pdf
2forms (reading, outside the r-io suite applications)blank: 3 pages (city, sites, goods, sensors, roles; context; contacts); Tarbes: TARBES, Town Hall site, Main Building and Parking P1 (GeoJSON), SS_MB_1 SMOKE sensor fixed on Main Building, Alice Johnson (Security agent) and Emma Thomson (Town hall secretary) acting on the Town Hall
3r-ioda Context And Partnersempty model
4AI Creator Assistantsentence « Your RAG is activated… here »
5here → Find Context and Partnerschecked by default: Sensor, Territory, Person, Role, Building; « Use Web Research For Unknown Roles » at NO
6Find« LLM Reasoning » Completed in less than 60 s, 11 agents DONE; summary: Sensor 1, Person 2, Building 1, Territory 2, Role 2, Function ≥ 3, Model nodes 13; api.openai.com calls all in 200; ModelController COMPLETE (file log)
7preview13 nodes, 12 edges: SS_MB_1 Fixed_Onto Main Building Fixed_Onto Town Hall Fixed_Onto TARBES; Alice Johnson and Emma Thomson Acts_On Town Hall, Has Security agent / Town hall secretary; Town hall secretary Provides its functions (names vary)
8Push (ACTIVE) → « Recommandation » → Yessynchronisations in 200, 0 ERROR, no « Could not find source or target territory »; Active: 6 nodes, 5 edges, labels « Role: Security agent » / « Role: Town hall secretary » under the people; Freeze: Town hall secretary and its functions
9r-iosemit« No game scenario yet »; Create a scenario « Smoke in the Town Hall » → Save
10TIMELINE → Add an actuality or a message…Sensor actualities 1: Fire detected at Main Building, 📍 Main Building, 📡 SS_MB_1, SS_MB_1 R1 · false → true; date 13:00 → Save → « 1 dates · 2 DATA steps »; save the scenario (save icon)
11DATA tabSS_MB_1, DEDICATED - SMOKE, Connected, CREATED, dataset smoke_in_the_town_hall_ss_mb_1
12Next stepstartSensor and 2 launchDataSetOnTopic in 200; « events received 2 »; log [DEDUCTION-PUBLISH] of an actuality …_rule_R1_… Near the clone of node_5918a7c4…
13r-iota1 SURE ALERTS, red status rgb(248, 7, 7), red pulsar rgb(231, 30, 30) « Treats Fire detected », fire on Main Building; OPEN DETAILS: Fire detected at Main Building / Fire_Alert / Treats Fire detected → Cancel (validate nothing)
14r-iota FIND SOLUTION(S), preselected strategy Drools - Crisis Satisfaction Strategy, Find« Deduction, deployment and supervision completed. » in ~10 s; total: 2; blue status and pulsar rgb(50, 101, 255) « Treats Fire detected »; graph Start → Activate fire alarm → Use a fire extinguisher on the fire → End
15deduction log[DEBUG-ACTOR-ELIGIBILITY] task='Activate fire alarm' requiredActorTypes=[Security agent] → afterRanker=[Alice Johnson]; actingResourceIds = the two people of the document
16r-ioga To Do ListTotal tasks 2; Activate fire alarm (2 min) then Use a fire extinguisher on the fire (5 min), actor Alice Johnson [Security agent]; each one: click → Accept → Done; the second starts when the first is done
17r-iota after the 2 tasksorange pulsar rgb(245, 176, 65) « Treats Fire detected », green status dot; dashboard « RESOLVED / TARGET 1 / 1 »; graph: both tasks green
18capture of the final processexport of the SVG of the r-iota graph (app-solution-graph) on a dark background, readable labels, two green tasks
19backend log0 ERROR
07 · RP-05

Hello world: create a use case from scratch (Fire at Albi Cathedral)

Checkpoints, in order:

#CheckExpected
0r-ioga, Create project → Crisis, name Fire at Albi Cathedral, Clear all references, valid AI providerthe project appears in « Project List », empty REFERENCES column, 12 launchers. In edit mode, the name field is read only
1r-ioda Context And Partners, AI Creator Territory « Albi » (City), then Building « Albi Cathedral »2 nodes with their photo (no empty icon); building « Sainte-Cecile Cathedral of Albi »
2right click on the cathedral → Fixed_Onto → Albiedge created; log [DEDUCTION-PUBLISH] create edge … Fixed_Onto … created=true
2br-ioplay, launched from « Project List »the map opens on the outline of the Albi municipality; zooming on the old town (bank of the Tarn), the cathedral footprint matches the building of the satellite view (shape colours change from one run to the next) (≈ 43.9283 / 2.1426)
3AI Creator Role « Firefighter », Push, Freeze recommendation → YesFreeze filter only: Firefighter and ~6 functions, including Extinguish fires; no 500 on inventRoles
4Provides → Function « Confirm Fire », Radio output Fire Confirmed (Yes/No); right click on Extinguish fires → Needs to Confirm Fire, with the short condition @Fire Confirmed[Confirm Fire] == "Yes" (expression only, without boolean …;)@ autocompletion offers @Fire Confirmed[Confirm Fire] output · radio; the condition is read back unchanged when the edge is reopened; the edge carries a CE badge and hovering it shows the code
5AI Creator Person, 1 person, Firefighter role, located in Albi; open the person, rename it Owen Hartley for a man, Olivia Hartley for a woman (same login); the dialog title follows the new name, REQUIRED INFORMATION → ACTIONS → Generate corresponding user → Save, then Save the person1 active person; « Register … as user » dialog: login ohartley, default password displayed; the person has an Assigned_To edge to a User node (checkable in Neo4j); the Generate button is then disabled
6Objectives tab, Freeze only, Fire_Alert palette « Fire in Albi Cathedral », Generate associated objectivefrozen objective « Treats Fire in Albi Cathedral », linked by Treats; no « Refactore 2026 » exception
7objective → Broken relations Satisfies → Add → Extinguish firesthe Extinguish fires line is present when reopened
8AI Creator Sensor Dedicated / Smoke / event type « Fire In Albi Cathedral » / Fixed Onto Asset cathedral; renamed « Smoke sensor of Albi Cathedral »CONFIGURATION: MAX threshold referencing « Fire in Albi Cathedral (FREEZE, Fire_Alert) »; push in 200 (no SensorModelsPopulateInterceptor NPE)
9r-iotaNo alert detected, green status
10r-iosemit Start sensor, then 4 × Play selected dataset step by stepvalues 0, 0, 0, 1; r-iota: 1 SURE ALERTS, red pulsar rgb(231, 30, 30)
11r-iota FIND SOLUTION(S), preselected strategy, Findstrategy Drools - Crisis Satisfaction Strategy; banner « Deduction, deployment and supervision completed. »; blue status, objective 0/1, « total: 2 »; graph Start → Confirm Fire → Extinguish fires → End and an otherwise flow Confirm Fire → End; no « Not implemented » at deployment
11br-iota execution graph (2nd tab), hover the CE badges of the two flows leaving Confirm Fireflow to Extinguish fires: @Fire Confirmed[Confirm Fire] == "Yes" (copied as is); …__otherwise flow to End: comment // otherwise: … (property releasesObjectives): followed by // - Treats Fire in Albi Cathedral, then boolean __condition_result__c = @Fire Confirmed[Confirm Fire] == "Yes"; boolean condition = __condition_result__c; boolean otherwise = !condition; otherwise;
12r-io4U (web, signed in as ohartley) → menu → Tasks; empty before the deduction; after point 11, the tasks arrive live (without refreshing) → check Confirm Fire → form titled « Confirm Fire » (subtitle « Output data of the task », explanatory note), Fire Confirmed = Yes, DoneConfirm Fire (orange) and Extinguish fires (grey) assigned to Owen/Olivia; POST …/humantask/updateTask in 200; log [SEQUENCE-FLOW-CONDITION] … Extinguish fires : true and … EndEvent : false; Extinguish fires turns orange live
13r-io4U: check Extinguish fires (no output) → « Process Ended!!! Thanks For your help !!! »; r-iotaboth tasks green; r-iota No alert detected, green status; the fire area (ACTIVE objective and alert, FIRE effect of Fire_Alert) stays drawn on the cathedral: expected, the EXPECTED clone of the objective is gone but the active objective waits for the expert validation
13br-iota, toolbar → Delete positive deviations (add_circle icon, visible while positive markers remain) → Delete → Refreshthe « Positive Deviation Analysis » dialog lists Objectives: Treats Fire in Albi Cathedral and Actualities: Fire in Albi Cathedral at Sainte-Cecile Cathedral of Albi, both at YES; after Delete + Refresh: no more path.area-fire, the cathedral is drawn again as a building, the button disappears; log supervision of <solution> ended: processes ended and no ACTIVE objective left (at the end of the process, before the validation: goes on: 1 ACTIVE objective(s) left); solution selected=false, no EXPECTED_FREEZE node; the frozen alert and objective stay FREEZE
13cr-iosemit Stop selected dataset then 4 steps → r-iota FIND SOLUTION(S) → r-ioga to-do list (administrator; the new task also arrives live in r-io4U): new Confirm Fire = No, dialog titled with the task name and an explanatory note → r-iota → Delete positive deviationsnew sure alert (red pulsar); second solution deployed; [SEQUENCE-FLOW-CONDITION] Confirm Fire -> Extinguish fires : false and to EndEvent: true; [OTHERWISE-RELEASE] … expected twin released: ['Treats Fire in Albi Cathedral', 'Fire in Albi Cathedral at …']; the second Extinguish fires stays grey; r-iota « No alert detected », orange pulsar; after the validation, supervision closed as in 13b
14r-ioga « Project List » → Export project (.zip) → Yesarchive Fire at Albi Cathedral.zip (~1.9 MB, 17 entries): 7 models (project, 3 active, 3 freezed_*), CEP rule of the sensor, game scenario and dataset, distance/time matrix, photos
15restart (empty base), Import ZIP of the archivePOST …/projects/importProject in 200; log « project freeze models loaded: 3 » and « project active models loaded: 3 »; the project reappears in « Project List » with 12 launchers; r-ioda Context And Partners: Albi, the cathedral, the 2 firefighters, the sensor. A WARN « CEP rules not generated while the project is loaded » is normal. The import restores the state at export time (active alert if exported at the end of the scenario)
08 · RP-06

Henri at the barbecue: a forking scenario, three endings

Checkpoints, in order. r-iosemit and r-iota stay open without reloading. The times are those of the reference runs, within a few seconds.

#CheckExpected
0start-up with Barbecuethe project appears in « Project List »; its APPLICATIONS column opens r-iosemit and r-iota in the project context
1r-iosemit, « Henri Barbecue Story » scenario, TIMELINE modetimeline from 08:59:28 to 09:05:53; nested forks Martinez barbecue state, Martinez swimming pool state, Henri may have bradycardia, and their tracks; RUNS shows the three delivered runs; no error when opening
2RUNS: delete all runs; Restart; r-iota, radar button, Supervision off, Save; r-iosemit Play with Continuous, ×1440, Deduction and deployment time = Given 10 s, Simulated actors do their tasks on their own, and the name of run 108:59:48 Martinez swimming pool Open; 09:00:19 Martinez barbecue On; 6 m and 10 m areas in the scene; Paul at the back of the garden at 09:00:55
3run 1 goes on09:02:54 Henri burns ACTIVE, Henri On fire; 09:02:55 fork → Martinez barbecue On; 09:03:12 Henri may drown 99 %, Henri Normal; 09:03:13 fork → Martinez swimming pool Open
4run 1 goes on09:03:22 Henri drowns, Henri Wet; Henri may have bradycardia 20 % at 09:03:53, fork → Henri may have bradycardia at 09:03:54, 80 % at 09:04:03; 09:04:13 Henri has bradycardia, Henri Bradycardia
5end of run 109:04:53 Henri may die 90 %; 09:05:23 Henri dies, Henri Dead; no deduction, no task; run recorded with 18 moments
6Restart; r-iota Supervision on, Auto mode on (move and wait tasks, consolidation, forecasts checked), Extrapolate the trajectories to anticipate the dangers unchecked, Save; Play with the name of run 2no reaction before the contact: without extrapolation, the burn risk is only seen at 1.5 m; 09:02:54 Henri burns; fork → Martinez barbecue On; 09:03:02 deduction Henri burns + Henri may drown
7run 2 goes on09:03:22 Solution_1_FIRST deployed, Move to Martinez swimming pool by Julie (not Paul); 09:03:22 Henri drowns; 09:03:29 new deduction, 09:03:43 adapted solution, Close a pool Ignored
8run 2 goes on09:03:56 Julie at the edge of the pool; Rescue a child from drowning accepted at 09:04:00; the bradycardia may come before the rescue (09:04:13 Henri has bradycardia); 09:04:29 Rescue done, Henri out of the water, Henri drowns GONE; fork → Otherwise
9end of run 2Perform a cardiac massage accepted at 09:04:33; 09:05:35 massage done, rate at 77.8, Henri Normal, Henri has bradycardia GONE; Henri alive at the end, barbecue On
10Restart; r-iota Extrapolate the trajectories to anticipate the dangers checked, Save; Play with the name of run 309:01:34 Henri may burn 66 %, Henri outside the area; 09:01:42 deduction; 09:01:54 solution deployed, Move to Martinez barbecue by Paul
11run 3 goes on09:02:28 Paul at the barbecue; Extinguish a barbecue done at 09:02:37; barbecue Off, risk gone, solution GONE, before the burn of 09:02:54
12end of run 309:02:55 fork → Otherwise; Henri burns never active, no drowning; end: Henri ACTIVE, barbecue Off
13RUNS modethe three runs, under their original names, with their settings as badges (Supervision, Extrapolation, Auto, Moves), their moments, the Deduction column (Given 10 s)
14Compare on run 3 (A) and run 1 (B)two lanes of moments and a table by date; Solution_1_FIRST and the barbecue tasks in A only, Henri burns at 09:02:54 in B only, in bold; filters by kind of moment and Differences only
15Replay on a run with different settingsred warning, Setting / Now / In this run table, Cancel (nothing changes) and Change the settings and replay (settings written, the story starts from zero, new run « (replay) ») buttons
16RestartHenri back in the house, no alert, the story plays again without a restart of the server
17backend log0 without collaboration, 0 sensor_node is null, 0 oscillation on node, 0 not converged
09 · RP-07

Orleans Flood Crisis: Loire flood at the George-V bridge (without forecast, with forecasts, adapting the running process)

Checkpoints, in order. The profile is restarted and the use case loaded again before each act:

#CheckExpected
0start-up« Use-case successfully loaded !!! »; Orleans Flood Crisis in « Project List », 12 launchers; r-iosemit: « Loire Flood At Orleans » scenario, 20 dates · 40 DATA steps, Forecasts on · 4
Act 1without forecast
1r-iosemit: click 📉 Forecasts on · 4 → « Forecasts off · 4 », « 4 muted »; timeline up to 18:00 (step 6); r-iota, Forecast tab « No forecast published yet », OPEN DETAILS → Cancel1 SURE ALERTS, red status; problem George-V bridge flood risk at George-V bridge (Risk), objective Prevent the George-V bridge flood risk; danger zone around the bridge
2FIND SOLUTION(S): Include forecast NO, Advanced options strategy YES → Find; the strategy box keeps its Include forecast at NO, Preventive and Corrective checked → Deduce (without the advanced options, Find is enough)« Solution found » 27 task(s): Start → Nominal SubTask → End, Event_Flow (CE) → Secure the surroundings of a threatened bridge
3Deploy and supervise« Deduction, deployment and supervision completed. », total: 27, 0 / 2, blue status
4r-iosemit, TASKS tab, AUTO box of the headerStop a tram line then Close a bridge to traffic (2 h 30) run on their own, the clock passes 19:00 and 20:00
5switch at 20:00log [EVENT-FLOW] … rule fired then [TAKEOVER]; r-iota « Objective 'Prevent the George-V bridge flood risk' replaced by 'Secure the George-V bridge threatened by the flood': the risk became the actuality », 0 / 1; to-do list: preventive tasks not started « Abandoned · », orange waits « not yet known (projected) »
6timeline up to 16/11 00:00 (step 18)Inspect 00:00 → 02:00, Reopen → 03:00, Announce → 03:30; r-iota 1 / 1, « 2 achieved tasks on 2 expected (total: 27) + 17 corrective », No alert detected, green status
Act 2with forecasts (profile restarted, use case loaded again)
7timeline up to 18:00; r-iota, Forecast tab« Loire flood at George-V bridge may appear (100 % of the forecasts) » at 14/11 20:00; « Time available before … 2 h »
8FIND SOLUTION(S), Include forecast YES (default), Find (~2 min)« Incomplete process. … the preventive procedure would end its main task at 14/11 20:47, after the projected appearance at 14/11 20:00. Only the corrective procedure is possible. »; « 17 task(s), 14/11 20:00 → 15/11 21:30 »
9Deploy and supervise« Solution deployed and supervised. », total: 17, 0 / 1
10AUTO; timeline up to 15/11 06:00 (step 12); r-ioga to-do listWait until the flood has receded « 21:00 -> 15/11 22:00 (projected) »; Wait until a bridge can be inspected « -> 15/11 23:30 (projected) »
11timeline up to 16/11 00:00end 16/11 03:30; 1 / 1, « 17 achieved tasks on 17 expected (total: 17) », No alert detected
Act 3adapting the running process (profile restarted, use case loaded again)
12timeline up to 06:00 (step 2); r-iota« No alert detected », « 1 watched risk · below 80 % » (5 %), Foreseen by the forecasts card « 14/11 21:00 · George-V bridge flood risk ↑ 80 % »
13Find solution(s) on the forecast, Advanced options YES → Find; strategy: Corrective unchecked → Deduce; Deploy and supervise; AUTO unchecked« The deadlines projected by the forecasts are held. … (10 task(s), 14/11 06:02 → 14/11 18:17) »; total: 10, 0 / 1
14timeline up to 12:00 (step 4)Foreseen solution box: « Actuality « Loire flood at George-V bridge » foreseen … from 2026-11-14 20:00 …, not treated by the supervised solution (urgency 0.67: it appears after the end of the plan) »
15Modify the running process → Apply« Changes to the running process »: « 10 task(s) unchanged. Secure the surroundings of a threatened bridge: added as a sub-process, started by its trigger (Event_Flow) only. », Added (70), Removed (1)
16Apply to the running process; reload r-iotalog [HOT-MODIFY] … accepted=true; total: 27, 0 / 2
17AUTO checked; timeline up to 16/11 00:00at the flood: [EVENT-FLOW] … rule fired, [TAKEOVER] objective 'Prevent …' replaced by [Secure …], « Stop a tram line … already done by the preventive procedure, marked done »; end 16/11 05:30, 1 / 1, « 5 achieved tasks on 4 expected (total: 27) + 16 corrective », No alert detected
18backend log0 ERROR
Référence / Plan de dev

Plan de dev

Les scénarios de bout en bout tels qu’ils sont joués aujourd’hui sur la branche de développement, avec leurs points de contrôle dans l’ordre. Cette page suit le plan et change avec lui ; les Fiches donnent le dernier résultat de chacun. Le plan d’une release publiée reste sur la page Plan de release.

01 · RP-01-01

Scénario de jeu par défaut IMT Crisis

Scénario de jeu : « Default Game Scenario », 4 dates · 8 pas DATA, 22 capteurs planifiés ; un Next step de r-iosemit avance tout le scénario d'une date et émet 8 launchDataSetOnTopic (r-iota n'a pas de bouton de pas). Les 4 dates sont jouées :

DateÉlément de friseValeurs qui bougent
20:48:48message « Energy company social media » (Margaret Parker) : Due to high electricity demand, there is a risk of power outages in your area.gaz Rapsodee 113,9
20:59:57actualité planifiée « Analyze the gas leak at Rapsodee »gaz Rapsodee 643,5 → 656,5 (seuil 650) → règle CEP R1 du capteur de gaz
21:09:04actualité « Presence detected at Iomega »intrusion Main Entrance → true → règle CEP R1 du capteur d'intrusion
21:27:02actualité « Alert detected at Iomega »radar Iomega → true → événement réflexe, photo du drone analysée par le LLM

Points de contrôle, dans l’ordre :

#ActionRésultat attendu
0amorçage : Projects workspace → IMT Albi Crisis → Load → « create a specific collaboration ? » No → OK« Use-case successfully loaded !!! » ; « Project List » : IMT Albi Crisis, 12 lanceurs
0br-ioga « Edit project », lecture seule, CancelIA Provider Albert, IA Model Mistral-small-3-2-24b-instruct-2506
1r-ioda (lanceur), onglet Context And Partnersfiltre Active seul ; 69 nœuds actifs : Albi, École des mines et ses bâtiments (Gymnase, Rapsodee, ICA, Incubator, Iomega, Main Building), 25 personnes (Emily Hernandez et Oliver Taylor avec téléphone, montre, GPS, température, rythme cardiaque), chiens Rocky et Tyson, SDIS 81, Police station Albi, capteurs, Gas boiler, 4 caméras, 3 réseaux piétons ; le diagramme dépasse l'écran
2r-ioplay (lanceur)carte World, vue satellite centrée sur l'École : emprise verte, bâtiments colorés, zone violette triangulaire au sud-est ; 42 marqueurs ; cadenas de verrouillage de la vue
3r-iosemit (lanceur), onglet STORY« Default Game Scenario » ; Story settings : Current timeline, 23/09/2026 20:44:44 → 21:44:44, Français ; Story guidance « Des cambrioleurs tentent de faire une diversion… Rapsodee… Iomega… matériel informatique » ; 1 message social ; Invented story présente ; Story narrator (FR)
4r-iosemit TIMELINE → Next step (date 1)log : 8 launchDataSetOnTopic, 2 appels albert.api.etalab.gouv.fr en HTTP 200
5r-iotaen direct : 1 ALERTS TO VALIDATE, FIND SOLUTION(S) grisé, statut jaune rgb(255, 238, 50)
6OPEN DETAILS« Problems found », 1 item : Power outages / Risk / « Prevents Power outages » ; SIMILAR TYPE Risk ; NEAREST INSTANCE « Risk of power outage (near: 0.95) » ; Delete / Validate
7Validate → Save1 SURE ALERTS, FIND SOLUTION(S) actif, statut rouge ; risque « ⚠ 70 % » au sud-ouest du site
8r-iosemit Next step (date 2), puis r-iotalog : 8 launchDataSetOnTopic, règle CEP R1 du gaz (nœud …_rule_R1_…, arêtes Impacts Rapsodee et Near) ; r-iota en direct : 2 SURE ALERTS
9OPEN DETAILSconforme : 2 items, Delete seul — Power outages / Risk / « Prevents Power outages » / « The sentence explicitly states that due to high electricity demand… » ; Analyze the gas leak at Rapsodee / Toxic_Gas_Alert / « Treats Analyze the gas leak » ; puis Save (état inchangé)
10r-iosemit Next step (date 3), puis r-iotalog : 8 launchDataSetOnTopic, pas de LLM ; r-iota en direct : 5 SURE ALERTS, « Reflex Events Detected !!! », panneau Cameras « None camera » (caméra éteinte : normal) ; 5 pulsars rouges rgb(231, 30, 30) : Prevents Power outages, Treats Analyze the gas leak, Contact the center manager, Treats Presence detected, Secured the site
11OPEN DETAILSconforme : 5 items, Delete seul — Power outages / Risk ; Analyze the gas leak at Rapsodee / Toxic_Gas_Alert ; Presence detected at Iomega / Intrusion_Alert × 3 (Contact the center manager, Treats Presence detected, Secured the site) ; fermer sans modification (nom « Presence detected » avant le correctif RIOSUITE-1232)
12r-iosemit Next step (date 4), puis r-iotar-iosemit : fin de frise, Next step grisé ; log : 8 launchDataSetOnTopic, 2 appels Albert en 200 ; r-iota : 6 SURE ALERTS, vignette de la photo du drone « Wait picture analysis (IA from ALBERT)... »
13attendre la fin de l'analyse (1 à 2 min)5 SURE ALERTS + 2 ALERTS TO VALIDATE ; vignette : Retry et « 2 problems found !!! » ; cercle jaune dans la zone verte
14cliquer le nombre « 2 » de la vignette« Problems to resolve from 'Alert detected at Iomega' » (photo, bouton Open), 2 items Risk produits par le LLM (noms variables) : Drone Collision (NEAREST « None (near: 0) ») et Loss of Control (NEAREST « Risk of power outage (near: 0.75) »)
15Drone Collision : crayon de PROBLEM TYPE → « Edit Type » → Actuality → SavePROBLEM TYPE Actuality ; SIMILAR TYPE Intrusion_Alert (Damage) ; NEAREST INSTANCE « Unidentified flying object (near: 0.85) »
16Validate sur Drone Collision, Delete sur l'autre problème, Save6 SURE ALERTS ; vignette « 1 problems found !!! » ; 6e pulsar rouge « Treats Drone Collision » ; marqueur Drone Collision dans la zone verte
17OPEN DETAILS, puis Saveconforme : 6 items, Delete seul — les 5 de l'étape 11 + Drone Collision / Intrusion_Alert / « Treats Drone Collision » avec la photo et « The image shows a drone in flight… »
18FIND SOLUTION(S) → Advanced options strategy = YES → Findstratégie présélectionnée Drools - Crisis Satisfaction Strategy, « Deduce and run » à YES
19fenêtre des options avancées : la faire défiler en entierconforme, tel quel : titre « Drools - Simple Satisfaction Strategy » ; FIRST_GOOD_SOLUTION, max 30 ; Actualities : Analyze the gas leak at Rapsodee → Confirm gas leak ; Presence detected → Contact the center manager, Secured the site, Arrest the suspects, Arrest the suspects with the surveillance dog (tout coché) ; Potentialities : Power outages (Emerging Risk), Preventive et Corrective → Relieve the electricity grid (Electric vehicle charging circuit breaker), Activate another power source (Circuit breaker for all circuits except IT and communications, Start the generator) ; 5 objectifs non priorisés (Treats Analyze the gas leak, Contact the center manager, Secured the site, Treats Presence detected, Relieve the electricity grid) ; Implementation Potentiality vide ; PERSON_FIRST ; Insert move tasks NO ; solveur Default ; Drone Collision absent
20Deducela déduction se lance (« At least one actor provides each functions for each plans »)
21—OK depuis le 2026-10-15 (RIOSUITE-1232 corrigé) : aucun dialogue « Error », passage direct à « Starting supervision... » (~50 s après Deduce). Comportement d'avant le correctif, à traiter en KO s'il revient : dialogue « Error » « … have no 'Impacts' relationship to any resource: Presence detected (objective(s): 'Contact the center manager', 'Treats Presence detected', 'Secured the site') » — l'actualité CEP de l'intrusion n'a que Near, pas Impacts → Iomega. Contournement : ajouter l'arête à la main, refaire les étapes 18 à 20
22attendre la supervision (~20 s)log : deduceSolutionASync, deploySolution, selectSolution, superviseSolution en 200, 0 ERROR ; condition d'Event_Flow Creates("Power outages") ; cockpit « Supervision active », statut bleu, objectifs 0/6, « 0 achieved tasks on 23 expected (total: 25) » ; « Started at » = heure du jour (un affichage « 1970-01-01 » transitoire n'est pas un KO)
23r-iota, onglet Process (depuis le 2026-10-15 les onglets ne sont plus que des icônes : Process = account_tree, cockpit = speed)Start → Nominal SubTask #f5b041 → flux CE → correctif « Circuit breaker for all circuits except IT and communications » neutre → End
24r-iosemit : TIMELINE, puis DATATIMELINE en fin de frise ; DATA → Sensors : 22 capteurs, « Connected »
25DATA → Potentialities Management → refreshavant refresh : « No active emerging or intrinsic potentiality » ; après : Power outages (EMERGING) à 70 %, actualité à activer « Power outage »
26curseur de Power outages à 100 %« 100 % », « Power outage » activée ; log [EVENT-FLOW] Nominal SubTask_… : rule fired, launching recovery Circuit breaker for all circuits…
27r-iota, sans rechargementgraphe : le correctif passe en orange #f5b041 ; carte : conforme, le risque à 100 % est devenu une actualité — risque Power outages gelé et plus dessiné, actualité « Power outage » (balise rouge) avec « Treats Power outage » et son pulsar bleu rgb(50, 101, 255) ; l'étiquette « ⚠ 60 % » restante est la probabilité de Drone Collision
28log du profil, sur tout le passage0 Impossible to find scope, 0 TEMP-DEBUG, 0 hexString can not be null ; seules ERROR admises : getRiopiotContext (caméra éteinte)
02 · RP-01-02

Scénario Conditions IMT Crisis : sourdine, suppression et conditions exclusives

Scénario de jeu : « Default Game Scenario » modifié sans l'enregistrer (pas de clic sur la disquette) ; la sourdine et les suppressions valent pour la session de lecture.

#ActionRésultat attendu
0amorçage avec IMT Albi Crisis« Use-case successfully loaded !!! » ; « Project List » : IMT Albi Crisis
1r-iosemit (lanceur), onglet TIMELINEDefault Game Scenario, 23/09/2026 20:44:44 → 21:44:44, en-tête « 4 dates · 8 DATA steps » ; 4 cartes : message Energy company social media (20:48:48), Analyze the gas leak at Rapsodee (20:59:57), Presence detected at Iomega (21:09:04), Alert detected at Iomega (21:27:02)
2icône 🔈 (aria-label="Mute") de la carte Energy company social mediacarte grisée et barrée (classe muted), icône 🔇 « Muted: kept on the timeline but not played », point creux sur la frise ; « 4 dates · 8 DATA steps · 1 muted »
3clic sur Presence detected at Iomega → boîte « Planned actuality » (Activation, « Actualities produced by the same CEP rule are scheduled and removed together ») → Remove scheduled transitioncarte supprimée ; « 3 dates · 6 DATA steps · 1 muted »
4idem pour Alert detected at Iomega (la boîte montre aussi la photo réflexe « Photo-Cam-Radar-iomega »)carte supprimée ; « 2 dates · 4 DATA steps · 1 muted » ; aucun refus
5Next step (date 1, message en sourdine)log : [PLAYBACK] checkpoint … before step 0, 4 launchDataSetOnTopic en 200, aucun appel LLM (ni Albert, ni OpenAI, ni Mistral), aucune trace du texte du message, 0 ERROR ; les seules lignes ML sont des WARN ChatGPTPredictEngine: Not implemented !!! (événements capteurs ordinaires)
6Next step (date 2)log : 4 launchDataSetOnTopic en 200, règle CEP R1 du gaz (…_rule_R1_…, arêtes Near et Impacts vers Rapsodee), 0 ERROR ; r-iosemit : Next step grisé (fin de frise)
7r-iota (lanceur)bundle ng-version 22.x ; 1 SURE ALERTS, FIND SOLUTION(S) actif, statut rouge ; un seul pulsar « Treats Analyze the gas leak » ; ni Power outages ni alerte Iomega
8OPEN DETAILS → Save« Problems found », 1 item : Analyze the gas leak at Rapsodee / Toxic_Gas_Alert / « Treats Analyze the gas leak » ; état inchangé après Save
9FIND SOLUTION(S), réglages par défaut → FindDrools - Crisis Satisfaction Strategy, entrées à NO (Prioritize objectives, Include forecast, Advanced options, Insert move tasks), Deduce and run à YES ; log : deduceSolutionASync, deploySolution, selectSolution, superviseSolution en 200 ; 0 ERROR, 0 ConcurrentModificationException, 0 hexString ; « Deduction, deployment and supervision completed » ; cockpit « Supervision active », 0/1, 11 tâches
10r-iota, onglet Process, dézoomer 2 foisStart → Confirm gas leak → deux flux CE vers Cut off the local gas valve et Cut off the school gas supply (jamais chaînées), deux flux otherwise Confirm gas leak → End, aucun flux __bypass__. Branche local valve : Grab the toolbox, Report the damage, Event report to the center team → End (ordre variable d'une déduction à l'autre ; le 2026-10-16 : Grab → Report → Event report → End). Branche school supply : Secure equipment → Repair gas installation → End ; Retrieve information about the event → Validate the message… → Send a message to colleagues → End. Aucune jointure entre les deux branches (Report the damage ne dépend que de la branche local valve, depuis le correctif du défaut n° 2, vérifié le 2026-10-16)
11todo-list r-ioga11 tâches ; Confirm gas leak démarrée (orange) ; les deux coupures planifiées sur le même créneau
12Confirm gas leak → Accept → CONFIRMED GAS LEAK = Yes and repairable → Donelog : [SEQUENCE-FLOW-CONDITION] Confirm gas leak → local gas valve true, → school gas supply false, → End (otherwise) true et false ; moteur : enter in node: Cut off the local gas valve, aucun enter in node: Cut off the school gas supply ; todo-list : Confirm gas leak vert, local valve orange, school supply gris ; r-iota : nœud Confirm gas leak vert #31964e, local valve orange #f5b041, objectifs 0/1, pulsar bleu rgb(50, 101, 255) (l'objectif n'est atteint qu'à la fin de tout son graphe de tâches, knowledge/objective-reached-whole-task-graph.md, depuis le 2026-10-15 ; « 1/1, pulsar orange » à ce stade serait une régression)
13valider dans la todo-list toutes les tâches démarrées (Accept → Done)les 4 tâches de la branche local valve terminées (ordre selon la déduction, le 2026-10-16 : Cut off the local gas valve, Grab the toolbox, Report the damage, Event report to the center team) ; les 6 tâches de la branche school supply jamais démarrées ; moteur End of join, end of execution ; 0 ERROR ; r-iota « No alert detected !!! », statut vert, RESOLVED / TARGET 1 / 1, pulsar orange rgb(245, 176, 65)
14r-iota → Delete positive deviations (add_circle) → Delete → refreshun seul dialogue « Positive Deviation Analysis » : OBJECTIVES Treats Analyze the gas leak et ACTUALITIES Analyze the gas leak at Rapsodee, tous deux à YES ; deleteModels 200 ; log supervision of … ended: processes ended and no ACTIVE objective left (~10 s) ; après refresh : plus de pulsar, plus de bouton add_circle, « No alert detected », statut vert
15r-ioda (lanceur), onglet Objectivesfiltre Active : seul « Default Objectives Manager » ; avec Freeze : seulement les nœuds gelés du cas d'usage (« Load new configuration », « Equipment signal off ») ; ni l'objectif ni l'actualité du gaz, ni actifs ni gelés
03 · RP-01-03

IMT Crisis : tâches sur le terrain, réelles ou simulées (r-io4U, r-ioga, Move, Wait)

Scénario de jeu : « Default Game Scenario » modifié sans l'enregistrer ; les modifications de l'onglet TASKS sont, elles, enregistrées dans le scénario ouvert (simulations).

#ActionRésultat attendu
0amorçage avec IMT Albi Crisis« Project List » : IMT Albi Crisis, lanceurs r-iosemit et r-iota
1r-iosemit, onglet TIMELINE : sourdine du message Energy company social media, de Presence detected at Iomega et d'Alert detected at Iomega« 4 dates · 8 DATA steps · 3 muted »
2Next step × 2règle CEP R1 du gaz ; 0 ERROR
3r-iota1 SURE ALERTS, FIND SOLUTION(S) actif
4FIND SOLUTION(S) : Crisis, Insert move tasks = YES, Insert wait tasks = YES → Find« Deduction, deployment and supervision completed » ; 16 tâches, dont 4 Move et 1 Wait ; log Simulated moves … 4 generated
5r-iosemit, onglet TASKS16 lignes : acteur avec son icône, statut (Not started, Waiting for acceptance…), sous-tableaux Expected / Simulated avec icônes KPIL ; Simulated = milieu de l'intervalle attendu ; info-bulle sur On
6sortie de Confirm gas leak → Yes and repairable ; Move d'Emily → autre chemin, ×8valeur conservée (edited) ; Move : attendu 613 m / 446 s, simulé 891 m / 646 s
7r-io4U : Move vers Confirm gas leak → Acceptaperçu 2D/3D du trajet et du fantôme ; après Accept, position suivie en direct (avance/retard, sur/hors trajet)
8arrivéetrajet réel rejoué, valeurs terrain 652 s / 809 m en rouge (> +20 %), Done actif → Done
9r-io4U : Confirm gas leak → Acceptvaleurs attendues avant, valeurs terrain après, sortie préremplie Yes and repairable ; Done → branche de réparation
10r-io4U : Cut off the local gas valve → Accept, fiche ouverteDone grisé, puis les valeurs arrivent dans la fiche ouverte (~0,5 s) et Done s'active → Done
11todo-list r-iogamêmes tâches, acteur (personne, bien ou groupe) avec photo et info-bulle ; Wait de 470 s d'Alice avant Send a message to colleagues (branche non prise : reste planifié)
12r-ioga : Grab the toolbox → Acceptaucun appel à r-iosemit depuis r-ioga ; valeurs terrain reçues par événement ; Done actif → Done
13r-iosemit TASKS : décocher On sur Report the damage ; r-ioga : Acceptaucune valeur simulée ; durée mesurée, valeur restante à saisir ; Done actif une fois saisie → Done
14Event report to the center team → Accept → Donefin du processus ; TASKS : toutes les tâches de la branche Done
15r-iota + log« No alert detected », statut vert ; 0 ERROR (hors PhilipsHue)
04 · RP-02

Exception_Flow sur un risque d’implémentation

Points de contrôle, dans l'ordre (attendre 15 à 25 s après chaque pas avant de lire r-ioda, r-iota ou r-ioga) :

#ContrôleAttendu
0amorçageIMT Albi Healthcare dans « Project List », 12 lanceurs
1r-iocal« Treat Routine checkup of James Miller » Planned dans « My default planning »
2r-ioda, onglet Objectives (filtre Active seul) ; r-iota« Treat Routine checkup of James Miller », « Routine checkup of James Miller -impacts: Iomega- », « My default planning » ; r-iota : 1 SURE ALERTS
3r-iosemit, 1 pas (« sensor not started » → Yes) ; r-iodaapparaissent « Danger of Electrical Failure » et 3 risks à probability: 0 : « Risk of software unavailability », « … for Blood Test Request Function », « … for Preparation of equipment Function »
42e pas ; r-iodales 3 risks à 0.33. Le risk parent est renommé par la règle « Risk of software unavailability at École des mines d'Albi-Carmaux »
53e pas ; r-ioda ; logles 3 risks à 0.66 ; exactement 3 POST launchDataSetOnTopic, 0 ERROR
6r-iota FIND SOLUTION(S), stratégie présélectionnée, Deduce and run = YESstratégie Drools - Healthcare Satisfaction Strategy ; « total: 8 » ; 1 POST selectSolution ; 3 arêtes edge_exception_flow_* publiées ; graphe : Blood test Request en #f5b041, les 3 correctifs neutres
7r-ioga, todo-listTotal tasks 8 ; Blood test Request orange rgb(236, 131, 47), les 7 autres gris rgb(122, 117, 117)
84e pas ; r-iodales risks disparaissent (gelés) ; apparaissent « Sofware unavailable », « Healthcare software unavailability for Blood Test Request Function », « Healthcare sofware unavailability for Preparation of equipment Function »
9carte r-iota2 pulsars bleus rgb(50, 101, 255) : « Treat Routine checkup of James Miller » et « Sofware unavailable »
10graphe r-iota, sans rechargementBlood test Request #d50000 ; Paper Record et White Board Centralisation #f5b041 ; Edition by Handwritten note neutre
11r-ioga, todo-listBlood test Request rouge rgb(218, 45, 45) ; Paper Record et White Board Centralisation orange rgb(236, 131, 47), démarrées (-> ???) ; les 5 autres gris
12log backend[EXCEPTION-FLOW] Blood test Request … 2 rule(s) became true while running ; Impossible to find scope 0 ; TEMP-DEBUG 0 ; une seule ERROR admise : HumantaskSOAPImpl « Nominal task replaced by recovery » (le remplacement normal de la tâche, journalisé en erreur)
05 · RP-03

Crisis Event Show Parc des Princes : trois incidents successifs

Points de contrôle, dans l'ordre (attendre ~15 s après chaque Next step avant de lire r-iota) :

#ContrôleAttendu
0amorçageCrisis Event Show Parc des Princes dans « Project List », domaines Collaborative/Crisis, 9 extensions, 12 lanceurs
1r-ioda, onglet Context And Partnersle diagramme montre Stade du Parc des Princes, Parc des Princes, Paris et le personnel avec ses rôles (Marc Dubois, Camille Leroy, Lucas Bernard…)
2r-ioplay, MAP → World, puis la 3D view du stade (dernière entrée du sélecteur, intitulée « Stade du Parc des Princes › 3D view »)r-ioplay s'ouvre sur le plan « Parc des Princes » ; World : Paris, stade au sud-ouest ; 3D : la maquette du stade (canvas WebGL) et le panneau MOVE / LOOK / ALT / ZOOM
3r-iotaNo alert detected !!!, statut vert rgb(59, 180, 46)
4r-iosemit : Full Scenario, 3 dates · 6 DATA steps ; Next stepr-iota 2 SURE ALERTS, statut rouge ; 2 pulsars rouges rgb(231, 30, 30) sur la Gate B, titres Treats Door Breakdown et Treats Crowd Orientation ; OPEN DETAILS : 2 items Door Breakdown on Gate B (Alert) avec ces deux objectifs
5FIND SOLUTION(S), stratégie présélectionnée Drools - Crisis Satisfaction Strategy, Find« Deduction, deployment and supervision completed. » ; total: 10 ; statut et pulsars bleus rgb(50, 101, 255) ; graphe : 5 tâches #f5b041 en parallèle (Identify the fault, Ask an agent to check if an IT problem…, Check the status of the ticketing system, Ask an agent to check the technique on door, Request door closure)
6r-ioga To Do ListTotal tasks 10 ; chaque tâche démarrée (orange) se clique : boîte « To accept » → Accept → « Accepted » → Done ; après Confirm door closure, les 4 tâches de réorientation passent orange ; graphe r-iota en direct (vert #31964e / orange)
7r-iota après les 10 tâchespulsars orange rgb(245, 176, 65) sur la Gate B (le rond de statut, lui, est vert), « RESOLVED / TARGET 2 / 2 », « 10 achieved tasks on 10 expected » ; bouton Delete positive deviations présent
8Delete positive deviations → Delete → Refreshobjectifs supprimés, pulsars et bouton disparus ; log supervision of … ended: processes ended and no ACTIVE objective left
9r-ioda, onglet Objectives, filtre Active (après rechargement)plus d'actualité Door Breakdown on Gate B ; ne restent que des Default Objectives Manager (un par déduction jouée : c'est normal)
10Next step (16:17:44)r-iota 2 SURE ALERTS : Broken Seat number 11 avec Treats Spectateur et avec Treats Broken Seat ; pulsars rouges au centre du stade
11FIND SOLUTION(S) → Find ; todo-listtotal: 7 = 7 nouvelles tâches (Total tasks 17) ; toutes terminées ; pulsars orange
12Delete positive deviationsobjectifs supprimés, et Broken Seat number 11 supprimée
13Next step (16:36:02)r-iota 1 SURE ALERTS : Metro line breakdown at Aera 2 avec Treats Metro line breakdown
14FIND SOLUTION(S) → Find ; todo-list ; Delete positive deviationstotal: 6 (Total tasks 23) ; pulsar orange ; le dialogue liste l'objectif et l'actualité ; après Delete : « No alert detected », r-ioda sans aucune des trois actualités (trois Default Objectives Manager, un par déduction : normal)
15log backend0 ERROR ; 3 POST selectSolution ; 0 hexString can not be null
06 · RP-04

Générer un cas d’usage à partir d’un document (Tarbes Crisis)

Points de contrôle, dans l'ordre :

#ContrôleAttendu
0amorçage« Use-case successfully loaded !!! » ; Tarbes Crisis dans « Project List », 12 lanceurs ; log EmbeddingStoreIngestor « Finished storing 5 text segments »
1r-ioga « Edit project » → IA & RAG Knowledge documents, puis CancelIA Provider Openai, IA Model Gpt-5.5 ; base RAG : Tarbes_Crisis_Case_Study_Context_Form.pdf (506,9 KB) ; note avec le lien here vers /r-ioga/webjars/app/share/assets/docs/Template_Case_Study_Context_Form.pdf
2formulaires (lecture, hors applications r-io)vierge : 3 pages (ville, sites, biens, capteurs, rôles ; contexte ; contacts) ; Tarbes : TARBES, site Town Hall, Main Building et Parking P1 (GeoJSON), capteur SS_MB_1 SMOKE fixé sur Main Building, Alice Johnson (Security agent) et Emma Thomson (Town hall secretary) agissant sur le Town Hall
3r-ioda Context And Partnersmodèle vide
4AI Creator Assistantphrase « Your RAG is activated… here »
5here → Find Context and Partnerscochés par défaut : Sensor, Territory, Person, Role, Building ; « Use Web Research For Unknown Roles » à NO
6Find« LLM Reasoning » Completed en moins de 60 s, 11 agents DONE ; résumé : Sensor 1, Person 2, Building 1, Territory 2, Role 2, Function ≥ 3, Model nodes 13 ; appels api.openai.com tous en 200 ; ModelController COMPLETE (log fichier)
7aperçu13 nœuds, 12 arêtes : SS_MB_1 Fixed_Onto Main Building Fixed_Onto Town Hall Fixed_Onto TARBES ; Alice Johnson et Emma Thomson Acts_On Town Hall, Has Security agent / Town hall secretary ; Town hall secretary Provides ses fonctions (noms variables)
8Push (ACTIVE) → « Recommandation » → Yessynchronisations en 200, 0 ERROR, aucun « Could not find source or target territory » ; Active : 6 nœuds, 5 arêtes, libellés « Role: Security agent » / « Role: Town hall secretary » sous les personnes ; Freeze : Town hall secretary et ses fonctions
9r-iosemit« No game scenario yet » ; Create a scenario « Smoke in the Town Hall » → Save
10TIMELINE → Add an actuality or a message…Sensor actualities 1 : Fire detected at Main Building, 📍 Main Building, 📡 SS_MB_1, SS_MB_1 R1 · false → true ; date 13:00 → Save → « 1 dates · 2 DATA steps » ; enregistrer le scénario (icône save)
11onglet DATASS_MB_1, DEDICATED - SMOKE, Connected, CREATED, jeu de données smoke_in_the_town_hall_ss_mb_1
12Next stepstartSensor et 2 launchDataSetOnTopic en 200 ; « events received 2 » ; log [DEDUCTION-PUBLISH] d'une actualité …_rule_R1_… Near le clone de node_5918a7c4…
13r-iota1 SURE ALERTS, statut rouge rgb(248, 7, 7), pulsar rouge rgb(231, 30, 30) « Treats Fire detected », feu sur Main Building ; OPEN DETAILS : Fire detected at Main Building / Fire_Alert / Treats Fire detected → Cancel (ne rien valider)
14r-iota FIND SOLUTION(S), stratégie présélectionnée Drools - Crisis Satisfaction Strategy, Find« Deduction, deployment and supervision completed. » en ~10 s ; total: 2 ; statut et pulsar bleus rgb(50, 101, 255) « Treats Fire detected » ; graphe Start → Activate fire alarm → Use a fire extinguisher on the fire → End
15log de déduction[DEBUG-ACTOR-ELIGIBILITY] task='Activate fire alarm' requiredActorTypes=[Security agent] → afterRanker=[Alice Johnson] ; actingResourceIds = les deux personnes du document
16r-ioga To Do ListTotal tasks 2 ; Activate fire alarm (2 min) puis Use a fire extinguisher on the fire (5 min), acteur Alice Johnson [Security agent] ; chacune : clic → Accept → Done ; la seconde démarre quand la première est faite
17r-iota après les 2 tâchespulsar orange rgb(245, 176, 65) « Treats Fire detected », rond de statut vert ; tableau de bord « RESOLVED / TARGET 1 / 1 » ; graphe : les deux tâches en vert
18capture du processus finalexport du SVG du graphe r-iota (app-solution-graph) sur fond sombre, libellés lisibles, deux tâches vertes
19log backend0 ERROR
07 · RP-05

Hello world : créer un cas d’usage à partir de rien (Fire at Albi Cathedral)

Points de contrôle, dans l'ordre :

#ContrôleAttendu
0r-ioga, Create project → Crisis, nom Fire at Albi Cathedral, Clear all references, fournisseur IA validele projet apparaît dans « Project List », colonne REFERENCES vide, 12 lanceurs. En édition, le champ du nom est en lecture seule
1r-ioda Context And Partners, AI Creator Territory « Albi » (City), puis Building « Albi Cathedral »2 nœuds avec leur photo (pas d'icône vide) ; bâtiment « Sainte-Cecile Cathedral of Albi »
2clic droit sur la cathédrale → Fixed_Onto → Albiarête créée ; log [DEDUCTION-PUBLISH] create edge … Fixed_Onto … created=true
2br-ioplay, lancé depuis « Project List »la carte s'ouvre sur le contour de la commune d'Albi ; en zoomant sur la vieille ville (bord du Tarn), l'emprise de la cathédrale épouse le bâtiment de la vue satellite (les couleurs des formes changent d'un passage à l'autre) (≈ 43,9283 / 2,1426)
3AI Creator Role « Firefighter », Push, recommandation Freeze → Yesfiltre Freeze seul : Firefighter et ~6 fonctions, dont Extinguish fires ; aucun 500 sur inventRoles
4Provides → Function « Confirm Fire », sortie Radio Fire Confirmed (Yes/No) ; clic droit sur Extinguish fires → Needs vers Confirm Fire, avec la condition courte @Fire Confirmed[Confirm Fire] == "Yes" (expression seule, sans boolean …;)l'autocomplétion @ propose @Fire Confirmed[Confirm Fire] output · radio ; la condition est relue à l'identique à la réouverture de l'arête ; l'arête porte un badge CE et son survol affiche le code
5AI Creator Person, 1 personne, rôle Firefighter, située à Albi ; ouvrir la personne, la renommer Owen Hartley si c'est un homme, Olivia Hartley si c'est une femme (même login) ; le titre du dialogue suit le nouveau nom, REQUIRED INFORMATION → ACTIONS → Generate corresponding user → Save, puis Save de la personne1 personne active ; dialogue « Register … as user » : login ohartley, mot de passe par défaut affiché ; la personne porte une arête Assigned_To vers un nœud User (vérifiable dans Neo4j) ; le bouton Generate est ensuite désactivé
6onglet Objectives, Freeze seul, palette Fire_Alert « Fire in Albi Cathedral », Generate associated objectiveobjectif gelé « Treats Fire in Albi Cathedral », relié par Treats ; pas d'exception « Refactore 2026 »
7objectif → Broken relations Satisfies → Add → Extinguish firesla ligne Extinguish fires est présente à la réouverture
8AI Creator Sensor Dedicated / Smoke / event type « Fire In Albi Cathedral » / Fixed Onto Asset cathédrale ; renommé « Smoke sensor of Albi Cathedral »CONFIGURATION : seuil MAX référençant « Fire in Albi Cathedral (FREEZE, Fire_Alert) » ; push en 200 (aucun NPE SensorModelsPopulateInterceptor)
9r-iotaNo alert detected, statut vert
10r-iosemit Start sensor, puis 4 × Play selected dataset step by stepvaleurs 0, 0, 0, 1 ; r-iota : 1 SURE ALERTS, pulsar rouge rgb(231, 30, 30)
11r-iota FIND SOLUTION(S), stratégie présélectionnée, Findstratégie Drools - Crisis Satisfaction Strategy ; bannière « Deduction, deployment and supervision completed. » ; statut bleu, objectif 0/1, « total: 2 » ; graphe Start → Confirm Fire → Extinguish fires → End et un flux otherwise Confirm Fire → End ; aucun « Not implemented » au déploiement
11bgraphe d'exécution r-iota (2e onglet), survol des badges CE des deux flux sortant de Confirm Fireflux vers Extinguish fires : @Fire Confirmed[Confirm Fire] == "Yes" (recopiée telle quelle) ; flux …__otherwise vers End : commentaire // otherwise: … (property releasesObjectives): suivi de // - Treats Fire in Albi Cathedral, puis boolean __condition_result__c = @Fire Confirmed[Confirm Fire] == "Yes"; boolean condition = __condition_result__c; boolean otherwise = !condition; otherwise;
12r-io4U (web, connecté en ohartley) → menu → Tasks ; vide avant la déduction ; après le point 11, les tâches arrivent en direct (sans rafraîchir) → cocher Confirm Fire → formulaire titré « Confirm Fire » (sous-titre « Output data of the task », note explicative), Fire Confirmed = Yes, DoneConfirm Fire (orange) et Extinguish fires (gris) attribuées à Owen/Olivia ; POST …/humantask/updateTask en 200 ; log [SEQUENCE-FLOW-CONDITION] … Extinguish fires : true et … EndEvent : false ; Extinguish fires passe en orange en direct
13r-io4U : cocher Extinguish fires (pas de sortie) → « Process Ended!!! Thanks For your help !!! » ; r-iotales 2 tâches vertes ; r-iota No alert detected, statut vert ; la zone en feu (objectif et alerte ACTIVE, effet FIRE de Fire_Alert) reste dessinée sur la cathédrale : c'est attendu, le clone EXPECTED de l'objectif a disparu mais l'objectif actif attend la validation de l'expert
13br-iota, barre d'outils → Delete positive deviations (icône add_circle, visible tant qu'il reste des marqueurs positifs) → Delete → Refreshle dialogue « Positive Deviation Analysis » liste Objectives : Treats Fire in Albi Cathedral et Actualities : Fire in Albi Cathedral at Sainte-Cecile Cathedral of Albi, tous deux à YES ; après Delete + Refresh : plus de path.area-fire, la cathédrale est redessinée en bâtiment, le bouton disparaît ; log supervision of <solution> ended: processes ended and no ACTIVE objective left (à la fin du processus, avant la validation : goes on: 1 ACTIVE objective(s) left) ; solution selected=false, aucun nœud EXPECTED_FREEZE ; l'alerte et l'objectif gelés restent FREEZE
13cr-iosemit Stop selected dataset puis 4 pas → r-iota FIND SOLUTION(S) → todo-list r-ioga (administrateur ; la nouvelle tâche arrive aussi en direct dans r-io4U) : nouvelle Confirm Fire = No, dialogue titré du nom de la tâche avec une note explicative → r-iota → Delete positive deviationsnouvelle alerte sûre (pulsar rouge) ; seconde solution déployée ; [SEQUENCE-FLOW-CONDITION] Confirm Fire -> Extinguish fires : false et vers EndEvent : true ; [OTHERWISE-RELEASE] … expected twin released: ['Treats Fire in Albi Cathedral', 'Fire in Albi Cathedral at …'] ; la seconde Extinguish fires reste grise ; r-iota « No alert detected », pulsar orange ; après la validation, supervision close comme en 13b
14r-ioga « Project List » → Export project (.zip) → Yesarchive Fire at Albi Cathedral.zip (~1,9 Mo, 17 entrées) : 7 modèles (project, 3 actifs, 3 freezed_*), règle CEP du capteur, scénario de jeu et dataset, matrice distance/temps, photos.
15redémarrage (base vide), Import ZIP de l'archivePOST …/projects/importProject en 200 ; log « project freeze models loaded: 3 » et « project active models loaded: 3 » ; le projet réapparaît dans « Project List » avec 12 lanceurs ; r-ioda Context And Partners : Albi, la cathédrale, les 2 pompiers, le capteur. Un WARN « CEP rules not generated while the project is loaded » est normal. L'import restitue l'état au moment de l'export (alerte active si exportée en fin de scénario)
08 · RP-06

Henri au barbecue : un scénario à fourches, trois fins

Points de contrôle, dans l'ordre. r-iosemit et r-iota restent ouverts sans rechargement. Les heures sont celles des runs de référence, à quelques secondes près.

#ContrôleAttendu
0amorçage avec Barbecuele projet apparaît dans « Project List » ; sa colonne APPLICATIONS ouvre r-iosemit et r-iota dans le contexte du projet
1r-iosemit, scénario « Henri Barbecue Story », mode TIMELINEfrise de 08:59:28 à 09:05:53 ; fourches Martinez barbecue state, Martinez swimming pool state, Henri may have bradycardia imbriquées, et leurs pistes ; RUNS montre les trois runs livrés ; aucune erreur à l'ouverture
2RUNS : supprimer tous les runs ; Restart ; r-iota, bouton radar, Supervision off, Save ; r-iosemit Play avec Continuous, ×1440, Deduction and deployment time = Given 10 s, Simulated actors do their tasks on their own, et le nom du run 108:59:48 Martinez swimming pool Open ; 09:00:19 Martinez barbecue On ; zones de 6 m et de 10 m dans la scène ; Paul au fond du jardin à 09:00:55
3suite du run 109:02:54 Henri burns ACTIVE, Henri On fire ; 09:02:55 fourche → Martinez barbecue On ; 09:03:12 Henri may drown 99 %, Henri Normal ; 09:03:13 fourche → Martinez swimming pool Open
4suite du run 109:03:22 Henri drowns, Henri Wet ; Henri may have bradycardia 20 % à 09:03:53, fourche → Henri may have bradycardia à 09:03:54, 80 % à 09:04:03 ; 09:04:13 Henri has bradycardia, Henri Bradycardia
5fin du run 109:04:53 Henri may die 90 % ; 09:05:23 Henri dies, Henri Dead ; aucune déduction, aucune tâche ; run enregistré avec 18 moments
6Restart ; r-iota Supervision on, Auto mode on (tâches de déplacement et d'attente, consolidation, prévisions cochées), Extrapolate the trajectories to anticipate the dangers décoché, Save ; Play avec le nom du run 2aucune réaction avant le contact : sans extrapolation, le risque de brûlure n'est vu qu'à 1,5 m ; 09:02:54 Henri burns ; fourche → Martinez barbecue On ; 09:03:02 déduction Henri burns + Henri may drown
7suite du run 209:03:22 Solution_1_FIRST déployée, Move to Martinez swimming pool par Julie (pas Paul) ; 09:03:22 Henri drowns ; 09:03:29 nouvelle déduction, 09:03:43 solution adaptée, Close a pool Ignored
8suite du run 209:03:56 Julie au bord de la piscine ; Rescue a child from drowning acceptée à 09:04:00 ; la bradycardie peut arriver avant le sauvetage (09:04:13 Henri has bradycardia) ; 09:04:29 Rescue faite, Henri sorti de l'eau, Henri drowns GONE ; fourche → Otherwise
9fin du run 2Perform a cardiac massage acceptée à 09:04:33 ; 09:05:35 massage fait, rythme à 77,8, Henri Normal, Henri has bradycardia GONE ; Henri vivant à la fin, barbecue On
10Restart ; r-iota Extrapolate the trajectories to anticipate the dangers coché, Save ; Play avec le nom du run 309:01:34 Henri may burn 66 %, Henri hors de la zone ; 09:01:42 déduction ; 09:01:54 solution déployée, Move to Martinez barbecue par Paul
11suite du run 309:02:28 Paul au barbecue ; Extinguish a barbecue faite à 09:02:37 ; barbecue Off, risque disparu, solution GONE, avant la brûlure de 09:02:54
12fin du run 309:02:55 fourche → Otherwise ; Henri burns jamais active, aucune noyade ; fin : Henri ACTIVE, barbecue Off
13mode RUNSles trois runs, sous leurs noms d'origine, avec leurs réglages en pastilles (Supervision, Extrapolation, Auto, Moves), leurs moments, la colonne Deduction (Given 10 s)
14Compare sur le run 3 (A) et le run 1 (B)deux lignes de moments et un tableau par date ; Solution_1_FIRST et les tâches du barbecue en A seul, Henri burns à 09:02:54 en B seul, en gras ; filtres par type de moment et Differences only
15Replay sur un run aux réglages différentsavertissement rouge, tableau Setting / Now / In this run, boutons Cancel (rien ne change) et Change the settings and replay (réglages écrits, l'histoire repart de zéro, nouveau run « (replay) »)
16RestartHenri de nouveau dans la maison, pas d'alerte, l'histoire se rejoue sans redémarrage
17log backend0 without collaboration, 0 sensor_node is null, 0 oscillation on node, 0 not converged
09 · RP-07

Orleans Flood Crisis : crue de la Loire au pont George-V (sans prévision, avec prévisions, adaptation du processus en cours)

Points de contrôle, dans l'ordre :

#ContrôleAttendu
0amorçage« Use-case successfully loaded !!! » ; Orleans Flood Crisis dans « Project List », 12 lanceurs ; r-iosemit : scénario « Loire Flood At Orleans », 20 dates · 40 DATA steps, Forecasts on · 4
Acte 1sans prévision
1r-iosemit : cliquer 📉 Forecasts on · 4 → « Forecasts off · 4 », « 4 muted » ; frise jusqu'à 18:00 (étape 6) ; r-iota, onglet Forecast « No forecast published yet », OPEN DETAILS → Cancel1 SURE ALERTS, statut rouge ; problème George-V bridge flood risk at George-V bridge (Risk), objectif Prevent the George-V bridge flood risk ; zone de danger autour du pont
2FIND SOLUTION(S) : Include forecast NO, Advanced options strategy YES → Find ; la boîte de la stratégie garde son Include forecast à NO, Preventive et Corrective cochés → Deduce (sans les options avancées : Find suffit)« Solution found » 27 task(s) : Start → Nominal SubTask → End, Event_Flow (CE) → Secure the surroundings of a threatened bridge
3Deploy and supervise« Deduction, deployment and supervision completed. », total: 27, 0 / 2, statut bleu
4r-iosemit, onglet TASKS, case AUTO de l'en-têteStop a tram line puis Close a bridge to traffic (2 h 30) se déroulent seules, l'horloge passe 19:00 et 20:00
5bascule à 20:00log [EVENT-FLOW] … rule fired puis [TAKEOVER] ; r-iota « Objective 'Prevent the George-V bridge flood risk' replaced by 'Secure the George-V bridge threatened by the flood': the risk became the actuality », 0 / 1 ; todo-list : tâches préventives non commencées « Abandoned · », attentes orange « not yet known (projected) »
6frise jusqu'au 16/11 00:00 (étape 18)Inspect 00:00 → 02:00, Reopen → 03:00, Announce → 03:30 ; r-iota 1 / 1, « 2 achieved tasks on 2 expected (total: 27) + 17 corrective », No alert detected, statut vert
Acte 2avec prévisions (profil redémarré, cas d'usage rechargé)
7frise jusqu'à 18:00 ; r-iota, onglet Forecast« Loire flood at George-V bridge may appear (100 % of the forecasts) » à 14/11 20:00 ; « Time available before … 2 h »
8FIND SOLUTION(S), Include forecast YES (défaut), Find (~2 min)« Incomplete process. … the preventive procedure would end its main task at 14/11 20:47, after the projected appearance at 14/11 20:00. Only the corrective procedure is possible. » ; « 17 task(s), 14/11 20:00 → 15/11 21:30 »
9Deploy and supervise« Solution deployed and supervised. », total: 17, 0 / 1
10AUTO ; frise jusqu'au 15/11 06:00 (étape 12) ; todo-list r-iogaWait until the flood has receded « 21:00 -> 15/11 22:00 (projected) » ; Wait until a bridge can be inspected « -> 15/11 23:30 (projected) »
11frise jusqu'au 16/11 00:00fin 16/11 03:30 ; 1 / 1, « 17 achieved tasks on 17 expected (total: 17) », No alert detected
Acte 3adaptation du processus en cours (profil redémarré, cas d'usage rechargé)
12frise jusqu'à 06:00 (étape 2) ; r-iota« No alert detected », « 1 watched risk · below 80 % » (5 %), encart Foreseen by the forecasts « 14/11 21:00 · George-V bridge flood risk ↑ 80 % »
13Find solution(s) on the forecast, Advanced options YES → Find ; stratégie : Corrective décoché → Deduce ; Deploy and supervise ; AUTO décoché« The deadlines projected by the forecasts are held. … (10 task(s), 14/11 06:02 → 14/11 18:17) » ; total: 10, 0 / 1
14frise jusqu'à 12:00 (étape 4)boîte Foreseen solution : « Actuality « Loire flood at George-V bridge » foreseen … from 2026-11-14 20:00 …, not treated by the supervised solution (urgency 0.67: it appears after the end of the plan) »
15Modify the running process → Apply« Changes to the running process » : « 10 task(s) unchanged. Secure the surroundings of a threatened bridge: added as a sub-process, started by its trigger (Event_Flow) only. », Added (70), Removed (1)
16Apply to the running process ; recharger r-iotalog [HOT-MODIFY] … accepted=true ; total: 27, 0 / 2
17AUTO coché ; frise jusqu'au 16/11 00:00à la crue : [EVENT-FLOW] … rule fired, [TAKEOVER] objective 'Prevent …' replaced by [Secure …], « Stop a tram line … already done by the preventive procedure, marked done » ; fin 16/11 05:30, 1 / 1, « 5 achieved tasks on 4 expected (total: 27) + 16 corrective », No alert detected
18log backend0 ERROR