@takagaki/cortex-decisions-viewer 0.12.5 → 0.12.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/render.js +31 -0
  2. package/package.json +1 -1
package/dist/render.js CHANGED
@@ -8300,6 +8300,14 @@ ${deriveCapTile.toString()}
8300
8300
 
8301
8301
  function renderOps() {
8302
8302
  renderConnMap();
8303
+ // 🔴 **先読みが飛行中なら、いま作った図を確認中へ倒す(#264)。**
8304
+ // 先読み(起動時の loadLiveFleet)は操作タブを開く前に走るので、
8305
+ // 確認中へ倒す口(loadLiveFleet の connMapConfirmingShown の1回)は
8306
+ // **conn-map の DOM が無い時点で使い切られている**——ここで呼び直さないと、
8307
+ // 応答が届く前に操作タブを開いた人には**焼いた状態が断言されたまま**出る
8308
+ // (#256 で消した瞬きが、先読みの経路だけで戻ってくる)。
8309
+ // タイル側は描画時に liveConfirming() を評価する作りなので追加対応は要らない。
8310
+ if (liveConfirming()) showConfirmingConnMap();
8303
8311
  renderDataSources();
8304
8312
  loadLiveFleet();
8305
8313
  // **まとめ表がまだ答えていない行があれば取り直す。** 取得前は0件なので、
@@ -8900,6 +8908,11 @@ ${deriveCapTile.toString()}
8900
8908
  if (capConfigState(cap)) continue;
8901
8909
  var node = wrap.querySelector('[data-target="ds-' + cap + '"]');
8902
8910
  if (!node) continue;
8911
+ // 🔴 **すでに退避してある能力は二度と触らない(#264)。** 先読みの経路では
8912
+ // ここが1回の描画で2回呼ばれうる(renderOps の飛行中分岐 → loadLiveFleet の
8913
+ // 初回1回)。上書きすると **退避に「cm-pending」が入り**、失敗・見切りで
8914
+ // 戻したときに確認中の表示が焼いた値として復活する=確認中で固まる。
8915
+ if (node.hasAttribute("data-cm-baked-class")) continue;
8903
8916
  node.setAttribute("data-cm-baked-class", node.getAttribute("class") || "");
8904
8917
  node.setAttribute("class", "cm-node cm-pending");
8905
8918
  var sync = node.querySelector(".cm-sync");
@@ -10554,5 +10567,23 @@ ${deriveCapTile.toString()}
10554
10567
 
10555
10568
  window.addEventListener("popstate", route);
10556
10569
  route();
10570
+ /**
10571
+ * 接続状況の先読み(#264)。**開いたタブに関係なく、起動時に1回だけ取りに行く。**
10572
+ *
10573
+ * op=state は 0.12.0 から常に全能力を要求するので(ALL_STATE_CAPS の項)、
10574
+ * この1回で操作タブが必要とする材料は全部揃う——操作タブを開いた時点で
10575
+ * LIVE_STATE が既にあり、「確認中…」を待たずに確定表示が出る。
10576
+ *
10577
+ * 🔴 **route() の後に置く(renderList / renderOps 側にフックしない)。**
10578
+ * renderList はタブを切り替えるたびに走るので、あちらに置くと「起動時に1回」
10579
+ * ではなくなる。しかも **popstate はこの行を通らない**(listener は route だけ)
10580
+ * ので、戻る/進むで先読みが何度も走ることもない。
10581
+ *
10582
+ * 取りに行かない案件(intake 無し・fetch 無し)で確認中が出たまま固まる心配は
10583
+ * ない——判定は loadLiveFleet 内の liveConfirmPossible が持つ。多重fetchも
10584
+ * 既存の liveFleetRequested の再入防止が守る(?tab=ops で開いた場合は
10585
+ * renderOps 側の呼び出しが先に飛んでいるので、ここは何もせずに戻る)。
10586
+ */
10587
+ loadLiveFleet();
10557
10588
  })();
10558
10589
  `;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@takagaki/cortex-decisions-viewer",
3
- "version": "0.12.5",
3
+ "version": "0.12.6",
4
4
  "description": "Cortexの意思決定記録(Decisions/*.md)を静的サイトにビルドして閲覧する。各レコードに「Edit on GitHub」リンクを付与する。",
5
5
  "license": "UNLICENSED",
6
6
  "private": false,