第29話「最初の村」
「ノード、リオン村の準備状況を出してくれ」
俺はメインダッシュボードの隣に、新世界の準備画面を並べた。
現世界——いつもの、終了処理を抱えた古い設計。
新世界——昨夜、骨格と最初の領域だけが組み上がった、終了処理のない設計。
新世界の地図には、いまだほぼ何もない。空白の大陸に、ぽつんと、リオン村の輪郭だけが描かれていた。
「えーと……リオン村の方は、ガルドさんが手配してくださった対応マニュアルが、すでに村の宿屋に届いています。神官の方がひとり、緊急時の連絡係として常駐しています」
「住人には、何と伝わってる」
「『神官団から、村の様子を一週間、丁寧に観察したいという通達があった』とだけ。それと、昨夜は『村全体に安らかな夜が訪れますように』という眠りの祈祷を、神官団が一斉に捧げてくださっています。村の人たちは、いつもより少し深く眠った——その程度の感覚しかないみたいです」
いい。ガルドはちゃんと、住人の生活を乱さない範囲で準備を整えてくれた。リーゼル率いる神官団の眠りの祈祷も、無事に届いたらしい。深い眠りの中で、住人の本体だけが新世界の側へ運ばれた——本人たちは、それを認識していない。
俺は新世界の地図を拡大して、リオン村の境界線を細かく見た。
現世界のリオン村と、新世界のリオン村が、しばらくの間、二重に存在することになる。
ただし、二重に存在するのは「村」のほうであって、「住人」ではない。住人——意識を持って、目覚めて、食事をして、会話をする本体——は、新世界の方にだけ移してしまう。これからの彼らの暮らしは、すべて新世界の側で起こる。現世界の側には、もう、本物の住人はいない。
代わりに、現世界の側には「影」を残しておく。影は住人ではない。意識もないし、村の中で姿が見えることもない。ただの計算の仕掛けだ。新世界の住人が「井戸の水を汲む」「畑に出る」「誰かと話す」といった行動をするたびに、その入力だけがこっそり現世界の側にも送られて、古い設計のロジックの上で同じ計算が裏で走る。本物の住人が新設計の世界で実際に体験した結果と、影が旧設計の上ではじき出した結果——その二つを毎時、ノードが照合する。差分がなければ、新設計は現設計と同じ動きをしているということ——つまり、住人にとって違和感のない切り替えができたということだ。
前の世界では、これをシャドー走行と呼んでいた。新しい仕組みを本番に出す前に、旧い仕組みにも同じ入力を流して、両方の計算結果を見比べる。本物の応答を返すのは新しい方だけ。旧い方は、裏で同じ計算をして、答えだけを記録しておく。新と旧で結果がずれたら、それは新しい仕組みのどこかがおかしいということ——出す前に気づける、というやり方だ。
「ノード、切り替える」
「……はい」
俺は決行のコマンドを、ゆっくり、確実に入力した。
画面の表示が、いっとき揺らいだ。リオン村の輪郭が、現世界の地図から、新世界の地図へと滑り込む。住人三百名のステータスが、新しい設計の元で再生される。指先に、小さな緊張が残った。失敗したら止める。問題があれば戻す。何度もシミュレーションした手順を、頭の中で、もう一度なぞった。
切り替え、完了。アラートは、ひとつも上がっていない。
息を吐いた。
「無事だな」
「えーと……はい」
* * *
南部平原。
朝の陽差しが、リオン村の麦畑を撫でていた。
ミラは家の前で、土に水をやっていた。今日は神官のお姉さんが来ていて、村の中をゆっくり歩き回っていた。何かを見守るような、優しい目をしていた。お母さんは「神様が、私たちを大事にしてくれてるのよ」と言っていた。
昨夜は、いつもよりずっと深く眠れた。夢も見なかった。瞬きをひとつしたら、もう朝だった——そんな感じの夜だった。お母さんも「あら、ぐっすり眠れたわねぇ」と笑っていた。村の誰に聞いても、たぶん同じことを言うはずだった。
ミラは麦の穂に触れた。ちょっとだけ、いつもと違う気がした。
穂の硬さ、土の冷たさ、風の通り方。劇的に変わったわけではない。でも、なんだろう、優しくなった、と言うのが一番近い。世界の角が、ほんの少しだけ、丸くなったような。
お母さんに聞いてみようとして、やめた。たぶん、お母さんには感じ取れない種類の違いだ。前にも、何度か、そういうことがあった。鳥が鳴くのをやめた日、空気の匂いが変わった夕方、井戸の水の重さが違った朝。誰に言っても、「気のせいよ」と笑われた。
でも、今日のは、いい方の違いだ。
ミラは空を見上げた。
「世界、今日も、ちゃんと息してる」
誰に言うでもなく、つぶやいた。
空の色は、いつもより、わずかに澄んでいた。
* * *
管理層。
ノードがリアルタイムで差分集計を始めた。
「新世界の住人と、現世界の影、両方の出力がほぼ一致しています」
「ほぼ、というのは」
「えーと……家畜の鳴き声のタイミングと、風の方向に、わずかな差が出ています。でも、住人の動き、健康状態、会話の頻度——影の側で計算した結果と、ぴたりと合っています」
俺はうなずいた。
家畜と風の差分は許容範囲だ。新設計では天候のロジックがセレスの新方式に切り替わっているから、風の細かい挙動は変わる。それでも、人の生活には影響が出ていない。
「セレスのお天気、ちゃんと動いてるな」
「はい。セレス様も『心配ないわ、悠真くん』とおっしゃってます」
俺は別の画面に切り替えた。経済の動き、ダンジョンの動き、記録の動き——すべて、新世界のリオン村で安定して動いていた。
数値が綺麗すぎるのが、逆に気になった。前の世界で「順調すぎる初日」のあとに崩れたケースを、何度か経験している。問題は遅れて出てくるのが普通だ。一日待って、二日待って、三日経って、それでも問題が出ないなら、本当に大丈夫——その慎重さを、ここで省略してはいけない。
カナリアは、毒ガスを吸って倒れていない。
次の段階に進める。だが、急がない。
* * *
昼過ぎ。
ガルドからの報告が、神殿経由で届いた。
『リオン村に異常なし。住人の体調、作物の状態、家畜の動き——いずれも例月と同じ範囲。神官の報告によれば、ミラという少女がひとり、空を見上げて「今日は、世界がちゃんと息してる気がする」と言ったそうです。それ以外、特筆事項はありません』
俺は、報告書を二度読んだ。
「ノード」
「はい」
「ミラが、また、それを言ったらしい」
「ミラ様、ですね」
「ああ。あの子だけ、世界の細かい変化を、感覚で取れる。スキャナーみたいなものだ。地上に観測者がもうひとり増えた、と思っていい」
俺は静かに、報告書をアーカイブに保存した。
ミラがどういう体質なのか、まだわかっていない。でも、彼女が「世界がちゃんと息してる気がする」と言ったとき、新世界の試験稼働は、住人の感覚レベルでも成功している、ということになる。
* * *
夕方、四人の管理層メンバーを再招集した。
「リオン村のカナリアリリース、第一日目は成功」
ホワイトボードに、結果を書き出した。
住人の振る舞いの差分:許容範囲内。
経済・記録・天候・地形:すべて安定稼働。
住人の感覚:「世界がちゃんと息してる気がする」(ミラの報告)。
緊急停止の必要性:なし。
「明日、隣の集落まで拡大する」
「あら、いいことね」
「順調すぎて、逆に心配になってきました……」
「ふん、まだ油断するなよ。本番はこれからじゃ」
セレス、カルク、ダンジが、それぞれの言葉で受け止めた。ノードが計画表を更新した。
「明日は、リオン村の北側にある三集落を、新世界に追加で移します。すでに移したリオン村と合わせると、住人数は約千人規模になります」
「規模が一気に上がる」
「はい。リソース消費量も、一段上がります」
俺はリソースモニタを開いた。
現状の消費量は92.8。世界全体の処理能力を100としたスケール上での値だ。新世界の構築が進むほど、この数字は上がる。あと数日のうちに上限100に届く。
「ぎりぎり」が、より「ぎりぎり」に近づいていく。
* * *
夜。
ノードが俺のところに来た。
「悠真さん」
「なんだ」
「えーと……ヴェルノス様のメトリクス、ちょっと、変な動きをしています」
俺はダッシュボードを切り替えた。
ヴェルノスの躊躇度グラフ。今までずっと右肩上がりだった数値が、突然、横ばいに転じていた。それから、ぴくぴくと、痙攣するように上下に揺れていた。
「これ、なんでしょうか」
「わからない。でも、嫌な予感がする」
今までヴェルノスのデータは、規則的に揺れていた。迷いが深まる方向で。
でも、今日の揺れは——違う種類の揺れだった。何かに反応しているような揺れ。外から刺激が入って、それを処理し損ねているような、不規則な震え方。
俺は別の画面を出して、新世界の構築状況と並べた。
二つのグラフが、同時に動いていた。
新世界が拡張するたびに、ヴェルノスのメトリクスが反応している。タイムラグは、ほぼ、ない。
「気づき始めてるかもしれない」
「何に、ですか」
「自分が消される側にいる、ということに」
ノードが、息を呑んだ。
「えーと……あの、それって、ヴェルノス様が、抵抗するということですか」
「抵抗、というより——たぶん、設計通りに動こうとする。彼は『世界を判定する』ために作られた装置だ。判定する対象が、いつもの世界じゃなく、もう一つ別の世界に変わりつつある。装置は、その状況を、たぶん『不正』と認識する」
「……」
ノードは、それ以上の言葉を、見つけられないようだった。
次の復活まで、あと二日。
カナリアは無事だった。
でも、迷っていた装置が、迷いから別の状態に切り替わろうとしていた。
お読みいただきありがとうございます。
【今回のIT用語】
カナリアリリースの判定基準:限定範囲で新システムを動かしたとき、何をもって「成功」と判断するかは事前に決めておく必要があります。本作では「住人の振る舞いの差分が許容範囲内」「主要機能が安定稼働」「緊急停止が不要」を判定基準にしています。これがクリアできれば、次の段階(より広い範囲)への展開に進めます。SREの現場でも同じ手順を踏みます。
リソース使用率の上限管理:システムの最大処理能力に対し、どれだけ使っているかを「使用率」で管理します。一般的に80%を超えると警戒域、95%を超えると危険域とされます。本作の世界は92.8%の使用率に達しており、SRE的にはかなり厳しい運用です。残り余地で新世界の構築を進める綱渡りが、これから本格的に始まります。
次話「広がる新世界」もよろしくお願いします。
感想・ブックマークいただけると励みになります。




