アップデート 2.218
2026/8/2
v2.218.0.0BETAMINOR
Seymour2026年8月2日
VIEWERHUB F1:3Dビューアーのユニバーサル統合(ポート1つ、pythonゼロ、ブラウザーゼロ)
StudioWebServer(Modules/Common/ViewerHub/):IN-PROCESS静的HTTPサーバー(TcpListener loopback:8769)に 仮想ホストルーティング*.loopbackを導入(RFC 6761 — WebView2はループバックへ解決;各アプリは独自の「ドメイン」ルートを見る — HTMLの書き換えなしで絶対パスを解決)。静的ファイル + MIME + 透過ジャンクション + パストラバーサルガード +GET /health。ポート回収:レガシーpython (http.server) squats 8769, kills it viaGetExtendedTcpTable; otherwise honest status. Zero external process (nothing to leak).の場合、NoclipLocator:単一ディスカバリー(envNOCLIP_ROOT→ walk-up →Downloads/Compressed)と nested-root修正 (潜在していたAuroraバグ)。ServeDirBuilder:noclip serve-dir(増分dist + dataジャンクション)。ViewerDescriptor+ViewerHubService:宣言的ビューアーレジストリ + 単一APIBuildUrl/Find/StatusText;初期説明はmonster-studioとmagic-studio(ホストnoclip.loopback)。ViewerShell(Modules/Common/ViewerShell/):ユニバーサルメニュー — 固定バー(in-processサーバーステータス、URL、Reload)+ 埋め込みWebView2;WebView2HostをCommonへコピー(レガシービューアーはF2まで古いコピーを保持)。- 配線:
Main_Window— Monster Studioは現在 ViewerShell埋め込み を開く(ブラウザーなし)+ 新しいmagic-studio-webハンドラー/ケース;ModuleCatalogPolicy—magic-studio-webエントリ +monster-studio-webエントリを更新(Embedded 3D Viewer)。 - ゲート: リリースビルドはエラー0件(pre-existingの警告445件);StudioWebServer probeテスト7/7 PASS(health JSON、既知/未知ホストのルーティング、js/bin MIME、raw TCP経由のパストラバーサル、404)。
- アーキテクチャ文書:
docs/ai/VIEWERHUB_ARCHITECTURE_2026-08-02.md(承認済み計画 F1–F6、ユーザーの決定)。 - 保留:
*.loopbackWebView2スパイク(手動スモーク:エディターでExtras → Monster Studio);F2(Magic/Model/マップビューアーをハブへ移行);対象デプロイ(ビルド中、起動中のエディターがbin/Releaseをロックしていた)。
v2.217.1.0
v2.218.1.0BETAPATCH
Seymour2026年8月2日
i18n ウェーブ UNIQUE 3b: 1,739のリテラルを移行 — エディタ100% 駆動。 resx-driven
- Lane IFRT-2. 前版:
v2.218.0.0] - 1,759のユニークの客観的分類: 1,739実際の UI vs 20技術ジャンク(パス/hex/数値/記号/id — 意図的に移行しない)。
- 1,739
U_{slug}_{hash8}キー (表示テキストは/でバイト単位で保持 byte-for-byte 技術情報 EN/PT — ビジュアル動作変更ゼロ; 実際の翻訳は将来の増分作業として残る)。 - 94 .axamlファイルにわたる1,736置換 (
{x:Static res:Strings.U_...});MonsterAiEditor2*除外(ハードルール、0差分)。Strings.cs+1,739プロパティ。 - スクリプト:
_i18n_onda3b_classify.py,_i18n_onda3b_migrate.py,_i18n_onda3b_cs.py,_i18n_onda3b_check.py(0残存; 10の「残り」= 正規表現偽陽性 — 文字列内のフラグメント、 XAML ではない)。 UI). - ゲート: ビルド0エラー; スイート381/381 PASS ((別レーンのをテストのため脇に移動し、 StudioWebServerTests.cs 無傷で復元)。
- MILESTONE: ハードコードリテラル債務を ZEROED — ウェーブ 1+2+3a+3b = 2,294リテラル移行 ((2,414 → UI)0実際の)。保留: PT/EN エディタの手動/スモーク。 ### PATCH
v2.218.2.0BETAPATCH
Seymour2026年8月2日
ViewerHub F1 ) — 修正: `*.loopback` スパイク → ループバック。 FAILED → loopback-IP URL
- 前版:
v2.218.1.0] - 診断(方法論的): in-process 技術情報 OK ((ヘルス200、インデックス 200、バンドル200、wasm 200 適用/wasm、1d/0080 BLACK SCREEN ビン 200) WebView2 — 黒画面はが
noclip.loopback, にナビゲートしたため、このWindowsマシンはそれを解決しない( NOT 技術情報 (RFC 6761がリゾルバーでアクティブでない: OS 技術情報Resolve-DnsName/GetHostAddressesが失敗)。 - 修正:
ViewerHubService.BuildUrlが現在http://loopback:8769/index.html#ffx/...(を返す(直接、 IP, 技術情報 DNS) なし)— noclipはルートに住み、 serve-dir 絶対パスは書き換えなしで解決。仮想ホ Virtual-host ストルーティングはStudioWebServer(に残る(loopbackエイリアスが現在のフローをカバー; 仮想ホストは将来のアプリ用に残る)。 - エンコーディング修正:
ViewerHub.cs/ViewerShell_Control.axaml.csにがあ MOJIBAKE (PowerShell 5.1Set-Content技術情報 UTF-8 がViewerHub→ViewerHubServiceリネーム適用中にコメント/文字列のを破損)— エディタ経由でファイルを再作成(正しい) UTF-8)教訓: アクセント付き PowerShellSet-Content経由で .cs を決して書き換えるな。 - ゲート: ビルド0エラー; テスト8/ PASS ((新しい
LoopbackAlias_ServesForPlainIpHost— 実際のハブフロー)。 - ドキュメント更新:
docs/ai/VIEWERHUB_ARCHITECTURE_2026-08-02.md§5(スパイク結果 + 文書化フォールバック)。
v2.218.3.0BETAPATCH
Seymour2026年8月2日
i18n: 手動スモークを自動化 AUTOMATED 技術情報 Run.Text 4つのエスケープされたリテラルを移行
- Lane IFRT-2. previous:
v2.218.2.0] StringsIntegrityTests((新規、3テスト) — 約96モジュールの手動スモークを置き換え: (1) .axamlのすべての{x:Static res:Strings.X}参照がプロパティと中立resxキーの両方に解決; Strings.cs 技術情報 AND 技術情報 (2) すべてのプロパティが中立キーを持つ; Strings.cs (3) UI .a xamlに生リテラルゼロ(技術ジャンク — パス/hex/数値 — の文書化された例外付き、Wave 3b分類器と同じ基準)。- 4つのエスケープされたリテラル (
Run Text=技術情報=属性 — 移行正規表現が逃した):· partner hex:,/ 112 non-empty,+ →(MixTableEditor),Payload SHA256:(SaveEditorHub) →U_*キー + + Strings.cs 置換。 - ゲート: ビルド0エラー; スイート 384/384 PASS ((381 + 3新規)。テストが初回実行で実際の失敗を捕捉(23生リテラル → 分析 → 20正当な技術ジャンク + 4実際の移行)— 自動スモークが機能する証明。
- 翻訳フローが今: 新しい文字列 = の1キー + Strings.resx の1 (プ Strings.cs (ロパティ(8サテライトがフォールバック経由でを継承) EN 技術情報 ResourceManager 技術情報 ; 実際の翻訳 = サテライトの翻訳されたキーのみを埋める。 ### PATCH
v2.218.4.0BETAPATCH
Seymour2026年8月2日
ViewerShell UNIVERSAL MENU 技術情報 (browser-like v2(ブラウザライクパターン)
- 前版:
v2.218.3.0] - 新しいツールバー: コンパクト
cardSoft付き 3ゾーン — (1) タイトル + サーバーステータスピル ((3状態:iniciando…/servidor in-process/pillDanger— 実際のクラス: StudioTheme 技術情報pillReadonly/pillDanger); (2) アドレスバー ((付き切り詰め URL — ソフトウェア内の「ブラウザ」) ToolTip ; (3) ユニバーサルアクション(Reload)。古い大きなカード(垂直スペースを無駄にした)は消えた。 - DataModel:
IsStarting/IsRunning/IsError+SetState(); code-behind コードビハインドが成功/エラーフローで状態を更新( (BuildUrl null → 理由付き赤ピル)。 - ゲート: ビルド0エラー; エディタスモーク(追加機能 → モンスター Studio/魔法 Studio — 新しいメニュー + ビューアロード)。
- 注: モード per-mode ごとのコンテキストパネル(説明ツール — e.g. 例: Auroraのエンカウンターピッカー)はで折りたたみ可能な行として着地(axamlコメント) F3 (技術情報
v2.218.5.0BETAPATCH
Seymour2026年8月2日
ViewerShell SKIN: 技術情報 UI — : 技術情報 noclip 非表示(ロゴ/概要/下部バー)
- 前版:
v2.218.4.0] WebView2HostがInjectScriptOnDocumentCreated(script)— 作成されたすべてのドキュメントにスクリプトを注入(AddScriptToExecuteOnDocumentCreatedAsync, 経由、ランタイムinit前の安全なキュー付き)。将来のスキン/ツールの基盤。- がnoclipスキンを ViewerShell (
RequiresNoclipdescs) CSS+MutationObserver : +が#BottomBar((noclip play/pause/fullscreen/共有)、#About((彼らのロゴ付きクレジットパネル)、#studioSidePanelHelpBtn,.SettingsButton— 機能パネルは残る ((モンスター/マジックドロップダウン)と3Dキャンバス。彼らのデフォルトメニューは消えた; ユニバーサルメニューは私たちのもの(シェルツールバー)。 - ゲート: ビルド0エラー; エディタスモーク(追加機能 → モンスター Studio — noclip UI 非表示、モンスタードロップダウン無傷)。
- 次: F2 ((魔法/モデル/Mapビューア移行)マップ + スキン進化(noclipドロップダウンを置き換える独自シェルツール)。