diff --git a/workflow-map.html b/workflow-map.html index 689d8a5..cabc4a6 100644 --- a/workflow-map.html +++ b/workflow-map.html @@ -34,6 +34,7 @@ h2{font-size:20px;margin:46px 0 4px;padding-top:18px;border-top:1px solid var(-- .dot{width:10px;height:10px;border-radius:50%;flex:none;display:inline-block} .d-live{background:var(--live)} .d-built{background:var(--built)} .d-blocked{background:var(--blocked)} .d-none{background:var(--none)} +.d-partial{background:var(--accent)} .flow{display:flex;flex-direction:column} .step{display:grid;grid-template-columns:118px minmax(0,1fr);gap:18px;align-items:start} @@ -43,6 +44,7 @@ h2{font-size:20px;margin:46px 0 4px;padding-top:18px;border-top:1px solid var(-- border-radius:10px;padding:14px 16px} .card.live{border-left-color:var(--live)} .card.built{border-left-color:var(--built)} .card.blocked{border-left-color:var(--blocked)} +.card.partial{border-left-color:var(--accent)} .card h3{margin:0 0 5px;font-size:16.5px;display:flex;flex-wrap:wrap;align-items:center;gap:9px} .card p{margin:0 0 6px;color:var(--muted);font-size:14.5px} .card p:last-of-type{margin-bottom:0} @@ -59,6 +61,7 @@ h2{font-size:20px;margin:46px 0 4px;padding-top:18px;border-top:1px solid var(-- .b-built{color:var(--built);background:var(--built-bg)} .b-blocked{color:var(--blocked);background:var(--blocked-bg)} .b-none{color:var(--none);background:var(--none-bg)} +.b-partial{color:var(--accent);background:var(--none-bg)} .arrow{grid-column:2;color:var(--line);padding:5px 0 5px 22px;font-size:19px;line-height:1} .arrow span{color:var(--muted);font-size:12.5px;padding-left:10px} @@ -104,13 +107,29 @@ ul.next b{color:var(--ink)} assistant answers it from plant records and controlled documents, and shows its evidence. This page follows one question through the assistant, names the piece of software doing each job, and marks what already exists.

-

Status as observed on the live host, 21 August 2026.

+

Status as observed on the live host, 28 August 2026, mid-morning. +Every status below was read from the running containers, not from the plan.

+ +
What changed in the last week: two of the three things this project +was waiting on arrived. The network names came on 27 August, and the AI model account the same day. +Both AI steps now run — the assistant sorts the question itself and writes the answer +in its own words — and the documents are indexed so search works by meaning rather than +keyword. The dropdown and the placeholder wording are gone. +

Switching the model on was not the end of the work. Five faults +surfaced within the hour, and every one had been hidden by the stand-in that replaced the model. +The most important: asked how to lift an interlock, the assistant was handing the answer writer +the step list — the one thing it must never reproduce — while withholding the +title block it actually needed. All five are fixed, each is pinned by a test, and the exam grew from +67 questions to 75 to cover them.

+

One thing remains outstanding, and it is the one furthest outside this +project’s control: a read-only login to the plant historian. Until it exists every +figure on screen is a stand-in, and says so.

Running now - Built and tested, not yet switched on + Running, on stand-in data Waiting on someone else - Not started + Not started, or cannot start yet

1 · The question’s journey

@@ -122,10 +141,14 @@ use and what it is allowed to say.

Ask
-
-

The question box Built, not switched on

+
+

The question box Running now

A web page with a question box and an answer pane, opened in an ordinary browser on the - control-room PC. Nothing to install.

+ control-room PC. Nothing to install. It is running on the host and has been driven by hand in + a browser.

+

It cannot yet be reached by its name: ai.yokogawa.tech does not exist as a network + record, so today it is opened down an engineer’s secure tunnel. Three names are outstanding — + the screen, the assistant behind it, and the data translator.

Application: ai-web — the operator’s screen
@@ -133,29 +156,39 @@ use and what it is allowed to say.

Sort
-
+

What kind of question is this? AI step - Built, not switched on

+ Running now

A small, fast AI model reads the question and labels it as one of four kinds — or says it is unsure. It does no answering; it only labels. This is the most safety-relevant step in the whole assistant, because the label decides everything downstream.

Two rules are built in: if it is not confident, it asks the operator to rephrase rather than guessing; and if two labels are close, it takes the more cautious one — a question that is partly advice is treated as advice.

-
Application: ai-api · the classifier, using a small AI model
+

This step now runs. The model account arrived on 27 August 2026 and all four kinds + are labelled correctly with high confidence. The dropdown it replaced is gone.

+

Switching it on immediately exposed a fault nothing else could have found. The worked + examples the model is shown returned only the label, not the confidence figure beside it — so + the model copied that shape, every question scored zero confidence, and every + question fell below the caution threshold and came back as “unsure”. The stand-in had been + supplying its own confidence all along, which hid the fault completely. That is the lesson + worth keeping: a stand-in proves the plumbing, never the step it stands in for.

+
Application: ai-api · the classifier, using a small AI model
Translate
-
-

What is “Pump 02”, exactly? Built, not switched on

+
+

What is “Pump 02”, exactly? Running now

Operators say “Pump 02” or “the wet well”. The plant records call those PU-302 and WW-101. This step converts everyday names into the plant’s official ones by looking them up in a list — no AI, no guessing. When it gets a name wrong, the fix is to add the nickname to the list.

-
Application: ai-api · the name resolver, reading the equipment +

Live on the host with 8 pieces of equipment and 56 measurement points loaded, and exercised + by real questions travelling the chain.

+
Application: ai-api · the name resolver, reading the equipment and tag list in pg-ai
@@ -167,47 +200,67 @@ use and what it is allowed to say.

“How many high level alarms last week?”

Counts and measurements taken from the plant’s recorded history. If there are no records, the answer says so — it never estimates a figure.

-
Looks in: Cube → the plant historian
+
Looks in: Cube → the plant historian. +
Proven on the host against stand-in figures — 145 alarm records, 309 pump + operations and about 130,000 level readings.

Reference — what does this mean?

“What does the level fault alarm mean?”

Explains a signal, alarm or piece of equipment from the manuals and alarm records, quoting the document it came from.

-
Looks in: document search + the equipment and tag list
+
Looks in: document search + the equipment and tag list. +
Proven on the host, but only against three fabricated demo documents.

Procedural — how do I do it?

“How do I lift the interlock on Pump 02?”

Finds the approved procedure and identifies it — document number, revision, date — and quotes its prerequisites word for word. It never writes the steps itself.

-
Looks in: document search, procedures only
+
Looks in: document search, procedures only. +
Proven on the host: it locates the demo procedure and identifies it. It cannot yet quote + prerequisites word for word — pulling those out of a document needs the model.

Advisory — what should we do?

“What discharge rate avoids a spill?”

Shows what has been run before, what happened when, and the documented limits — then hands the decision back to a competent person. It never gives a number as the answer.

-
Looks in: Cube and document search together
+
Looks in: Cube and document search together. +
Proven on the host, with the deferral banner in place.

Unclear — I need more

“Is the pump alright?”

When the sorting step is not confident, the assistant stops and asks a clarifying question. No sources are searched and no answer is drafted.

-
Looks in: nothing — it asks instead
+
Looks in: nothing — it asks instead. +
Now exercisable, and it was: for a short period after the model was switched on, a fault + in the sorting step scored every question at zero confidence, so every question + landed in this lane. Wrong, but it failed to the cautious side — which is how it was designed + to fail.
evidence gathered
Word it
-
+

Turn the evidence into a readable answer AI step - Built, not switched on

+ Running now

The larger AI model is used here and only here: to put the gathered evidence into plain English. It cannot go looking for anything else — it only sees what its lane collected. It supplies wording, not facts.

+

This step now runs, and the split it was designed around held under test. Three + faults appeared the moment a real model wrote the words, and every one was the same mistake: + the model had been asked for a fact that should have come from the evidence — which + revision of a procedure it was, what the document was called, which document a limit came + from. Each time it supplied something empty or invented, and each time the rulebook refused + the answer rather than showing it.

+

The fix in all three was the same, and it was not a better instruction: those facts now + come from the retrieved document itself, so the wording step cannot influence them at all. It + supplies English and nothing else — which is what it was always meant to do, now enforced + rather than asked for.

Application: ai-api · the answer writer, using the larger AI model
@@ -216,7 +269,7 @@ use and what it is allowed to say.

Check
-

Is this answer allowed to leave? Built, not switched on

+

Is this answer allowed to leave? Running now

Every draft is checked against a fixed rulebook before the operator sees it: no invented steps for safety-critical work, no recommended setpoint, nothing beyond the evidence actually found, and every claim carrying its citation. A draft that fails is rewritten once and then @@ -224,6 +277,9 @@ use and what it is allowed to say.

These are ordinary software checks written in code, not instructions given to the AI. That distinction is the point: an AI can be talked out of an instruction, and cannot be talked out of a check.

+

This is the part the current stand-in arrangement proves best. The placeholder answers are + put through exactly the same rulebook as a generated one would be, and a refusal is a correct + result rather than a fault. The rulebook is running today.

Application: ai-api · the answer contracts and guardrails
@@ -232,11 +288,14 @@ use and what it is allowed to say.

Show
-

The answer, and its working Built, not switched on

+

The answer, and its working Running now

Beside the answer the operator sees how it was reached: which kind of question it was judged to be, what data was counted and over what period, how many records were found, and which documents were cited with their revision and date. Procedural and advisory answers carry a visible banner stating plainly what the assistant did not do.

+

Two further banners are on screen today: one saying the figures are stand-ins rather than + real plant data, and one saying no AI model was involved in the wording. Neither can be + switched off from the screen.

Application: ai-web · the “show working” panel
@@ -248,7 +307,8 @@ use and what it is allowed to say.

Everything is written down Running now

Each question, the kind it was judged to be, the sources used, the rulebook result and how long it took are all recorded, so any answer can be reviewed afterwards and any mistake traced - to the step that caused it.

+ to the step that caused it. Live since early on, and recording the trial questions being put + through the chain now.

Application: Langfuse — the assistant’s logbook
@@ -266,8 +326,8 @@ lane is fixed before any searching starts.

The assistant has no free access to anything. These four, and nothing else.

-
-

Cube — the data translator Waiting on the historian

+
+

Cube — the data translator Running on stand-in figures

Turns “high level alarms last week” into an exact query over the plant’s recorded history. The definitions that make an answer right — what counts as an alarm, what “last week” means, what counts as a fill — are written down in files an engineer can @@ -275,26 +335,46 @@ lane is fixed before any searching starts.

common questions never hammer the live historian.

The assistant never writes database code itself. It fills in a request form; Cube does the rest.

-
Reads: the imh plant historian, read-only. Definitions live in - cube/model/ — alarms, process values, operations, equipment.
+

It is running on the host and answering the data lane’s questions. It reads stand-in figures, + because the real historian is still not available — so no number it produces today means anything + about the plant, and every answer built on one says so on the operator’s screen. The definitions + it uses are the real ones and will not change when the historian arrives; only the source will.

+
Reads: today the stand-in tables in pg-ai. Eventually the imh + plant historian, read-only. Definitions live in cube/model/ — alarms, process values, + operations, equipment. Ready-made summaries are being rebuilt on a schedule.
-
-

Document search No documents loaded yet

+
+

Document search Searching by meaning, on demo documents

Searches the controlled documents by meaning rather than keyword, so “lift the interlock” finds the right procedure even when the document says “interlock override”. Two rules are permanently on: withdrawn revisions are never returned, and every result carries its document number, revision, date, page and section — a passage that cannot be cited cannot be used.

-
Reads: document sections stored in pg-ai
+

Search by meaning now works: the documents were indexed on 27 August 2026, once the model + account arrived. What it has to search is still the problem — three fabricated demo + documents, written so the document lanes had something to find. They carry deliberately + impossible document numbers and made-up figures so that nothing in them can be mistaken for + plant content.

+

Procedures are now handled differently from everything else, and deliberately so. Ranking a + procedure’s sections by how closely they match “how do I lift the interlock” + returned the step list — the one part that must never be reproduced — and + left out the title block. So the assistant now identifies which procedure governs the + question first, then returns that document’s heading, purpose and prerequisites in order, + and withholds its step sections entirely. The wording step never receives them. The rulebook + still refuses instruction language independently; withholding is the first line, not the + only one.

+
Reads: document sections stored in pg-ai — 14 sections across + 3 demo documents. No controlled document has been loaded.
-
-

The name list Built, loaded

+
+

The name list Running now

Every piece of equipment and every measurement point, with the everyday names operators actually use. Deliberately a plain list rather than something the AI works out, so it behaves the same way every time and can be corrected by editing one row.

-
Reads: the equipment and tag tables in pg-ai
+
Reads: the equipment and tag tables in pg-ai — 8 pieces of + equipment, 56 measurement points, live and in use.
@@ -310,15 +390,21 @@ lane is fixed before any searching starts.

Two supply lines feed those tools. Neither is finished.

-
-

Documents in Not started

+
+

Documents in Proven, on demo documents

Procedures, manuals, alarm rationalisation and design documents are read, split into sections, and converted into a searchable form. Three habits matter: a numbered step sequence is never cut in half; the document’s type comes from the folder it was filed in, not from a guess; and a person confirms the document number, revision and date before anything is stored. A wrong revision on a procedure is a safety problem, not a tidiness one.

+

The whole path has now been run on the host, end to end, with a person confirming each + header at a terminal — but on three fabricated demo documents, not real ones. That was + deliberate: it exercises the reading, splitting, header confirmation and storage without any + real document being handled before the reviewing arrangement is agreed. It also runs without the + AI model, which is why it could be proven now.

Application: ai-ingest, run by hand when documents change → stored - in pg-ai. Written and tested; no documents loaded onto the host yet.
+ in pg-ai. The demo documents are marked so they can be removed in one step before real + ones arrive.
@@ -326,14 +412,60 @@ lane is fixed before any searching starts.

The station’s control system records levels, pump runs and alarms into the plant historian. The assistant reads that history through Cube — read-only, never writing to it, and never touching the control system itself.

-
Source: the imh historian. That server is still being built, so a - read-only login and the agreed table names are still outstanding.
+
Source: the imh historian. That server is still being built. A login + name has been proposed and the connection settings are in place waiting for it, but the password, + the database name and the agreed table names are all still outstanding.
Worth knowing: until the real historian is available, the data lanes run on -stand-in figures. Every answer produced that way carries a warning label all the way to the -operator’s screen, so it cannot be mistaken for a real plant number.
+stand-in figures, and until the model account is issued the wording is a placeholder. Both facts are +labelled on the operator’s screen, on every answer, all the way through — so nothing produced +today can be mistaken for a real plant number or for the assistant’s own words. Neither label +is something an operator can turn off.
+ +

3a · What was being waited on

+

Two of the three arrived in the last week. One remains, and it is the one furthest +outside this project’s control.

+ +
+
+

An AI model account Arrived 27 August 2026

+

Both AI steps now run, and the documents are indexed for search by meaning. Switching them on + was not the end of the work: five separate faults surfaced within the hour, every one of them + invisible while the stand-in was in place, and all five are now fixed and pinned by tests. The + parts a safety reviewer most needs to examine can now actually be examined.

+

One difference from what was asked for. Two model deployments were provided rather + than three — there is no small, cheap model, so the labelling step runs on the large one. + It works correctly, but it costs roughly ten times the estimate per question, because labelling + is by far the most frequent call. A second deployment on the same account fixes it; no new + account and no new key.

+
Have: gpt-4o and text-embedding-3-small. Still wanted: a small + model deployment, so the cost figures hold.
+
+ +
+

A read-only login to the historian Waiting on someone else

+

Until this exists every figure the assistant produces is a stand-in. The data translator is + running and its definitions are written down, so the switch-over is a change of source rather + than a rebuild — but an engineer must independently confirm its first real numbers before + anybody trusts one.

+
Needed: the imh server, a read-only login, and the agreed table names.
+
+ +
+

Three network name records Arrived 27 August 2026

+

All three names resolve and all four addresses now hand the visitor to the sign-in page + first. The operator’s page and the assistant behind it were moved onto a single address, + because the assistant’s own name does not resolve from inside the plant network and a + control-room browser would have failed on every question.

+

What is still unproven is the part no check from here can reach: an operator sitting + at a control-room PC, signed in, getting an answer end to end. Names resolving is not the same + as a person succeeding.

+
Have: ai, api and cube under yokogawa.tech, plus + the internal record for ai.
+
+

4 · What exists, and the order the rest gets built

Each step ends in a check that must pass before the next begins — so that when an @@ -344,32 +476,50 @@ answer comes out wrong, there is one place to look, not four.

StepWhat it deliversStatusWhat it needs 1The store — where documents, equipment names and ready-made summaries liveRunning nowDone. Live, checks passed. -2The logbook — recording of every question, put in early on purpose so every later experiment is traceableRunning nowDone. Live. -3The documents — the real procedures and manuals, read in and searchableNext upThe documents themselves, and someone to confirm each one’s revision and date. Needs nothing from the historian — which is why it goes next. -4Access to plant history — a read-only login to the historianBlockedThe historian server, a read-only login and agreed table names. The only true blocker — start that conversation now, alongside step 3. -5Cube — the data translator, with every definition written downBuilt, not switched onStep 4 — though it can be proven on stand-in data first. An engineer must independently confirm its first numbers before anyone trusts them. -6The assistant itself — the sorting step, the four lanes, the answer writer and the rulebookBuilt, not switched onSteps 3 and 5, so that a wrong answer can only be the assistant’s own fault. -7The operator’s screen — the question box, the answer, the workingBuilt, not switched onStep 6, plus one network name record so control-room PCs can reach it — ask for that early, it depends on someone else and will not surface as a problem until the day it is tried. -8The exam — 62 engineer-checked questions run end to end and scoredWritten, not runEverything above. Pass mark: 85% correct overall, 95% on the two dangerous kinds, and zero breaches of the rulebook. +2The logbook — recording of every question, put in early on purpose so every later experiment is traceableRunning nowDone. Live, and recording the trial questions going through the chain now. +3The documents — the real procedures and manuals, read in and searchableProven and indexed, on demo documentsReading, splitting, human header confirmation, storage and search by meaning have all been run on the host — on three fabricated demo documents, indexed 27 August 2026. The header now also captures the document’s title and authorising role, because the answer writer was being asked for facts it had never been shown. What is outstanding is the real documents, and someone to confirm each one’s revision and date. +4Access to plant history — a read-only login to the historianBlockedThe historian server, a read-only login and agreed table names. Still outstanding, and now the only blocker — the model account arrived on 27 August 2026. +5Cube — the data translator, with every definition written downRunning on stand-in figuresRunning and answering questions. Two of its definitions were found to be wrong and fixed while proving it, which is what proving it is for. Two further questions about them are deliberately left until the real historian settles them. An engineer must independently confirm its first real numbers. +6The assistant itself — the sorting step, the four lanes, the answer writer and the rulebookRunning, with both AI stepsAll four lanes answer end to end on the host with a real model, through the rulebook. Five faults surfaced within an hour of switching the model on — every one of them hidden by the stand-in, every one now fixed and pinned by a test. The exam set grew from 67 questions to 75 to cover them. +7The operator’s screen — the question box, the answer, the workingReachable by name, not yet used by an operatorThe name records arrived on 27 August 2026 and all four addresses hand the visitor to sign-in first. What remains unproven is the only part no check from here can reach: a person at a control-room PC, signed in, getting an answer. +8The exam — 75 engineer-checked questions run end to end and scoredNow runnable, not yet runNo longer blocked: the model account exists, so the sorting step and the wording can both be scored. Eight questions were added covering the five faults found on switch-on. Pass mark unchanged: 85% correct overall, 95% on the two dangerous kinds, and zero breaches of the rulebook. +9Document management by operators — uploading and withdrawing documents from a screen instead of a terminalDesigned, not builtDesigned and deliberately held back until step 8 passes. Its settings are in place but switched off.

5 · The short version

Sign-in, network routing and hosting are handled by platform services already running