INDEPENDENT / NON-CANON / CLINICAL
『観測者圏|CLINICAL』/CASE 01
Main Canonへの自動反映を行わない独立した非正史作品です。
Phase 01|正常値の中にいる
午前四時三十七分。中央深層位相研究所――標識ではCDPI、職員の口ではセデッピ――の夜勤Clinicalで、自動扉が開いた。職員の急病や曝露を受ける診療区画で救急対応を担う浅見は、入ってきた男の顔より先に歩幅を見た。第三解析室の夜間比較班員、三浦圭吾。研究員として働く三浦なら、浅見も何度か見たことがある。だが、いま彼が首から下げている入館証に仕事上の意味はなかった。
ここでは患者だった。
まっすぐ歩けている。壁には触れていない。靴紐もほどけていない。遠目には、夜勤明けの職員が少し具合を悪くして来ただけに見えた。近づくと違った。呼吸が浅い。息苦しいと訴えるほどではないのに、吸う回数だけが多い。皮膚は冷え、手は落ち着きなく擦り合わされている。三浦は消毒薬の薄い匂いが残る診療区画へ入り、最初の椅子へ座る前に言った。
「帰っていいですか」
浅見は返事をしなかった。椅子を引き、座る位置を指した。
「まず、帰れるかどうかを決めるために診ます」
「六時から、夜間比較結果を持ち寄るReviewがあるんです」
「それもあとで聞きます。いまは身体から」
指先へパルスオキシメータを挟む。赤い光が爪を透かした。SpO₂表示は、ひと目で誰かを走らせるような数字ではない。血圧も崩れていない。体温も発熱域ではなかった。
〈SpO₂:指先センサーでみる末梢血酸素飽和度の表示〉
三浦の肩がわずかに緩んだ。浅見はそれを見逃さない。
「安心しました?」
「……少し」
「しないでください。まだ一回目です」
脈を取り直す。最初より速い。呼吸数も上がっている。浅見が胸郭の上下を数え始めると、三浦は無意識に息を遅くしようとした。
「変えなくていいです」
「変えてません」
「いま、変えました」
三浦が口を閉じた。悪心。寒気。動悸。立ったときの軽いふらつき。胸痛なし。自覚的な呼吸苦なし。嘔吐なし。睡眠は短い。カフェインは多い。言葉だけを並べれば、軽い説明はいくらでもついた。夜勤。空腹。睡眠不足。カフェイン。緊張。けれど浅見の目の前では、三浦の身体が本人の説明より少しだけ速く悪い方向へ動いていた。十二分前より脈が速い。呼吸数も多い。悪心は消えない。寒気も残る。
単独の値は、まだ正常範囲の内側にいるものが多かった。推移だけが、静かに外へ向かっていた。
*
当直Clinical Leadの榊が入ってきた。その時間帯の診療と安全判断を束ねる役割だ。挨拶を短く済ませ、画面と三浦本人を交互に見る。数値より、質問を聞いてから答えるまでの間を見ていた。
「第三解析室、夜間比較班。六時Review担当。悪心、寒気、動悸。自覚的呼吸苦なし。発熱なし。血圧維持。SpO₂表示は保たれてます。ただ、脈拍と呼吸数のトレンドは上向きです」
浅見がまとめると、榊は即座に言った。
「Clinical Safety Hold」
三浦が顔を上げた。
「入院ですか」
「診断名でも入院命令でもありません。現時点で、一人で帰宅させることも、勤務へ戻すことも、安全と言えないという判断です」
「六時までには」
「時間を先に決めません」
その言い方に苛立ったのか、三浦の呼吸が一段浅くなる。浅見は何も言わずモニターへ目を送った。三浦も表示を見て、自分が焦っていることを認めたように口を閉じた。検体と追加分析を担う冬木が採血セットを持って入る。包装を開く音。手袋が手首で弾ける音。針が皮膚を抜け、採血管へ暗い赤が上がっていく。浅見は問診を続け、榊は心電図、血糖、代謝、感染、循環、神経の評価順を組み替えた。誰も「原因」を取りにいかなかった。いま必要なのは、帰してはいけない条件を見落とさないことだった。CDPIの組織運用を担う白根灯弦から連絡が入る。三浦が六時のReviewへ戻れるか。榊は「未判定です」とだけ返した。
白根は一拍置き、Reviewを代替体制へ切り替えた。
「回るんですか」
三浦が訊いた。
「回します」
榊が答えた。
「研究上重要な人であることと、勤務可能であることは別です」
三浦の表情が少しだけ歪んだ。安心ではない。自分がいなくても仕事が動くことへの、言葉にしにくい喪失だった。
*
Clinical入口では、ETHICS / CONSENT――患者の同意と情報利用の境界を担う水城由莉が、研究・記録側の黒瀬零を止めていた。黒瀬は第三解析室のログを持っていた。
「診療上の問診と、研究聴取を混ぜないでください」
「了解」
「ログは置いていけます。でも、本人へ質問するのはClinicalが終わってから」
黒瀬は端末を下げた。反論しない。三浦はベッドから、その短いやり取りを見ていた。研究所の中で自分は普段、記録を作る側にいる。いまは記録される側だった。その立場の反転を、まだ怖いとは思わなかった。最初の異変が出るまでは。
*
「悪心より前に、何かありましたか」
浅見が訊くと、三浦は答えなかった。遠くで冷却ファンが低く回り、隣室の自動ドアが開いて閉じた。その数秒だけ、Clinicalの中から人の声が消えた。
「……時間が」
「時間?」
「数分だけ、飛んだ感じがしたんです」
浅見のペンが止まった。
「寝た?」
「分かりません。でも座ってました。比較画面を開いて、一件目を見て、二件目へ移って……次がない」
「次に覚えているのは」
「三件目のコメント欄です」
「誰が開いた」
三浦は浅見を見た。
「自分だと思います」
「覚えてはいない?」
「はい」
その一音が、さっきまでより小さかった。榊が立った。神経評価を担う連携医、堀へ連絡。監視を継続。三浦は会話についてきている。名前も場所も日付も分かる。だからこそ、記憶の穴だけが異物のように残った。堀が入ってきた。歩行、眼球運動、瞳孔、顔面、四肢、感覚、言語、注意、見当識。明らかな局在所見は現時点で取れない。
三浦の肩が下がった。
「安心していいという意味ではありません」
「分かってます」
「本当に?」
「皆さん、そればっかり言うので」
少しだけ笑いが起きた。その笑いが消えるまで、二十分もかからなかった。
*
三回目の再アセスで、三浦が浅見へ訊いた。
「堀さん、いつ来ました?」
診療区画の空気が変わった。誰も動かなかったわけではない。全員がほぼ同時に動いたから、一瞬だけ静かになったように感じられた。浅見は三浦の顔を見る。冬木は作業中の手を止めない。榊は時計を見る。堀は三浦の正面へ回った。
「私と何をしたか覚えていますか」
「神経の……検査」
「どんな」
三浦は片手を上げかけた。指が空中で止まった。
「歩いた。手を……」
続かない。さっきは答えられていた。浅見の背中を冷たいものが一筋だけ降りた。空調は変わっていない。室温も同じだった。
「最後に確実に覚えているところ」
堀の声は低く、速い。
「水城さんと黒瀬さんが入口で話してたところ」
「そのあと」
三浦の瞳が揺れた。
「……ないです」
榊の声が変わった。
「帰宅なし。勤務復帰なし。神経評価、継続。モニター継続」
強い口調だった。怒鳴ってはいない。それでも誰も聞き返さなかった。Clinicalの自動扉が、もう一度開いた。女性職員が壁へ片手をついて立っていた。
「すみません」
顔色が悪い。
「第三解析室の瀬川奈央です」
三浦が身体を起こしかけた。
「瀬川さん?」
「動かないで」
浅見が片手で止めた。瀬川は額を押さえた。
「頭、痛くて……吐き気も」
「視界は」
「さっき、光が変に見えて」
堀がすぐに近づく。
「片頭痛歴はありますか」
「あります。でも……今夜のことが」
瀬川の声が途切れた。
「順番にならないです」
室内の空気が、さらに一段低く沈んだ。
「覚えていない部分がありますか」
浅見が訊いた。瀬川はゆっくり頷いた。
「記憶が、ないです」
榊が立った。今度は、誰か一人ではなくClinical全体が動いた。
Phase 02|二人目
二人目が入った瞬間、Clinicalは部屋ではなく動線になった。浅見が空いている処置ベイへ椅子を引く。冬木が新しい採血セットを取る。堀が三浦側から身体を反転させ、早瀬が感染管理端末を抱えて逆方向へ抜ける。榊は入口から二歩で瀬川の正面へ詰め、歩行を止める。カーテンが閉じ、二人の患者の視線が切られた。同じ部屋にいたからこそ、同じ患者として扱わない。
「瀬川さん、こちらへ。三浦さんの状態は聞かないでください。三浦さんにも瀬川さんの状態は伝えません」
瀬川が眉を寄せた。
「同じ部屋だったんですけど」
「だからです」
浅見は言った。「相手の症状を知ると、自分の記憶まで似て見えることがあります。まず別々に取ります」感染管理を担う早瀬は、症例定義を作る前に接触・滞在・曝露情報を分離した。第三解析室の入退室。共用飲食。薬剤。清掃。設備保守。隣接室。換気。夜勤メンバー。堀は瀬川の片頭痛既往を取った。片目か両目か。視覚現象は目を閉じても続いたか。頭痛の前兆として経験したことがあるか。記憶の混乱はその前か後か。問診は速かった。けれど、速さは省略ではなかった。質問の合間に瞳孔を見た。皮膚の色を見た。呼吸を見た。答えるまでの間を見た。
三浦側では浅見が再アセスを続けた。瀬川側では堀が神経評価を重ね、冬木は二人の検体を物理的に別ラックへ置いて採血時刻を二重確認した。
「同じCaseとしてまとめないでください」
冬木は記録担当へ言った。
「まだCase AとB。まとめるのはあと」
*
黒瀬から第三解析室の最低限のログが届いた。二人とも同じ時間帯に在室。端末操作は残る。停止はない。ただし、ある区間だけActivity Recordの密度が落ちている。榊が画面を見た。
「空白?」
「空白とは書きません」
黒瀬が即座に返す。「記録密度低下。何が減ったのかはこれからです」
「二人の記憶混乱と同時?」
「Clock Sourceが違います」
別回線からFacility担当が割って入った。
「いま重ねないでください。換算差を取っています」
榊の指が止まった。
「了解。同時刻とは呼ばない」
その一言で、画面上に引きかけた線が消された。
*
第三解析室では、夜勤中に換気モードの補正が一度入っていた。異常警報ではない。設備制御上の通常範囲の変更。早瀬はそれを感染や環境曝露の候補から外さない。
「環境測定、取れますか」
「現在値なら」
「現在値しかない?」
「連続記録がある項目と、ない項目があります」
Facilityの返答に、Clinical側の誰も安心しなかった。現在の空気が正常でも、夜の空気が正常だったとは限らない。
*
瀬川が目を閉じたまま言った。
「三浦さんも、記憶なんですか」
浅見は答えなかった。
「すみません。聞かない約束でしたね」
「はい」
「でも……自分だけじゃないと思いたいんです」
その言葉に、浅見は一瞬だけ息を止めた。Clinicalが戦っているのは病気だけではなかった。人間が不確定なものへ意味を与えたがる速さとも戦っていた。その意味づけは、まだ人間だけの問題だった。あと一時間もしないうちに、AIまで参加することになる。
Phase 03|一度だけ出た
第三解析室は、静かすぎた。誰も入っていない部屋をFacilityの固定カメラだけが見ている。机。椅子。閉じた端末。壁時計。天井の給気口。人間がいなくなると、研究室は急に設備の集合へ戻る。画面の中で唯一動いているのは空気だった。目には見えない。給気口の確認紙が一定方向へ震えていることでしか分からない。環境測定の再取得は、どこも大きく崩れていなかった。
ただ、一件だけ。夜間ログに、未分類VOCシグナルが残っていた。
〈VOC:揮発性有機化合物群。ここでは化学種未同定の単発環境シグナル〉
一度だけ。
再測定では出ない。隣接センサーでも出ない。自己診断異常も記録されていない。
それがかえって消えなかった。
*
「患者の前で大きく出さないでください」
冬木が言った。
「理由」
榊が訊いた。
「答えに見えるからです」
冬木はsingle event / unclassifiedの表示 〈単発事象/未分類〉を指した。「患者が症状をこれへ合わせ始める。私たちも同じです」早瀬も頷く。
「すでに問い合わせが来ています」
浅見の内線には、夜勤者から短い申告が続いていた。頭が重い。少し気持ち悪かった。眠い。第三解析室の近くを通った。どれも無視はできない。どれも同じ症例群へ入れてよいわけではない。情報そのものが、患者を増やし始めていた。
*
白根は研究所内の問い合わせ窓口を一本化した。
「隠さない。ただし、確認済みと未確認を分ける。『二人倒れた』『空気に毒が出た』『記憶が消えた』は現時点の事実ではない」
「もう回ってます」
運用側の職員が言った。
「だから訂正します」
白根の声は平坦だった。「噂を症例定義にしない」
*
Facility Controlでは担当者が操作卓へ走り、別の職員が南側機械区画へ向かった。Service CorridorのAccess表示が一つずつ変わり、第三解析室へ近づく人流は逆向きへ押し戻された。Clinicalの誰も危険区画へは行かなかった。診る場所と止める場所を分けたまま、建物だけを動かす。BMS――建物設備を統合監視する系統――の履歴、外気ダンパー位置、給排気状態、差圧、環境センサー自己診断、保守時刻列。設定を変更する前に監査用Snapshotを切った。
給気。排気。机上高。床面。廊下。隣接室。どこにもVOCは戻らない。空気は無臭だった。それは安心にならなかった。
*
午前五時十二分。AI Opsから、初めてCase支援の申し出が入った。CDPIでは、大量の異種Recordを人間だけで横断する必要があるとき、AI解析支援系を使う。文献、Archive、ログ、時系列、設備状態、検査結果。速さは圧倒的だった。しかし、権限はない。
「何を入れますか」
AI Opsの当直担当が訊いた。榊は答える前に水城を見た。
「診療情報は利用目的を限定。研究側Rawとの横断は別Lane。本人同意が必要なものは入れない」
水城が先に境界を引いた。黒瀬が続けた。
「研究ログは保全Copyから。Originalへは触れない」
Facility担当は、保全済みの設備履歴を開いた。
「設備ログはSnapshot済み。現在値とHistoricalを分けます」
冬木は検査側の入力欄を指で押さえた。
「検査値は採血時刻付き。数値だけ抜かないでください」
AI Ops担当が短く返した。
「了解。入力Packageを分離します」
そこで初めて、AIがCaseへ入った。誰も、その数分後にAIの出した一行で部屋の空気が変わるとは思っていなかった。
Phase 04|三人目ではない
松永は、自分の足でClinicalへ入ってきた。西棟設備記録室の夜勤者。第三解析室には入っていない。頭痛なし。悪心なし。視覚症状なし。動悸なし。寒気なし。短い仮眠から急に起こされ、数十秒だけ曜日と時刻の感覚がつながらなかった。
「やっぱり三人目なんですか」
扉が閉じる前に訊いた。
「その質問に答えるために診ます」
浅見は三浦・瀬川からさらに離れた区画へ通した。情報が人を似せる前に、人を離す。
*
堀が認知と神経評価を重ねる。松永は速く答えた。見当識も注意も崩れない。
「今のところ、三浦さん・瀬川さんと同じ症例群へ入れる所見は取りません」
榊が言った。
「絶対に違う?」
「そこまでは言いません」
「じゃあ何なんですか」
浅見がカフを外した。
「起き抜けの認知が一時的に鈍る睡眠慣性で説明できる範囲に近いです。ただし危険なものがないか確認してから帰します」
「三人目じゃないのに呼んだ?」
「“三人目かもしれない”を“三人目だった”にしないためです」
松永は低く息を吐いた。
「現場では、もう三人目って回ってます」
早瀬が顔を上げた。
「誰が言った」
「分かりません。AIが似てるって出したって話も」
Clinicalの全員が止まった。AI Opsの解析は、まだ榊たちの正式Reviewへ上がっていない。誰かが先に見た。
*
「出力Surfaceを止めてください」
黒瀬が即座に言った。
「誰がアクセスしたか、Auditを」
AI Ops担当の返答が速い。
「解析Jobはまだ内部Laneです。共有権限は限定。出力そのものの外部送信Recordは現時点で確認できません」
「じゃあ『AIが似てると言った』はどこから来た」
白根の声が低くなった。
「確認します」
水城が松永を見た。
「その話、誰から聞きました?」
「休憩室です。誰かが『Deep Phase系の過去Caseに似てるらしい』って」
誰も、すぐに返事をしなかった。
Deep Phase――深層位相。
CDPIが扱う研究カテゴリの一つ。未解明の現象や観測境界を、既存分野へ早まって押し込まないためのOperationalな枠組みでもある。
万能原因ではない。
答えの名前でもない。
しかし研究所の中でその言葉は強すぎた。言った瞬間、何も分かっていない出来事に巨大な輪郭を与えてしまう。榊が唇の内側を一度噛んだ。
「その名前、Clinicalでは使わないでください」
松永が戸惑った。
「でも――」
「患者の症状を、その言葉へ合わせたくない」
早瀬が続けた。
「問い合わせ窓口にも出します。『Deep Phase関連』は未確認。症例定義へ入れない」
白根は一度大きく息を吐いた。
「研究側にも同じ指示を出します」
その瞬間、Clinicalは病気だけではなく、言葉と戦い始めた。
*
冬木が検査室から戻ってきた。歩く速度がいつもより速い。走ってはいない。走らないことが、逆に悪い知らせに見えた。
「追加分析、出ました」
榊が手を出した。
「どれ」
冬木は端末を渡さない。
「二人ともです」
浅見の喉が乾いた。
「何が」
冬木が画面を向けた。
「CO曝露を支持する所見があります」
モニターは何事もないように鳴っていた。三浦のSpO₂も、瀬川のSpO₂も、大きく崩れていない。
「それで切れません」
冬木は言った。通常の二波長式パルスオキシメータはCOHbを十分に区別できない。必要なのは血液のCO-oximetryだった。
〈CO-oximetry:多波長測定で血液中の一酸化炭素結合ヘモグロビンなどを評価する検査〉
冬木は二人の喫煙歴、採血時刻、第三解析室退出時刻を同じ画面へ置いた。
「部屋を出てから時間が経っています。いまの値を曝露時最大値だと思わないでください」
〈COHb:一酸化炭素と結合したヘモグロビンの割合を示す血中指標〉
早瀬が息を飲んだ。
「同じ方向?」
「CO曝露を支持する方向は同じ。でも数値だけで二人の重症度を揃えないでください」
冬木はさらに一つ、線を切った。
「未分類VOCはCOを示す検査ではありません。センサー系も対象も別。あの一回は、これで説明したことにしません」
Deep Phaseという言葉も。VOCも。COも。似て見えるものを、同じものにしない。
その作業だけで、Clinicalは息をする暇を失っていった。
Phase 05|似ているもの
AI Opsの解析支援系は、人間なら何時間もかかる比較を数分で終えた。Clinical timeline。第三解析室の在室。設備状態遷移。BMS。環境Sensor。研究ログ密度。未分類VOC。過去Archive。診療情報は許可された最小範囲に絞られ、研究ログと設備ログは別Laneで処理される。AIは答えを出すようには設定されていなかった。似ているものを出す。
矛盾を出す。見落とし候補を出す。そして、出せないときは出せないと返す。問題は、その出力を人間がどう読むかだった。
*
最初の正式出力がReview室へ上がった。
cross-domain retrieval / candidate similarity
A: occupational / environmental exposure pattern
B: migraine / sleep-related cognitive disruption pattern
C: deep-phase-tagged archive cluster
D: mixed / unresolved
〈領域横断検索/候補類似性:A 職業性・環境曝露パターン/B 片頭痛・睡眠関連の認知機能変調パターン/C 深層位相タグ付きArchive群/D 混合・未解決〉
その下に注意書きがある。
similarity != causality
archive-tag match != event identity
confidence != institutional claim
〈類似≠因果/Archiveタグ一致≠同一事象/信頼度≠組織としての確定判断〉
それでも、全員の目がCで止まった。深層位相関連Archive cluster。黒瀬の視線が硬くなった。
「詳細」
AI Ops担当が開く。過去Archiveとの類似点が並ぶ。記憶の連続性に関する申告。Record densityの局所低下。
複数Observer間の記述不一致。未分類Environmental signal。対象自身が異常を自覚しにくい。読めば読むほど、似ていた。
榊の肩の奥が硬くなるのを、浅見は横から見た。
「これ、何を見て“似てる”って言ってるんですか」
冬木が訊いた。AI Ops担当が特徴量を開いた。そこには病態機序ではなく、文書構造が並んでいた。
memory discontinuity
observer discrepancy
unresolved source
environmental anomaly
record sparsity
〈記憶の不連続/観測者間の不一致/発生源未解明/環境異常/記録密度の低下〉
冬木の眉が寄った。
「医学じゃない」
「横断Retrievalです。医学だけを見ていません」
「じゃあ、私たちが“記憶が飛んだ”って書いたから、記憶が飛んだ過去Caseを拾ってる?」
「その要素は入っています」
黒瀬が言った。
「研究ログに“観測不整合”という語を使った」
AI Ops担当が頷いた。
「それも寄与しています」
室内の空気が変わった。AIが深層位相を発見したのではない。人間が書いた言葉から、深層位相というArchiveへ近づいた可能性があった。
*
「Contextを切ります」
AI Ops担当が言った。
「Open-context LaneとBlind Laneを分けます」
白根が見た。
「何をBlindにする」
「Case名、部署名、Deep Phase関連Tag、自由記述の一部。患者A/Bを匿名化し、症状時系列、在室、設備状態、検体時刻、環境測定だけで別解析します」
水城が先に確認した。
「診療情報の利用範囲は変えない」
「変えません」
黒瀬は保全Copy側の表示を見た。
「Archive retrievalも切る?」
「Blind Laneでは切ります。Open Laneは現状保全。比較可能にします」
白根が短く言った。
「やってください」
AI Ops担当の指が動いた。
同じCaseが、二つに分かれた。
Blind Laneには、その場で新規発行した無作為識別子だけが与えられた。CASE名にも部署名にも患者名にも戻れないよう、対応表はAudit側だけへ封じる。解析系から見れば、由来を持たない一つの匿名Caseだった。
一つは、CDPIが知っているすべてを見せたAI。もう一つは、知っていることを意図的に忘れさせたAI。人間が自分たちの先入観を調べるために、AIの視界を切った。
*
Blind Laneの最初の候補群は、Open Laneと順序が違った。
environmental / combustion-related exposure: high-priority review
sleep / fatigue contribution: retain
neurological primary event: retain
semantic archive similarity: not evaluated
〈環境・燃焼関連曝露:最優先で再検討/睡眠・疲労の寄与:候補維持/神経学的な一次事象:候補維持/Archiveの意味的類似性:評価対象外〉
冬木が大きく息を吐いた。
「こっちは患者を見てる」
「正確には、患者と設備の構造化データを見ています」
AI Ops担当が訂正した。
「現実そのものではありません」
その訂正が、Clinicalの誰より冷静だった。AIが自分で謙遜したわけではない。そう使うよう、人間がSystemを作っていた。
*
AI Ops担当は、そこでさらに一段踏み込んだ。
「Negative Testをかけます」
白根が目を上げた。
「Caseへ何か足す?」
「足しません。逆です。入力を削ります。同じ構造化データのまま、自由記述を一群ずつ落として、Deep Phase clusterの順位がどこで変わるかを見る」
黒瀬が椅子を引き寄せた。研究側の興味が一瞬だけ前へ出た。
「Ablation」
〈Ablation:入力要素を一部ずつ除外し、結果への影響を比較する検証〉
「はい。まず“記憶が飛んだ”という自由記述を伏せます」
Run。Deep Phase clusterの順位が一段落ちた。
「次、“観測不整合”を伏せます」
Run。さらに落ちた。
「unresolved sourceを伏せます」
また落ちた。冬木が腕を組んだ。
「患者の血液は一滴も変わってない」
「設備ログもです」
Facility担当が続けた。変わったのは、説明に使った言葉だけだった。AI Ops担当が最後のTestを入れた。自由記述からDeep Phaseを想起させる語をすべて除き、代わりに意味のないCase IDへ置換した。Deep Phase clusterは上位候補から外れた。
室内の誰も喜ばなかった。それはAIが間違っていたという単純な話ではない。AIは与えられた文書の類似を正しく計算していた。怖いのは、人間が使った言葉が、AIの視野を曲げ、そのAI出力が再び人間の視野を曲げることだった。
「これ、閉ループになりかけてた」
AI Ops担当が言った。
「人間がラベルを付ける。AIがそのラベルに似た過去を返す。その過去を読んだ人間が、次の記録へ同じラベルを使う」
水城が低く言った。
「患者がその輪の中へ入る前に切れてよかった」
榊は壁面表示を見たまま答えた。
「まだ切れてません。研究所内ではもう言葉が回ってる」
白根が立ち上がった。
「では、次は人間側を止めます」
AIの解析を止めるのではない。人間がAIへ何を食わせ、何を持ち帰るかを止める。認知戦の相手はAIではなかった。人間とAIの間にできた、増幅回路そのものだった。
*
黒瀬はOpen Laneを見たまま言った。
「Deep Phase clusterを捨てる必要もない」
榊が振り返った。
「Clinicalへは持ち込まないでください」
「原因としてではない。未解決のResearch signalとして残す」
「患者に聞かない」
「聞かない」
「COで説明できないものが残っても、それをDeep Phaseで埋めない」
黒瀬は榊を見返した。
「それは研究側も同じです」
二人の視線がぶつかった。声は上がらない。それでも、戦っていた。患者を守るためのClinicalと、未知を消さないためのResearchが、同じ境界線の両側から押していた。
どちらかが勝てばよい場面ではなかった。
Phase 06|その名をつけるな
午前六時を回るころ、Deep Phaseという言葉は研究所内で独り歩きを始めていた。正式通知では否定されている。問い合わせ窓口も一本化された。AI出力も外部共有されていない。それでも言葉は回る。休憩室。
内線。短いメッセージ。
「あれ、深層位相らしい」
「AIが過去Caseに似てるって」
「第三解析室で記憶が消えた」
どれも、少しずつ違う。
違うまま、強くなった。
*
Clinicalの問い合わせ件数が跳ねた。頭が重い。集中できない。昨夜の何分かが曖昧。第三解析室の近くを通った。換気の匂いが変だった気がする。早瀬は一件ずつ切った。
「Deep Phaseという言葉を聞く前から症状があったか」
「どの時点で聞いたか」
「第三解析室への実際の曝露はあるか」
「他人の症状を知る前に自覚していたか」
問診そのものが、認知汚染の時刻を取る作業になった。感染管理の仕事に似ていた。違うのは、媒介しているものが病原体ではなく意味だった。
*
「情報曝露のラインを作ります」
早瀬が言った。
「Clinical exposureとInformation exposureを分ける」
白根が頷いた。
「正式運用にする?」
「Case限定で。症状申告が情報取得後か前かを取ります」
水城が割って入った。
「“あなたは影響されています”と決めつける表現は使わないでください。本人の症状を心理扱いするのも禁止」
「分かってます」
早瀬の声が強くなる。「だから時刻だけ取る。原因は決めない」
*
AI Opsにも異常が出た。Case関連検索Queryの語彙が、数十分で偏り始めていた。
deep phase
memory loss
observer
record gap
unknown signal
〈深層位相/記憶の欠落/観測者/記録の空白/未解明信号〉
検索者がそれらを入力した。AIが関連Archiveを返した。返されたArchiveを読んだ人間が、次の検索へ同じ言葉を入れた。
ループだった。
AI Ops担当が画面を見据えた。
「これ、Systemが深層位相を推してるんじゃない」
「何ですか」
黒瀬が訊いた。
「人間がDeep Phaseを検索して、その結果をまたAIへ食わせてる。RetrievalのFeedbackです」
白根が立ち上がった。
「止められる?」
「検索を止める必要はありません。Case-specific rankingからQuery-derived reinforcementを分離します。閲覧履歴由来の重みを切る」
「今までの出力は」
「汚染された可能性をFlagします」
黒瀬が拳を一度握り、すぐ開いた。
「“AIが言った”じゃない。俺たちが言わせた可能性がある」
誰も否定しなかった。
*
その言葉はClinicalへ持ち込まれなかった。三浦は酸素マスクの向こうで、自分の記憶が抜けたことだけを知っている。瀬川は頭痛と視覚症状と順序の混乱だけを知っている。彼らへDeep Phaseという言葉を与えれば、次の回答はその言葉を通って出てくるかもしれない。
Clinicalは患者から情報を取るために、情報を渡さないという選択をした。隠蔽ではない。観測条件を守るためだった。それはCDPIの研究者たちが日常的にやっていることと、驚くほど似ていた。
観測するために、観測者自身を管理する。
Phase 07|観測者の罠
午前六時二十七分。Case Review室の壁面に、五つの列が作られた。
Patient A / 三浦。
Patient B / 瀬川。
Clinical observers。
Facility / sensors。
AI analytical lanes。
黒瀬が六列目を足した。
Research records。
〈患者A・三浦/患者B・瀬川/Clinical側の観測/Facility・Sensor側の観測/AI解析系/Research記録〉
「観測者を混ぜない」
誰に向けた言葉でもなかった。
*
三浦が覚えていない時間に、三浦のCredentialで端末入力がある。それは、三浦が操作した証拠ではない。瀬川が「光が変に見えた」と言った時間帯に、照明ログの異常はない。それは、瀬川の知覚が誤りだった証拠ではない。
環境Sensorが現在正常。それは、夜間の空気が正常だった証拠ではない。AIがDeep Phase-tagged Archiveと高い類似を出した。それは、Deep Phaseが原因だった証拠ではない。
CO曝露を支持する血液所見がある。それは、第三解析室でどの濃度を何分吸ったかを直接示す証拠ではない。同じCaseを見ているのに、どの観測者も同じ世界を持っていなかった。
*
「これ、観測者が多すぎるんじゃないですか」
AI Ops担当が半分冗談のように言った。黒瀬は笑わなかった。
「逆です。足りない。だから一つへまとめると壊れる」
榊が画面を見た。
「Clinicalは患者の安全しか決めません」
「Facilityは部屋の安全」
「Researchは未解決を残す」
「AIは候補を出す」
水城が最後に言った。
「そして誰も、他の権限を奪わない」
その瞬間だけ、巨大な組織が一つの生き物のように見えた。頭脳が一つなのではない。互いに止め合う神経が無数にあるから、暴走しない。
*
AI Blind Laneが、設備側で一つの時刻窓を優先した。非常用発電機の定期Self-test。南側外気取入口。給気補正。
第三解析室在室。患者二名の症状発生推定。時間的に重なる。Open Laneでも、Deep Phase Archive similarityの下に同じ設備Windowが残っていた。
「両Laneで残った」
AI Ops担当が言った。冬木がすぐ止めた。
「残ったから原因、ではない」
「はい」
Facility担当も割って入った。
「時刻Sourceを揃えてからです。Self-test開始は設備制御Clock。患者症状は申告時刻。採血はClinical Clock」
「TIME換算は?」
白根が訊いた。
「基準時刻への換算を別担当でやっています。まだ確定値にしません」
AIが速いほど、人間は遅くならなければならない場面があった。速く出た答えに追いつくためではない。速く出た答えを壊すために。
*
そこでAudit側が、さらに嫌なものを見つけた。同じCaseを見た人間の記録文が、時間とともに似てきていた。最初は三浦が「時間が飛んだ」、瀬川が「順番にならない」と別々に表現していた。ところがDeep Phaseという噂が回ったあと、問い合わせ記録では「記憶欠落」「観測不整合」「空白」という語が急増していた。
「症状が変わったのか、言葉が揃っただけなのか」
早瀬が訊いた。
「現時点では分けられません」
Audit担当が答えた。水城が机へ両手をつく。
「じゃあ、以後の問診票から誘導語を外します。自由記述を先に取る。選択肢はそのあと」
浅見がClinicalへ返した。
「三浦さんと瀬川さんの再アセスも、前回回答を見ないで取ります」
堀が頷いた。
「神経評価もBlindで一部取り直します。前回の“記憶”表現を見ない」
黒瀬は自分の研究記録を閉じた。
「俺たちの言葉を、患者へ逆流させない」
AI Ops担当が言った。
「AI側も同じです。前Runの説明文を次Runの入力にしない。出力再帰を切ります」
人間の問診とAIのPipelineが、同じ理由で作り直された。観測者が観測対象へ影響し得るなら、まず観測者自身の履歴を管理する。それは深層位相の証明ではない。むしろ、深層位相という巨大な説明へ逃げる前に、もっと身近な観測汚染を徹底的に潰す作業だった。
*
深層位相という言葉は、Review室の端へ追いやられた。
消したのではない。
UNRESOLVED / RESEARCH ONLY。 〈未解決/研究用途のみ〉
それだけ表示した。黒瀬はそれを見た。自分たちの研究所の名前に入っている言葉が、最も慎重に扱わなければならない言葉になる。その皮肉を、誰も口にしなかった。
Clinicalでは、三浦が酸素マスク越しに呼吸していた。瀬川は暗い区画で堀の指を追っている。患者の身体は、AIの類似度より先にそこにあった。
Phase 08|血液が覚えている
「酸素飽和度、悪くなかったですよね」
三浦が言った。100%酸素の乾いた流れがマスクの内側で鳴っていた。透明な面は呼吸のたびに曇り、すぐ消えた。
「通常の表示が保たれていたことは、一酸化炭素曝露を否定する材料にはなりません」
浅見は固定を直した。
「最初から分かってたんですか」
「いいえ」
「見落とした?」
浅見は答えを急がなかった。
「最初の時点では、一番上の候補ではありませんでした。でも、帰していい根拠もなかった。だから検査と観察を残せた」
三浦は目を閉じた。
「何も匂わなかったです」
「はい」
「変な空気だとも思わなかった」
「一酸化炭素そのものには、危険を知らせる匂いがありません」
三浦の目が開いた。その説明は、数字より強く効いた。
*
瀬川は酸素を受けながら、暗くした区画で堀の指を目で追っていた。
「これで記憶のことも説明できますか」
「CO曝露で認知症状は起こり得ます」
「じゃあ、これだった?」
「それだけで今回の記憶混乱を全部説明できる、とまでは言いません。片頭痛既往もある。睡眠不足もある。複数の要因が重なった可能性もあります」
「また、分からない」
「分かったことは増えています。分からないところも、前より狭くなった」
瀬川は天井を見た。
「それ、安心させる言い方ですか」
「安心させるためには言ってません」
瀬川がほんの少し笑った。
*
冬木は検体結果を二回、別系統で確認した。採血時刻。第三解析室退出時刻。酸素開始時刻。
喫煙歴。再検。冬木は一つずつ並べた。
「二人とも、CO曝露を支持する」
榊が確認した。
「はい。ただし、曝露時の室内濃度は分かりません。最大COHbも分かりません。今の値だけで重症度を揃えません」
榊はその場でClinical側の安全Gateを追加した。100%酸素は継続。記憶断絶を含む神経症状がある以上、高気圧酸素療法――HBO――の適応は専門先へ照会し、実施の要否を個別に判断する。妊娠可能性を含む高リスク条件は、該当する患者についてプライバシーを確保したClinical内で確認し、必要な検査へ進む。結果を研究側のReviewへ持ち出す理由はない。
AI Ops担当が横断解析へ結果を入れる前に訊いた。
「COを原因Classとして上げますか」
冬木が睨むように見た。
「“支持するEvidenceあり”です。原因確定と書かないで」
「了解」
AI Ops担当は表示を修正した。
cause: carbon monoxide 〈原因:一酸化炭素〉
ではなく、
evidence: CO exposure supported 〈根拠:CO曝露を支持〉
へ。たった数語の差だった。その数語を守るために、人間がAIの肩を押し戻した。
*
AI Open Laneから、Deep Phase Archive similarityがまだ消えていない。Blind Laneでは低い。CO Evidenceを入れると、環境曝露候補の優先度がさらに上がった。それでもOpen LaneのDeep Phase clusterはゼロにならない。
黒瀬が言った。
「消さなくていい」
榊が見た。
「患者へは持ち込まない」
「分かってます」
「Research側で、COで説明できるものと、説明できないものを分けてください」
「そのために残します」
未分類VOC。研究ログ密度低下。AI Semantic similarity。 〈AI Semantic similarity:AIによる意味内容の類似判定〉 これらはCO曝露の証明ではない。
COが見つかったからといって、世界のすべてが一つの原因へ畳まれるわけではなかった。患者の血液だけが、夜の空気を覚えていた。夜の空気そのものは、もうどこにも残っていない。
Phase 09|空気は証言しない
設備側の調査は、Clinicalより遅かった。それが正しかった。
患者の血液は「一酸化炭素へ曝露した可能性が高い」と語り始めている。しかし建物は、自分のどこから何が入ったのか黙ったままだった。CDPIでは、こういうとき設備を調整して様子を見ることから始めない。まず現在状態を固定する。BMS。制御履歴。保守記録。環境Sensor。発電機Self-test。外気ダンパー。給気補正。差圧。安全のため変更しなければならない設定と、原因を追うため残さなければならない証拠を分ける。その分離に失敗すれば、部屋を安全にできても、なぜ危険だったかを永久に失う。
*
Facility Safe Hold。第三解析室だけではない。南側給気系統の関連区画が段階的に制限された。Metrology――測定・校正側――が環境Sensorそのものを疑った。
「正常値を信用する前に、正常を測った機器を確認します」
校正履歴。自己診断。検出下限。Sample interval。
Drift。隣接Sensorとの比較。
「夜間COを連続測定していたSensorは?」
「第三解析室内にはありません」
「じゃあ“検出されなかった”とは言えない」
「はい。測っていないものは、正常値になりません」
AI Ops担当がその一文を記録へ入れた。黒瀬が横から見た。
「それ、重要です」
「何が」
「Systemは欠測をゼロに寄せると危険になる」
Metrology担当が画面から目を上げた。
「人間も同じでしょう」
短い沈黙。黒瀬が口元だけで笑った。
「そうですね」
*
時刻統合が上がってきた。発電機Self-test。外気ダンパー状態変化。給気補正。
三浦・瀬川の在室。症状申告から遡った推定Window。複数の線が近づく。AI Blind Laneは、そのWindowを最優先でReview対象へ置いた。
Open Laneも同じWindowを残した。違う方法で見た二つの解析が、同じ場所へ近づいた。それでも、白根は言った。
「まだ再開しません」
運用側責任者が食い下がった。
「現在値は正常です」
「今は、です」
榊が返した。
「患者も改善している」
「患者の改善は、部屋の安全証明ではありません」
「日中工程が止まります」
「止めます」
視線がぶつかった。誰も怒鳴らない。白根は握っていた手を開いた。
「Facility Safe Hold維持。再現試験の設計へ進めてください」
巨大な研究所の一室を止め続ける決定が、静かな声で下された。
*
AI Opsが再現試験のSimulation支援を申し出た。
「候補Routeを三つに絞れます。Tracer投入点と監視点の最小構成を提案します」
Facility Safety Leadは返答より先に、壁面図の安全境界を指でなぞった。
「提案だけ。実施条件は人間側で決めます」
「了解」
AIは最短経路を提示した。Facility担当は設備図と実機履歴を重ね、候補の一つを落とした。
「ここは実設備上、流れません。Modelが図面上の接続だけを見ています」
AI Ops担当が候補Routeを更新すると、Metrology担当が監視点の一つを外した。波形画面のTimestampを拡大し、応答遅延の欄を指す。
「この監視点は検出遅延が大きい。時間順序判定には使いません」
候補はまた組み直された。Safety側は完成を待たず、停止監視の空白を見つけた。
「Abort監視点が足りません。ここを追加してください」
画面上のRouteがもう一度書き換わった。AIの方が速い。それでも、速さは決定権にならない。人間が一つずつ、現実に合わない線を消し、安全側へ足りない線を足していった。
人間がAIを使っているのではなく、人間とAIが互いの盲点を露出させ合っていた。認知戦という言葉を、誰も口にしなかった。だが、彼らはすでに、その戦いの中にいた。
Phase 10|建物を診る
午前七時十八分。再現試験の準備が始まった。試験そのものより、試験を始めるまでの工程の方が長かった。
*
Clinicalでは、三浦と瀬川の再アセスがもう一巡していた。浅見は酸素投与を継続しながら、心電図、飲水の可否、症状Trendを追う。堀は反復神経評価を更新し、二人の認知状態を別々の線として記録した。Facility側の準備がどれほど進んでも、患者の安全に変化が出れば再現試験は即座に止まる。榊は二つのベッドを順に見たあと、低い声で言った。
「建物を追って患者を置き去りにしない」
浅見が頷いた。患者の現在状態そのものが、試験の開始条件へ組み込まれた。
検査側では、冬木が保全された検体へ戻っていた。Sample ID、採血時刻、保存条件、再検、CO-oximetry。端末の照合欄を進めるたび、手元のLabelと原記録を突き合わせる。二人の結果は同じ方向を指している。それでも同じ数値ではなく、同じ重症度を意味するわけでもない。冬木はその差を残したまま、次の確認へ進んだ。
早瀬は感染Clusterの優先度を一段下げた。ただし消さない。問い合わせで上がってきた症例をCASE 01患者群から切り離し、Information exposure後に症状を申告したものは別Registryへ送る。似ているという理由だけで、同じClusterへ押し込まないためだった。
堀は三浦と瀬川の神経評価を更新し続けた。記憶断絶様エピソードの位置と範囲を患者ごとに取り直し、COで説明可能な部分、片頭痛や睡眠で説明可能な部分、まだ未確定の部分を一つにまとめない。Clinicalの画面には、二人の経過が似た一本線ではなく、別々の時間軸として積み上がっていく。
Review室では、黒瀬が研究ログ、端末Activity、Record density、Credential eventsを保全Copyへ固定していた。患者の認知症状と研究ログ異常を、近いからというだけで因果接続しなかった。Deep Phase関連Archive similarityはResearch-only Laneへ隔離した。その横で水城は、診療情報の研究利用範囲を再確認した。患者への追加研究質問は禁止を継続。AI解析へ渡る情報Packageも、同意範囲と利用目的の境界を越えていないか一項目ずつAuditした。
AI Ops担当はOpen Lane、Blind Lane、Facility Simulation Laneを別Runとして固定した。Lane同士に相互学習をさせない。Query history由来のDeep Phase reinforcementは無効化し、Case-specific出力はその時点でFreezeする。再現試験開始後に入るデータは同じRunへ混ぜず、別Runとして記録する。画面の上端には、三つのLaneが互いに交わらないまま並んだ。
Metrology担当はTracer Sensorの校正記録を開き、応答遅延、検出限界、Timestamp、監視点間のClock整合を順に確認した。値が動かなかったとき、それが「検出できなかった」のか、「流れなかった」と言えるのか。陰性結果に意味を持たせる境界を、試験前に定義した。
Facility Controlでは、当夜のダンパー位置、給気補正、差圧条件を安全範囲で模擬する手順が詰められていた。実発電機排気は出さない。排気が存在した位置だけを起点として再現し、そこから非有害Tracerを投入する。危険を再演するのではなく、空気の経路だけを追う。
同じころ、Service Corridorでは最後の人員Sweepが始まっていた。保守員が工具を回収し、清掃担当が退室し、搬送経路から台車が消える。区画ごとに残留者なしを読み上げ、防火扉を閉じ、Access Lockを掛ける。確認した者と施錠した者を分け、最後に無人状態をもう一度突き合わせる。重い扉が閉じる音が、離れたReview室の回線にも低く乗った。
全系統の準備が揃い始めたところで、Safety LeadがAbort criteriaを読み上げた。声量は上げない。それでも、一語ずつが室内の空気を締めていく。
「想定外差圧。監視点逸脱。設備Alarm。患者状態悪化。通信断。Sensor loss。どれか一つで停止」
白根は一覧から目を上げた。眉間に皺は寄っていなかった。ただ、卓の縁に置いた指先だけが止まった。ここで曖昧さを残せば、試験開始後の一秒が遅れる。
「誰が止められる」
「私。Facility Control。Clinical Lead。三系統、いずれも単独停止可能」
「AIは?」
「停止提案はできます。停止権限はありません」
AI Ops担当がSystem設定を確認し、頷いた。
「設定上も同じです。AIからStop recommendationは出せます。実行権限は持たせていません」
そこでPreparation checklistはRead-backへ移った。誰か一人の「準備できました」で済ませない。Clinicalから榊の声が入った。
「患者側、開始条件を満たします」
Metrology担当が計測画面を見たまま続けた。
「計測系、Baseline固定」
AI Ops担当が固定済みのRun状態を読み返した。
「解析Lane分離。Input freeze」
Facility Control担当が設備側の最終状態を確認した。
「設備模擬条件、設定済み」
Service Corridorから最後の応答が返る。背後でAccess Lockの確認音が鳴った。
「関連区画、無人確認」
Safety Leadが停止経路の最終確認を返した。
「Abort path、確認」
Audit担当がPre-test SnapshotのSealを照合した。
「Pre-test Snapshot、封印」
ひとつ返答が上がるたび、白根の前の一覧が埋まっていった。白根は最後まで口を挟まない。視線も壁面図へ逃がさず、人間側のRead-backだけを追った。
全系統が揃ったあと、Clinicalから榊がもう一度だけ確認した。
「患者側、変化なし」
最後の応答が切れた。
白根は、すぐには口を開かなかった。Clinical、Metrology、AI Ops、Facility Control、Service Corridor、Safety、Audit。目の前に並ぶ確認欄を、端からもう一度追う。どれか一つでも欠けていれば始めない。そのために、ここまで時間を使った。
壁面図の向こうでは、建物が待っていた。回線の向こうでは、三浦と瀬川が呼吸している。AIは候補を出せる。Simulationは経路を描ける。だが、開始の責任だけは、そのどちらにも渡さない。
白根はゆっくり息を吸い、長く吐いた。卓の縁から手を離す。
「全系統、確認しました」
一拍。
「開始してください」
その一言で、それまで別々に動いていた十数本の工程が、初めて同じ方向を向いた。
*
南側系統の表示が順に変わる。ダンパー固定。給気補正模擬。
差圧確認。
屋上設備状態。警報は鳴らない。建物そのものが、息の仕方を変えていく。外気取入口側で非有害Tracerが投入された。
最初の監視点。反応なし。AI Simulationは十三秒前後で到達候補を出している。十三秒。
反応なし。十四。十五。Facility Controlの担当が眉を寄せた。
「予測より遅い」
AI Ops担当が画面を見た。
「Simulation上は――」
「Simulationは黙って」
Metrology担当の声が強かった。
「実測を先に見ます」
誰も反論しなかった。二点目。反応なし。Clinicalでは三浦がマスクの内側で息を吸う。浅見は胸郭を数え、瀬川側では堀が短い認知課題を続けていた。
三点目。
微弱な反応。
「来た」
誰かが言いかけた。
「まだ」
Metrology担当が止めた。
「Baseline driftの範囲を抜けてない」
数秒。値が戻る。白根の顎が硬くなる。AI Opsの画面ではRoute probabilityが一度下がった。
Facility担当が睨むように画面を見据えた。
「風量補正、実測との差」
「出てます」
「Simulationへ入れない。表示だけ」
AIを追従させない。まず人間が現実を見る。四点目。
反応。
今度は戻らない。南側外気取入口。
「確認」
Metrology担当が波形を拡大した。
「Baseline外。持続」
AI Ops担当がRoute更新の可否を確認した。
「Route update可能」
「まだ」
Safety Leadが先を急がせず、次の監視点へ切り替えた。給気幹線。
反応。
Clinicalでは酸素の乾いた音だけが続いていた。三浦が目を開き、遠くの壁面画面を見ようとした。
「見なくていいです」
浅見が言った。
「何が起きてるんですか」
「建物を診てます」
三浦が一瞬だけ笑った。
「患者みたいに?」
「いまは患者より手間がかかってます」
笑いは一秒で消えた。第三解析室系統手前。信号が薄くなる。AI Simulationはここで分岐Aを優先していた。
実測は分岐Bへ寄った。
白根は壁面図から目を離さなかった。卓の縁へ置いた指先が止まり、顎の線だけがわずかに硬くなる。Review室からKey入力の音が消えた。誰も息を止めたつもりはない。それでも一瞬、回線の向こうから届くClinicalの酸素流量音だけが、やけに近く聞こえた。
「AI、外した?」
声は低かった。責める響きではない。だが、AI Ops担当が答えるまで、白根は視線を動かさなかった。
AI Ops担当は首を振った。
「外したというより、Modelが設備図上の抵抗を過小評価しています」
Facility担当が即座に言った。
「その抵抗値、保守後に変わってる。Model更新が追いついてない」
AI Ops担当の指が止まった。
「確認します」
Audit担当が割って入った。
「今のModelは変更しない。Run終了後に差分として扱う」
「了解」
AIを賢くするより、いまのAIが何を知らなかったかを残す。その判断が優先された。次の監視点。
反応。
第三解析室へつながる枝。浅見は自分の掌に汗が滲んでいることに気づいた。榊の顎の筋肉が硬い。冬木は奥歯を一度だけ噛んだ。
最後の監視点。第三解析室。数値が上がる。Metrology担当は即答しない。
二秒。三秒。四秒。
「Baseline外。持続。再確認」
別Sensor。
「追認」
AI Ops担当が実測との一致範囲を確認した。
「Route candidate、実測に更新可能」
Safety Leadが停止条件に変化がないことを読み返した。
「試験継続条件、維持」
Facility担当が最後の設備側判定を返した。
「流入経路、再現条件下で成立」
そこで初めて、白根が吸った息を長く吐いた。誰も勝った顔をしなかった。何十人もの職員が、何百の小さな確認を積み上げて、ようやく一つの経路を見つけた。それでも昨夜ではない。
昨夜の風ではない。昨夜の濃度ではない。昨夜の患者の肺へ入った空気そのものではない。
黒瀬は壁面図から保全Copyへ視線を移した。到達した経路、実測波形、時刻、設備条件。画面の上では一本の線へ見えても、その線を昨夜そのものへ延ばす証拠はない。
「Historical proofにはしません。今日ここで言えるのは、再現条件下でRoute plausibilityが得られた――そこまでです」
Facility担当は反論しなかった。設備断面図の該当枝へ指を置き、最後のSensor列をもう一度確認してから頷く。
「設備側も同じです。流入経路は再現条件下で成立。ただし、昨夜そのものを再現したとは扱いません」
冬木は検査結果の画面を閉じなかった。三浦と瀬川、二人分の値を並べたまま、顔を上げた。
「患者側ではCO exposure supported。ここも、それ以上には上げません。数値が同じではない。重症度も、曝露量も、昨夜の室内濃度も同一には扱えない」
回線の向こうで、榊が一拍置いた。Clinicalでは酸素の乾いた流量音がまだ続いていた。
「患者安全は別判断です。建物で経路が再現できたことを、退院や勤務復帰の条件には使いません」
四つの結論が、ようやく同じ机の上へ置かれた。似ているが、混ぜない。近づいたが、越えない。
その沈黙の端で、誰かが小さく訊いた。
「Deep Phaseは?」
空気が、ほんのわずかに戻った。
黒瀬はすぐには答えなかった。Research-only Laneの隅では、消え切らないArchive similarityがまだ淡く残っている。未分類VOCも、研究ログ密度低下も、COでは説明し切っていない。だからといって、そこへ大きな名前を置く理由にはならない。
黒瀬はその表示を見据えたまま、静かに言った。
「いま、その名前を使う理由はありません」
それからResearch-only Laneへ手を伸ばした。消去ではない。UNRESOLVED / RESEARCH ONLYの状態を残したまま、表示だけを閉じた。
答えを捨てたのではない。
答えに昇格させなかった。
Phase 11|安全と言えるところまで
朝の最初、三浦は「帰っていいですか」と訊いた。昼に近づいたころ、同じ質問をもう一度した。声が違っていた。最初は仕事へ戻るための質問だった。
今度は、本当に帰るための質問だった。
*
榊は答えを一人で出さなかった。浅見はまず三浦を立たせ、数歩歩かせた。足取り、ふらつき、飲水、会話の連続性をその場で確かめた。堀は神経所見をもう一巡し、冬木は再検値と採血・酸素開始の時刻関係を照合した。循環評価と専門相談の記録も揃え、帰宅後に誰が見守るか、どの症状が出たら戻るかまで一つずつ確認した。退室可否は、誰か一人の印象ではなく、それらの安全条件が全部そろって初めて決まった。
「原因が決まるまで帰れないわけじゃないんですね」
三浦が言った。
「逆です」
浅見が答えた。「原因が全部決まっても、安全条件を満たさなければ帰しません」
「じゃあ今は」
「もう少し」
三浦が天井へ息を吐く。
「朝からずっとそれですね」
「朝からずっと、まだだったので」
*
瀬川の頭痛は完全には消えていない。しかし視覚現象は再発せず、会話の時間順序も崩れない。堀は遅れて出る神経・認知症状について説明し、約二週間後の再評価を確保した。三浦にも同じ注意事項と再診枠を渡した。症状が戻る、悪化する、新しい認知・神経症状が出る。その場合は二週間を待たずClinicalへ戻るよう伝えた。
「今回のこと、全部COだったって思って帰っていいですか」
瀬川が訊いた。堀は首を振った。
「CO曝露は強く支持されています。でも片頭痛や睡眠の寄与まで消えるわけではありません。記憶混乱の全要素を一つへまとめません」
「Deep Phaseって話、聞いたんですけど」
Clinicalの空気が一瞬だけ止まった。どこかで耳に入ったらしい。榊は瀬川を見た。
「研究所内で未確認の言葉が回りました。あなたの診療上、Deep Phaseが原因だというEvidenceはありません」
「AIが似てるって」
「AIは過去記録との類似候補を出しました。原因を確定したわけではありません」
瀬川はしばらく黙った。
「じゃあ、何を信じればいいんですか」
榊はすぐ答えなかった。
「信じる、ではなく。確認できたことを一つずつ持って帰ってください」
瀬川が見返した。
「CO曝露を支持する血液所見がある。症状は改善している。現在、重大な神経所見は取れていない。遅れて症状が出る可能性があるから再評価する。第三解析室は再開していない。これが今、確認できていることです」
「分からないことは」
「分からないまま残します」
瀬川は目を閉じた。
「セデッピらしいですね」
浅見が小さく笑った。
「たぶん、一番面倒なところが」
*
患者退室と勤務復帰は分けられた。三浦も瀬川も、Clinicalから退室できるからといって、そのまま第三解析室へ戻ることは認められない。第三解析室のFacility Safe Holdも継続。人を帰せる。
仕事へは戻さない。部屋は開けない。三つの判断が別々に閉じた。
*
黒瀬はResearch Laneを整理した。COで説明可能なClinical events。Facility route plausibility。未分類VOC single event。
研究ログ密度低下。AI Deep Phase archive similarity / context-contamination history。最後の三つを、同じ箱へ入れない。水城が確認した。
「患者情報の研究利用はConsent範囲だけ」
「はい」
「AI Query historyもCase artifactとして残す?」
「残します。人間側の認知汚染を含む解析条件として」
AI Ops担当が言った。
「AI Outputだけ残すんじゃなく、何を入れたかも残します」
黒瀬が頷いた。
「それがないと、AIが何を見たか分からない」
「AIは見てないです」
AI Ops担当が訂正した。黒瀬が振り返った。
「そうでした」
二人とも少し笑った。人間もAIも、現実そのものを持ってはいない。持っているのは、届いた信号、記録、測定、言葉、Model。だから組み合わせる。
だから分ける。だから疑う。それがCDPIのやり方だった。
*
三浦が帰る前に、浅見のところへ来た。
朝には血の気が薄かった顔に、もう硬さは残っていなかった。酸素マスクも外れ、立った姿勢にも危うさはなかった。それでも浅見は、最後の一枚を確認するまで視線を上げなかった。再アセス、神経所見、飲水、歩行、帰宅後の注意事項。チェック欄を指先で追い、署名欄まで確かめる。
「朝、帰してくれなくて、ありがとうございました」
不意に言われて、浅見の手が止まった。
Clinicalには、いつもの機器音が戻っていた。遠くでカートの車輪が床の継ぎ目を越え、別のベイから短い呼び出し音がする。朝にはあれほど張り詰めて聞こえた音が、今はようやく日常の中へ沈んでいた。
浅見は顔を上げた。
「朝は、結構嫌われてたと思いますけど」
三浦は一瞬だけ真顔になった。
「嫌いでした」
浅見の口元がわずかに緩んだ。
「でしょうね」
三浦が吹き出した。大きな笑いではない。けれど、その笑い方を見て、浅見の肩からようやく少し力が抜けた。
「今も、帰したくないとか言わないですよね」
冗談めかした声だった。
浅見はすぐには答えなかった。
もう一度、最終確認票へ目を落とす。朝、この人を帰さなかった理由。数値だけでは説明できなかった違和感。二度途切れた記憶。二人目。採血。酸素。何度も繰り返した再アセス。
そして今、目の前に立っている三浦。
浅見は確認票を閉じた。息をひとつ、ゆっくり吐く。
「今は――」
三浦の笑みが少しだけ消えた。
浅見はその顔をまっすぐ見た。
「安全と言えるところまで来ました」
朝には、どうしても言えなかった言葉だった。
三浦は何も返さず、一度だけ深く頷いた。
その頷きを見てから、浅見は初めて、ほんの少し笑った。
Phase 12|次の正常値
二人がClinicalを出たあと、二十三分だけ何も起きなかった。正確には、何も起きなかったわけではない。Facility Safe Holdは続いている。AI OpsはRun差分を固定している。AuditはQuery contaminationの記録を保全している。Researchは未分類VOCとログ密度低下を別々のUnknownとして閉じている。白根は止まったReviewの再編をしている。ただ、Clinicalには新しい患者が来なかった。
二十三分。浅見は手袋を外し、指先の赤い跡を見た。冬木は冷め切ったコーヒーを一口飲んで、顔をしかめた。堀は椅子へ深く座り、初めて背もたれへ体重を預けた。榊は壁に片手をつき、吸った息を長く吐く。
「セデッピで二十三分静かって、長いですね」
冬木が言った。
「言わないでください」
浅見が返した。誰かが笑った。その直後。二音。
Clinical priority line。全員の身体が同時に戻った。榊が立った。浅見が新しい手袋を引き、冬木が検体ラックから手を離し、堀が端末を取った。受話器の向こうの声は速かった。
「搬送一名。意識清明。歩行可能。バイタルに大きな破綻なし」
浅見の指が止まる。朝と同じ言葉だった。
「主訴は?」
相手が一瞬だけ詰まった。
「痛みは分かるそうです。触られたことも分かる。でも――」
「でも?」
「どこを触られたか、自分の右腕の上で指せません」
Clinicalの搬送扉が開いた。廊下の足音が一気に近づく。榊が低く言った。
「原因名は付けないで。こちらで受けます」
浅見は扉の向こうを見据えた。
朝から追い続けたCASEは終わった。
Clinicalは、終われなかった。
CODA|観測されていない場所
搬送扉の向こうへ全員の意識が移ったあとも、CASE 01の記録だけは動いていた。
人が操作していたのではない。AIが解析を再開したのでもない。AI Opsの保全領域で、閉鎖済みRunへ定時のArchive Integrity処理がかかった。内容を解釈しない。答えを探さない。保存されたものが保存されたままか、参照関係が壊れていないか、それだけを確認する処理だった。
archive-integrity: PASS
case-run: CLOSED
model-execution: NONE
new-query: NONE
blind-lane: IMMUTABLE
〈Archive完全性:PASS/CASE Run:閉鎖済み/Model実行:なし/新規Query:なし/Blind Lane:変更不可〉
問題はなかった。
内容完全性の検査までは。
処理が参照整合性の検査へ移ったところで、Blind Laneに向いた参照が一件だけ検出された。
inbound-reference: 1
target: blind-lane anonymous token
source-domain: DEEP PHASE / RESTRICTED ARCHIVE
source-last-modified: BEFORE CASE 01
source-seal: HASH MATCH
provenance: UNRESOLVED
alert-state: AUDIT QUEUE / UNREAD
〈外部からの参照:1/参照先:Blind Lane匿名Token/参照元:Deep Phase隔離Archive/参照元最終更新:CASE 01以前/封印Hash:一致/来歴:未解決/Audit待機列:未読〉
処理は停止しなかった。内容破損はない。Deep Phase隔離Archive側も、封印時のHashと一致している。CASE 01のあとで書き換えられた痕跡は検出されない。
参照は、CASE 01後に生成された索引の推定関係ではなかった。封印済みSource payloadから参照関係を再構成しても、同じ匿名Tokenへの参照が残る。
ただ、その参照だけが成立していた。
Blind Laneの匿名識別子は、CASE 01を二つへ分けたあの時、その場で初めて発行されたものだった。患者名からも、第三解析室からも、Deep Phaseという語からも切り離すための識別子だった。
その識別子を、CASE 01より前に最終更新されたDeep Phase隔離Archiveの一記録が参照していた。
AIは動いていない。
新しい検索もない。
人間のQuery履歴から生まれたFeedbackでもない。
それでも、そこにある。
Audit待機列の件数表示が、静かに一つ増えた。
Clinicalでは、新しい搬送が始まっていた。Facility Safe Holdは続き、第三解析室には誰もいない。南側給気系統を流れる空気は規定値の内側にあり、環境Sensorも異常を出していなかった。
誰も、まだその一行を見ていなかった。
観測されていない場所で。
何かが、こちらを参照していた。