@takagaki/cortex-decisions-viewer 0.12.44 → 0.12.45
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.
- package/dist/build.js +22 -51
- package/package.json +1 -1
package/dist/build.js
CHANGED
|
@@ -978,48 +978,19 @@ async function walkMd(dirAbs) {
|
|
|
978
978
|
* - minute:{定例名}:{YYYYMMDD} → 議事録ファイルのGitHub blobリンク
|
|
979
979
|
*/
|
|
980
980
|
/**
|
|
981
|
-
*
|
|
982
|
-
* の `findDirByMarker` と同じ考え方)。
|
|
981
|
+
* 能力ディレクトリの名前(#479)。**固定値。探索しない。**
|
|
983
982
|
*
|
|
984
|
-
*
|
|
985
|
-
*
|
|
986
|
-
*
|
|
983
|
+
* かつては「案件によって置き場が違うかもしれない」前提で、マーカーファイル
|
|
984
|
+
* (`ingest-config.json` など)の在り処からディレクトリ名を求める探索を持っていた。旧構成の案件は
|
|
985
|
+
* 2026-09-07 に全部標準構成へ移り、艦隊 35 リポすべてがこの配置になったので、その分岐は撤去した。
|
|
986
|
+
*
|
|
987
|
+
* **無い案件では探索版も既定名(=この値)に落ちていた**ので、ここを固定にしても
|
|
988
|
+
* 「置き場が見つからないときの挙動」は変わらない——その先の `walkMd` / `fs.readdir` が
|
|
989
|
+
* 実在しないディレクトリを catch して空を返す(空扱い・警告なし)。
|
|
987
990
|
*/
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
if (!d.isDirectory() || d.name === "node_modules" || d.name.startsWith("."))
|
|
992
|
-
continue;
|
|
993
|
-
try {
|
|
994
|
-
await node_fs_1.promises.stat(path.join(repoRoot, d.name, marker));
|
|
995
|
-
return d.name;
|
|
996
|
-
}
|
|
997
|
-
catch {
|
|
998
|
-
// 直下に無ければ1階層下も見る(backlog-settings.json は issues/ の下に置かれる)
|
|
999
|
-
}
|
|
1000
|
-
try {
|
|
1001
|
-
for (const sub of await node_fs_1.promises.readdir(path.join(repoRoot, d.name), { withFileTypes: true })) {
|
|
1002
|
-
if (!sub.isDirectory())
|
|
1003
|
-
continue;
|
|
1004
|
-
try {
|
|
1005
|
-
await node_fs_1.promises.stat(path.join(repoRoot, d.name, sub.name, marker));
|
|
1006
|
-
return d.name;
|
|
1007
|
-
}
|
|
1008
|
-
catch {
|
|
1009
|
-
// 次へ
|
|
1010
|
-
}
|
|
1011
|
-
}
|
|
1012
|
-
}
|
|
1013
|
-
catch {
|
|
1014
|
-
// 読めないディレクトリは飛ばす
|
|
1015
|
-
}
|
|
1016
|
-
}
|
|
1017
|
-
}
|
|
1018
|
-
catch {
|
|
1019
|
-
// repoRoot が読めなければ既定名で進む
|
|
1020
|
-
}
|
|
1021
|
-
return fallback;
|
|
1022
|
-
}
|
|
991
|
+
const MEETING_DIR = "会議";
|
|
992
|
+
const DESIGN_DIR = "デザイン";
|
|
993
|
+
const MATERIALS_DIR = "共有資料";
|
|
1023
994
|
/** 会議の回を入れるディレクトリの名前(`会議/<会議名>/20260120/`) */
|
|
1024
995
|
const MEETING_DATE_DIR = /^\d{8}$/;
|
|
1025
996
|
/**
|
|
@@ -1041,8 +1012,7 @@ const MEETING_DATE_DIR = /^\d{8}$/;
|
|
|
1041
1012
|
* 同じ日に文字起こしを足しても議事録は作り直されないので、送る前に画面で伝えるために使う。
|
|
1042
1013
|
*/
|
|
1043
1014
|
async function collectMeetings(repoRoot) {
|
|
1044
|
-
const
|
|
1045
|
-
const rootAbs = path.join(repoRoot, meetingDir);
|
|
1015
|
+
const rootAbs = path.join(repoRoot, MEETING_DIR);
|
|
1046
1016
|
const out = [];
|
|
1047
1017
|
const hasMinute = async (dirAbs) => {
|
|
1048
1018
|
try {
|
|
@@ -1098,12 +1068,13 @@ const BACKLOG_SECTIONS = ["issues", "documents", "wiki"];
|
|
|
1098
1068
|
/**
|
|
1099
1069
|
* 課題管理の能力ディレクトリ(`<ここ>/issues` に課題ミラーが入る)を探す。
|
|
1100
1070
|
*
|
|
1101
|
-
*
|
|
1102
|
-
*
|
|
1103
|
-
*
|
|
1104
|
-
*
|
|
1105
|
-
*
|
|
1071
|
+
* 🔴 **他の能力(会議・デザイン・共有資料)のように固定値にできない(#479 の対象外)。**
|
|
1072
|
+
* `backlog-settings.json` は能力ディレクトリの直下ではなく**区画の中**
|
|
1073
|
+
* (`<課題管理>/issues/` 等)にあり、しかも接続先が複数になるとさらに1階層落ちる
|
|
1074
|
+
* (`<課題管理>/<キー>/{issues,…}/`・#127)。`課題管理` 決め打ちだと、入れ子形の案件では
|
|
1075
|
+
* `課題管理/issues` という実在しないパスを見に行き、**課題キー→Backlog URL の表が空になる**
|
|
1106
1076
|
* (グラフの課題ノードが全部リポ内パス止まりになり、Backlog へ飛べない)。
|
|
1077
|
+
* 標準構成への移行(#479)で揃ったのは**能力ディレクトリの名前**であって、区画の入れ子ではない。
|
|
1107
1078
|
*
|
|
1108
1079
|
* 規則の出どころは cortex-engine の `plugin/scripts/issues-config.mjs`(`findBacklogDir`)。
|
|
1109
1080
|
* **あちらを変えたらここも変えること**(`viewer/test/backlog-nested-layout.test.mjs` が見張る)。
|
|
@@ -1152,9 +1123,9 @@ async function findBacklogDir(repoRoot, fallback) {
|
|
|
1152
1123
|
async function buildTargetUrlMap(repoRoot, repoBaseUrl, branch) {
|
|
1153
1124
|
const map = new Map();
|
|
1154
1125
|
const issuesDir = await findBacklogDir(repoRoot, "課題管理");
|
|
1155
|
-
const designDir =
|
|
1156
|
-
const meetingDir =
|
|
1157
|
-
const materialsDir =
|
|
1126
|
+
const designDir = DESIGN_DIR;
|
|
1127
|
+
const meetingDir = MEETING_DIR;
|
|
1128
|
+
const materialsDir = MATERIALS_DIR;
|
|
1158
1129
|
// 課題キー → Backlog URL({課題管理}/issues/ の同期mdの基本情報から抽出)
|
|
1159
1130
|
for (const file of await walkMd(path.join(repoRoot, issuesDir, "issues"))) {
|
|
1160
1131
|
try {
|
|
@@ -1221,7 +1192,7 @@ async function buildTargetUrlMap(repoRoot, repoBaseUrl, branch) {
|
|
|
1221
1192
|
// minute:{定例名}:{YYYYMMDD} → 議事録ファイルのGitHubリンク
|
|
1222
1193
|
// パス規約: {会議}/{フェーズ}/{定例名}/{YYYYMMDD}/*minutes*.md
|
|
1223
1194
|
//
|
|
1224
|
-
// **以前は存在しない `ミーティング/` を見ていた**(艦隊は全案件
|
|
1195
|
+
// **以前は存在しない `ミーティング/` を見ていた**(艦隊は全案件 `会議/`)。
|
|
1225
1196
|
// そのため minute: の解決は一度も効いていなかった。
|
|
1226
1197
|
if (repoBaseUrl) {
|
|
1227
1198
|
for (const file of await walkMd(path.join(repoRoot, meetingDir))) {
|
package/package.json
CHANGED