i-repo 2.0.0 → 2.1.0

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 (192) hide show
  1. package/README.md +37 -10
  2. package/dist/bin/irepo.d.ts.map +1 -1
  3. package/dist/bin/irepo.js +118 -13
  4. package/dist/bin/irepo.js.map +1 -1
  5. package/dist/commands/auth.js +6 -0
  6. package/dist/commands/auth.js.map +1 -1
  7. package/dist/commands/config.d.ts.map +1 -1
  8. package/dist/commands/config.js +15 -3
  9. package/dist/commands/config.js.map +1 -1
  10. package/dist/commands/definition-batches/index.d.ts.map +1 -1
  11. package/dist/commands/definition-batches/index.js +20 -21
  12. package/dist/commands/definition-batches/index.js.map +1 -1
  13. package/dist/commands/definitions/get.d.ts.map +1 -1
  14. package/dist/commands/definitions/get.js +6 -2
  15. package/dist/commands/definitions/get.js.map +1 -1
  16. package/dist/commands/definitions/labels.d.ts.map +1 -1
  17. package/dist/commands/definitions/labels.js +9 -8
  18. package/dist/commands/definitions/labels.js.map +1 -1
  19. package/dist/commands/definitions/list.d.ts.map +1 -1
  20. package/dist/commands/definitions/list.js +11 -16
  21. package/dist/commands/definitions/list.js.map +1 -1
  22. package/dist/commands/definitions/lock.d.ts.map +1 -1
  23. package/dist/commands/definitions/lock.js +7 -3
  24. package/dist/commands/definitions/lock.js.map +1 -1
  25. package/dist/commands/definitions/roles.d.ts.map +1 -1
  26. package/dist/commands/definitions/roles.js +7 -6
  27. package/dist/commands/definitions/roles.js.map +1 -1
  28. package/dist/commands/plugin.d.ts.map +1 -1
  29. package/dist/commands/plugin.js +69 -6
  30. package/dist/commands/plugin.js.map +1 -1
  31. package/dist/commands/raw.d.ts.map +1 -1
  32. package/dist/commands/raw.js +5 -4
  33. package/dist/commands/raw.js.map +1 -1
  34. package/dist/commands/report-batches/index.d.ts.map +1 -1
  35. package/dist/commands/report-batches/index.js +94 -94
  36. package/dist/commands/report-batches/index.js.map +1 -1
  37. package/dist/commands/reports/cluster-value.d.ts.map +1 -1
  38. package/dist/commands/reports/cluster-value.js +11 -7
  39. package/dist/commands/reports/cluster-value.js.map +1 -1
  40. package/dist/commands/reports/copy.d.ts.map +1 -1
  41. package/dist/commands/reports/copy.js +7 -4
  42. package/dist/commands/reports/copy.js.map +1 -1
  43. package/dist/commands/reports/create-sorted.d.ts.map +1 -1
  44. package/dist/commands/reports/create-sorted.js +6 -3
  45. package/dist/commands/reports/create-sorted.js.map +1 -1
  46. package/dist/commands/reports/download.d.ts.map +1 -1
  47. package/dist/commands/reports/download.js +7 -4
  48. package/dist/commands/reports/download.js.map +1 -1
  49. package/dist/commands/reports/get.d.ts.map +1 -1
  50. package/dist/commands/reports/get.js +13 -7
  51. package/dist/commands/reports/get.js.map +1 -1
  52. package/dist/commands/reports/labels.d.ts.map +1 -1
  53. package/dist/commands/reports/labels.js +5 -4
  54. package/dist/commands/reports/labels.js.map +1 -1
  55. package/dist/commands/reports/list.d.ts.map +1 -1
  56. package/dist/commands/reports/list.js +38 -45
  57. package/dist/commands/reports/list.js.map +1 -1
  58. package/dist/commands/reports/lock.d.ts.map +1 -1
  59. package/dist/commands/reports/lock.js +7 -3
  60. package/dist/commands/reports/lock.js.map +1 -1
  61. package/dist/commands/reports/roles.d.ts.map +1 -1
  62. package/dist/commands/reports/roles.js +5 -4
  63. package/dist/commands/reports/roles.js.map +1 -1
  64. package/dist/commands/schema.d.ts +34 -0
  65. package/dist/commands/schema.d.ts.map +1 -0
  66. package/dist/commands/schema.js +73 -0
  67. package/dist/commands/schema.js.map +1 -0
  68. package/dist/commands/shared-options.d.ts +62 -0
  69. package/dist/commands/shared-options.d.ts.map +1 -0
  70. package/dist/commands/shared-options.js +144 -0
  71. package/dist/commands/shared-options.js.map +1 -0
  72. package/dist/commands/systems/index.d.ts.map +1 -1
  73. package/dist/commands/systems/index.js +52 -45
  74. package/dist/commands/systems/index.js.map +1 -1
  75. package/dist/config/client.d.ts.map +1 -1
  76. package/dist/config/client.js +6 -3
  77. package/dist/config/client.js.map +1 -1
  78. package/dist/config/command-gate.d.ts +69 -0
  79. package/dist/config/command-gate.d.ts.map +1 -0
  80. package/dist/config/command-gate.js +134 -0
  81. package/dist/config/command-gate.js.map +1 -0
  82. package/dist/config/scoped-store.d.ts.map +1 -1
  83. package/dist/config/scoped-store.js +40 -9
  84. package/dist/config/scoped-store.js.map +1 -1
  85. package/dist/config/store.d.ts +12 -0
  86. package/dist/config/store.d.ts.map +1 -1
  87. package/dist/config/store.js +2 -0
  88. package/dist/config/store.js.map +1 -1
  89. package/dist/contracts/registry.d.ts +37 -0
  90. package/dist/contracts/registry.d.ts.map +1 -0
  91. package/dist/contracts/registry.js +41 -0
  92. package/dist/contracts/registry.js.map +1 -0
  93. package/dist/core/errors.d.ts +12 -0
  94. package/dist/core/errors.d.ts.map +1 -1
  95. package/dist/core/errors.js +18 -0
  96. package/dist/core/errors.js.map +1 -1
  97. package/dist/core/index.d.ts +1 -1
  98. package/dist/core/index.d.ts.map +1 -1
  99. package/dist/core/index.js +1 -1
  100. package/dist/core/index.js.map +1 -1
  101. package/dist/i18n/locales/en.d.ts.map +1 -1
  102. package/dist/i18n/locales/en.js +11 -0
  103. package/dist/i18n/locales/en.js.map +1 -1
  104. package/dist/i18n/locales/ja.d.ts.map +1 -1
  105. package/dist/i18n/locales/ja.js +11 -0
  106. package/dist/i18n/locales/ja.js.map +1 -1
  107. package/dist/i18n/types.d.ts +9 -0
  108. package/dist/i18n/types.d.ts.map +1 -1
  109. package/dist/ink/components/OptionForm.d.ts.map +1 -1
  110. package/dist/ink/components/OptionForm.js +15 -3
  111. package/dist/ink/components/OptionForm.js.map +1 -1
  112. package/dist/ink/registry/commands.d.ts.map +1 -1
  113. package/dist/ink/registry/commands.js +66 -2
  114. package/dist/ink/registry/commands.js.map +1 -1
  115. package/dist/ink/registry/executors.d.ts.map +1 -1
  116. package/dist/ink/registry/executors.js +27 -12
  117. package/dist/ink/registry/executors.js.map +1 -1
  118. package/dist/ink/screens/CommandScreen.d.ts.map +1 -1
  119. package/dist/ink/screens/CommandScreen.js +12 -4
  120. package/dist/ink/screens/CommandScreen.js.map +1 -1
  121. package/dist/ink/screens/HomeScreen.d.ts.map +1 -1
  122. package/dist/ink/screens/HomeScreen.js +16 -3
  123. package/dist/ink/screens/HomeScreen.js.map +1 -1
  124. package/dist/ink/screens/PluginsScreen.d.ts.map +1 -1
  125. package/dist/ink/screens/PluginsScreen.js +27 -2
  126. package/dist/ink/screens/PluginsScreen.js.map +1 -1
  127. package/dist/ink/types.d.ts +12 -0
  128. package/dist/ink/types.d.ts.map +1 -1
  129. package/dist/plugins/describe.d.ts +60 -0
  130. package/dist/plugins/describe.d.ts.map +1 -0
  131. package/dist/plugins/describe.js +145 -0
  132. package/dist/plugins/describe.js.map +1 -0
  133. package/dist/plugins/dispatch.d.ts +14 -1
  134. package/dist/plugins/dispatch.d.ts.map +1 -1
  135. package/dist/plugins/dispatch.js +15 -4
  136. package/dist/plugins/dispatch.js.map +1 -1
  137. package/dist/plugins/templates.d.ts.map +1 -1
  138. package/dist/plugins/templates.js +12 -2
  139. package/dist/plugins/templates.js.map +1 -1
  140. package/dist/plugins/verify.d.ts +17 -0
  141. package/dist/plugins/verify.d.ts.map +1 -1
  142. package/dist/plugins/verify.js +23 -6
  143. package/dist/plugins/verify.js.map +1 -1
  144. package/dist/sdk/core/http-client.d.ts.map +1 -1
  145. package/dist/sdk/core/http-client.js +4 -1
  146. package/dist/sdk/core/http-client.js.map +1 -1
  147. package/dist/sdk/resources/shared.d.ts +5 -0
  148. package/dist/sdk/resources/shared.d.ts.map +1 -1
  149. package/dist/sdk/resources/shared.js +7 -4
  150. package/dist/sdk/resources/shared.js.map +1 -1
  151. package/dist/sdk/types/definition.d.ts +2 -2
  152. package/dist/sdk/types/definition.d.ts.map +1 -1
  153. package/dist/sdk/types/public.d.ts +16 -4
  154. package/dist/sdk/types/public.d.ts.map +1 -1
  155. package/dist/sdk/types/report.d.ts +2 -2
  156. package/dist/sdk/types/report.d.ts.map +1 -1
  157. package/dist/ui/formatters/csv.d.ts.map +1 -1
  158. package/dist/ui/formatters/csv.js +3 -2
  159. package/dist/ui/formatters/csv.js.map +1 -1
  160. package/dist/ui/formatters/envelope.d.ts +1 -0
  161. package/dist/ui/formatters/envelope.d.ts.map +1 -1
  162. package/dist/ui/formatters/envelope.js +1 -1
  163. package/dist/ui/formatters/envelope.js.map +1 -1
  164. package/dist/ui/formatters/index.d.ts +4 -1
  165. package/dist/ui/formatters/index.d.ts.map +1 -1
  166. package/dist/ui/formatters/index.js +9 -0
  167. package/dist/ui/formatters/index.js.map +1 -1
  168. package/dist/ui/formatters/json.d.ts.map +1 -1
  169. package/dist/ui/formatters/json.js +2 -1
  170. package/dist/ui/formatters/json.js.map +1 -1
  171. package/dist/ui/formatters/ndjson.d.ts +0 -18
  172. package/dist/ui/formatters/ndjson.d.ts.map +1 -1
  173. package/dist/ui/formatters/ndjson.js +2 -1
  174. package/dist/ui/formatters/ndjson.js.map +1 -1
  175. package/dist/ui/formatters/quiet.d.ts.map +1 -1
  176. package/dist/ui/formatters/quiet.js +3 -2
  177. package/dist/ui/formatters/quiet.js.map +1 -1
  178. package/dist/ui/formatters/table.d.ts.map +1 -1
  179. package/dist/ui/formatters/table.js +8 -7
  180. package/dist/ui/formatters/table.js.map +1 -1
  181. package/dist/ui/formatters/writer.d.ts +38 -0
  182. package/dist/ui/formatters/writer.d.ts.map +1 -0
  183. package/dist/ui/formatters/writer.js +83 -0
  184. package/dist/ui/formatters/writer.js.map +1 -0
  185. package/dist/ui/index.d.ts +1 -0
  186. package/dist/ui/index.d.ts.map +1 -1
  187. package/dist/ui/index.js +1 -0
  188. package/dist/ui/index.js.map +1 -1
  189. package/dist/ui/table.d.ts.map +1 -1
  190. package/dist/ui/table.js +11 -10
  191. package/dist/ui/table.js.map +1 -1
  192. package/package.json +1 -1
package/README.md CHANGED
@@ -134,6 +134,8 @@ CLI フラグ → 環境変数 → Local config → Project config → User conf
134
134
  | `defaultFormat` | デフォルト出力形式 | `table` / `json` / `csv` |
135
135
  | `timeout` | リクエストタイムアウト(秒) | 正の数値 |
136
136
  | `quiet` | ID のみ出力モード | `true` / `false` |
137
+ | `allowDelete` | 削除コマンドの有効化(既定で非表示・無効) | `true` / `false` |
138
+ | `disabledCommands` | 無効化するコマンド(カンマ区切り、エイリアス可) | 例: `raw, repb delete` |
137
139
 
138
140
  ```bash
139
141
  i-repo config set language ja # 日本語に切り替え
@@ -200,7 +202,7 @@ i-repo repb download -d 100 -o reports.zip # 一括ダウンロード
200
202
  i-repo repb download-csv 12345 # CSV エクスポート
201
203
  i-repo repb download-merged-pdf --reports '[{"repTopId":"12345"},{"repTopId":"12346"}]'
202
204
  i-repo repb download-merged-pdf --xml-file request.xml # XMLファイルで直接指定
203
- i-repo repb delete -d 100 # 条件に合う帳票を削除(確認プロンプトあり)
205
+ i-repo repb delete -d 100 # 条件に合う帳票を削除(要 allowDelete=true・確認プロンプトあり)
204
206
  i-repo repb delete -d 100 -f # 確認をスキップして削除
205
207
  i-repo repb delete -d 100 --mode logical # 論理削除("0" も可)
206
208
  i-repo repb delete -d 100 --mode physical -f # 物理削除(確認スキップ)
@@ -210,7 +212,7 @@ i-repo repb delete -d 100 --mode physical -f # 物理削除(確認スキ
210
212
 
211
213
  ```bash
212
214
  i-repo defb update-select-items data.csv -t csv # 選択値情報更新
213
- i-repo defb delete -d 100 # 条件に合う定義を削除(確認プロンプトあり)
215
+ i-repo defb delete -d 100 # 条件に合う定義を削除(要 allowDelete=true・確認プロンプトあり)
214
216
  i-repo defb delete -d 100 -f # 確認をスキップして削除
215
217
  i-repo defb delete --mode logical # 論理削除
216
218
  i-repo defb delete --mode physical -f # 物理削除(確認スキップ)
@@ -245,7 +247,7 @@ i-repo sys users upload users.csv -t csv # ユーザー登録
245
247
  i-repo sys groups download -t csv # グループ一覧
246
248
  i-repo sys terminals download -t csv # 端末情報
247
249
  i-repo sys url-scheme # URLスキーム取得
248
- i-repo sys delete-label --label-type def # ラベル削除(確認プロンプトあり)
250
+ i-repo sys delete-label --label-type def # ラベル削除(要 allowDelete=true・確認プロンプトあり)
249
251
  i-repo sys delete-label --label-type def -f # 確認をスキップして削除
250
252
  ```
251
253
 
@@ -253,7 +255,31 @@ i-repo sys delete-label --label-type def -f # 確認をスキップして
253
255
 
254
256
  ## Destructive Operations / 破壊的操作の安全機能
255
257
 
256
- 削除系コマンド(`repb delete`, `defb delete`, `sys delete-label`)は実行前に確認プロンプトを表示します。
258
+ ### 削除コマンドはデフォルト無効
259
+
260
+ 事故防止のため、削除系コマンド(`repb delete`, `defb delete`, `sys delete-label`)は**デフォルトでヘルプから非表示かつ実行不可**です。使うには明示的に有効化します:
261
+
262
+ ```bash
263
+ i-repo config set allowDelete true # 個人設定で有効化
264
+ i-repo config set allowDelete true -s local # このリポジトリだけ(CI 等)
265
+ ```
266
+
267
+ 無効のまま実行すると案内エラー(exit 1)になります。対話モード(`i-repo`)のメニューからも非表示になります。
268
+
269
+ ### 任意コマンドの無効化
270
+
271
+ `disabledCommands` で任意のコマンドを非表示・実行不可にできます(カンマ区切り、エイリアスやプラグイン名も可):
272
+
273
+ ```bash
274
+ i-repo config set disabledCommands "raw" -s project # チーム全体で raw を封印
275
+ i-repo config set disabledCommands "repb delete, s3" # サブコマンドやプラグインも指定可
276
+ ```
277
+
278
+ なお `config` コマンド自体は無効化できません(元に戻す手段がなくなるため)。
279
+
280
+ ### 確認プロンプト
281
+
282
+ 削除系コマンドは(有効化済みでも)実行前に確認プロンプトを表示します。
257
283
 
258
284
  ```bash
259
285
  $ i-repo repb delete -d 100
@@ -320,7 +346,7 @@ i-repo rep list -e completed --update-from "$(date +%Y/%m/%d) 00:00:00" --quiet
320
346
  i-repo rep list --regist-from "2025/01/01 00:00:00" --format json | jq '.[].name'
321
347
 
322
348
  # CSV をファイルに保存
323
- i-repo rep list --regist-from "2025/01/01 00:00:00" --format csv > reports.csv
349
+ i-repo rep list --regist-from "2025/01/01 00:00:00" --format csv --save reports.csv
324
350
  ```
325
351
 
326
352
  **PowerShell (Windows)**
@@ -335,16 +361,16 @@ i-repo rep list -e completed --update-from "$today 00:00:00" --quiet `
335
361
  i-repo rep list --regist-from "2025/01/01 00:00:00" --format json `
336
362
  | ConvertFrom-Json | Select-Object -ExpandProperty name
337
363
 
338
- # CSV をファイルに保存
339
- i-repo rep list --regist-from "2025/01/01 00:00:00" --format csv `
340
- | Out-File -Encoding utf8 reports.csv
364
+ # CSV をファイルに保存 (--save で UTF-8 のまま保存。`>` リダイレクトは
365
+ # PowerShell 5 がコンソールのコードページで再エンコードして文字化けする)
366
+ i-repo rep list --regist-from "2025/01/01 00:00:00" --format csv --save reports.csv
341
367
  ```
342
368
 
343
369
  **コマンドプロンプト (Windows)**
344
370
 
345
371
  ```cmd
346
- REM CSV をファイルに保存(日付で絞ること)
347
- i-repo rep list --regist-from "2025/01/01 00:00:00" --format csv > reports.csv
372
+ REM CSV をファイルに保存(日付で絞ること。--save なら文字コードの心配が不要)
373
+ i-repo rep list --regist-from "2025/01/01 00:00:00" --format csv --save reports.csv
348
374
 
349
375
  REM 今日の完了済みレポートを PDF ダウンロード
350
376
  for /f %i in ('i-repo rep list -e completed --update-from "%date:~0,4%/%date:~5,2%/%date:~8,2% 00:00:00" --quiet') do i-repo rep download %i --file-type pdf
@@ -382,6 +408,7 @@ i-Reporter の操作には `i-repo` CLI を使用する。
382
408
  - 一覧取得には必ず日付フィルタ(`--regist-from` / `--update-from`)を付けること
383
409
  - 必ず `--format json` を付けて構造化データで受け取ること
384
410
  - 削除操作には必ず `--force` を付けること(非対話環境のため)
411
+ - 削除操作は事前に `i-repo config set allowDelete true` での有効化が必要(既定で無効)
385
412
  - 削除・更新前に `--format json` で対象を確認すること
386
413
  - ファイル操作は `-o` で保存先を明示すること
387
414
  ```
@@ -1 +1 @@
1
- {"version":3,"file":"irepo.d.ts","sourceRoot":"","sources":["../../src/bin/irepo.ts"],"names":[],"mappings":";AAgHA;;GAEG;AACH,wBAAsB,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiExD"}
1
+ {"version":3,"file":"irepo.d.ts","sourceRoot":"","sources":["../../src/bin/irepo.ts"],"names":[],"mappings":";AA6MA;;GAEG;AACH,wBAAsB,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAkGxD"}
package/dist/bin/irepo.js CHANGED
@@ -4,15 +4,18 @@
4
4
  *
5
5
  * Main entry point. Commander-based program with subcommands.
6
6
  */
7
- import { Command, CommanderError } from "commander";
7
+ import { Command, CommanderError, Option } from "commander";
8
8
  import { realpathSync } from "node:fs";
9
9
  import { fileURLToPath } from "node:url";
10
- import { printError, t, setDefaultTimeout } from "../ui/index.js";
11
- import { extractErrorInfo } from "../core/errors.js";
10
+ import { printError, printWarning, t, setDefaultTimeout } from "../ui/index.js";
11
+ import { OUTPUT_FORMATS } from "../ui/formatters/index.js";
12
+ import { ExitCode, extractErrorInfo, ValidationError } from "../core/errors.js";
12
13
  import { logCommandEnd, logCommandStart, logError, maskSecrets, setLoggedCommandLine } from "../core/logger.js";
13
- import { setLocale, resolveLocale } from "../i18n/index.js";
14
+ import { setLocale, resolveLocale, t as tr } from "../i18n/index.js";
15
+ import { setOutputFile, isFileOutput, getOutputFile, wroteToFile } from "../ui/formatters/writer.js";
14
16
  import { migrateFromConf } from "../config/migrate.js";
15
17
  import { getConfig } from "../config/store.js";
18
+ import { applyCommandGate, gateReason, isPluginGated, CommandGateError, } from "../config/command-gate.js";
16
19
  import { authCommand } from "../commands/auth.js";
17
20
  import { configCommand } from "../commands/config.js";
18
21
  import { definitionsCommand } from "../commands/definitions/index.js";
@@ -21,6 +24,7 @@ import { definitionBatchesCommand } from "../commands/definition-batches/index.j
21
24
  import { reportBatchesCommand } from "../commands/report-batches/index.js";
22
25
  import { systemsCommand } from "../commands/systems/index.js";
23
26
  import { rawCommand } from "../commands/raw.js";
27
+ import { schemaCommand } from "../commands/schema.js";
24
28
  import { pluginCommand } from "../commands/plugin.js";
25
29
  import { dispatchPlugin, splitInvocation } from "../plugins/dispatch.js";
26
30
  import { VERSION } from "../utils/version.js";
@@ -29,18 +33,27 @@ program
29
33
  .name("i-repo")
30
34
  .description("Modern CLI for ConMas i-Reporter")
31
35
  .version(VERSION, "-v, --version")
32
- .option("-f, --format <format>", "Output format (table|json|csv|ndjson)")
36
+ // .choices() で不正値をパース時に拒否する。検証なしだと formatOutput
37
+ // switch をすり抜けて「何も出力せず exit 0」になり、パイプ下流が
38
+ // 0件成功と誤認する (formatters/index.ts の防御と二段構え)。
39
+ .addOption(new Option("-f, --format <format>", "Output format").choices([...OUTPUT_FORMATS]))
33
40
  .option("-q, --quiet", "IDs only for piping (config: quiet)")
34
41
  .option("-e, --endpoint <url>", "API endpoint URL (overrides config)")
35
42
  .option("-u, --user <user>", "Username (overrides config)")
36
43
  .option("-p, --password <password>", "Password")
37
- .option("--timeout <seconds>", "Request timeout in seconds (e.g. 60)");
44
+ .option("--timeout <seconds>", "Request timeout in seconds (e.g. 60)")
45
+ // 注意: "-o, --output" は複数のサブコマンドがダウンロード先として
46
+ // ローカル定義済み。同名フラグを program に置くと commander が値を
47
+ // 奪ってローカル側が壊れる (実測) ため、衝突しない --save を使う。
48
+ .option("--save <file>", "Write result to file as UTF-8 (avoids Windows shell redirect mojibake)");
38
49
  // Help footer with tips for CLI beginners
39
50
  const tips = [
40
51
  ["Ctrl+C", "Cancel any operation"],
41
52
  ["<command> --help", "Detailed usage for each command"],
42
53
  ["--format json|csv", "Machine-readable output"],
43
54
  ["--quiet", "IDs only, for piping"],
55
+ ["--save <file>", "Save output as UTF-8 file (Windows-safe)"],
56
+ ["schema [type]", "Output data contracts (for scripts/plugins/AI)"],
44
57
  ["plugin list", "Show installed i-repo-* plugins"],
45
58
  ];
46
59
  const pad = Math.max(...tips.map(([k]) => k.length)) + 2;
@@ -52,11 +65,38 @@ program.addHelpText("after", "\n" +
52
65
  .join("\n") +
53
66
  "\n");
54
67
  // Apply global options before subcommands run
55
- program.hook("preAction", (thisCommand) => {
68
+ program.hook("preAction", (thisCommand, actionCommand) => {
69
+ // Gated (delete/disabled) commands stay registered but must not run.
70
+ // Throwing here skips the action; run() prints the guidance message.
71
+ const gated = gateReason(actionCommand);
72
+ if (gated)
73
+ throw new CommandGateError(gated);
56
74
  const opts = thisCommand.opts();
75
+ // config 系コマンドでは config 由来の不正値を検証エラーにしない。
76
+ // さもないと「Fix with: i-repo config set ...」と案内した修復コマンド
77
+ // 自体が preAction で死ぬロックアウトになる (command-gate が config を
78
+ // 無効化対象から除外しているのと同じ理由)。CLI フラグの検証は別 (下記)。
79
+ const isConfigRepairPath = (() => {
80
+ let c = actionCommand;
81
+ while (c.parent && c.parent.parent)
82
+ c = c.parent;
83
+ return c.name() === "config";
84
+ })();
57
85
  // Resolve --format: CLI flag → config defaultFormat → "table"
58
86
  if (!opts.format) {
59
- opts.format = getConfig("defaultFormat") ?? "table";
87
+ const configured = getConfig("defaultFormat") ?? "table";
88
+ // config set 経由は検証済みだが、設定ファイルの手編集で不正値が
89
+ // 入りうる。黙って table に落とすと ndjson を期待するパイプが
90
+ // 壊れるため、明示エラーにする。
91
+ if (!OUTPUT_FORMATS.includes(String(configured))) {
92
+ if (!isConfigRepairPath) {
93
+ throw new ValidationError(`Invalid defaultFormat in config: "${String(configured)}" (expected ${OUTPUT_FORMATS.join("|")}). Fix with: i-repo config set defaultFormat <format>`);
94
+ }
95
+ opts.format = "table"; // 修復経路は安全な既定値で進める
96
+ }
97
+ else {
98
+ opts.format = configured;
99
+ }
60
100
  thisCommand.setOptionValue("format", opts.format);
61
101
  }
62
102
  // Resolve --quiet: CLI flag → config quiet → false
@@ -65,10 +105,46 @@ program.hook("preAction", (thisCommand) => {
65
105
  thisCommand.setOptionValue("quiet", true);
66
106
  }
67
107
  // Resolve --timeout: CLI flag → config timeout → 30
108
+ // --format と同じく不正値を黙って無視しない: `--timeout abc` や `--timeout 0`
109
+ // が無言でデフォルト30秒に落ちると「伸ばしたつもり」のタイムアウト調査が迷宮入りする
68
110
  const rawTimeout = opts.timeout != null ? Number(opts.timeout) : undefined;
69
- const timeout = rawTimeout ?? getConfig("timeout") ?? 30;
70
- if (timeout > 0)
71
- setDefaultTimeout(timeout);
111
+ if (rawTimeout !== undefined && (!Number.isFinite(rawTimeout) || rawTimeout <= 0)) {
112
+ throw new ValidationError(`Invalid --timeout: "${String(opts.timeout)}" (expected a positive number of seconds)`);
113
+ }
114
+ const configuredTimeout = getConfig("timeout");
115
+ let timeout = rawTimeout ?? configuredTimeout ?? 30;
116
+ if (!Number.isFinite(timeout) || timeout <= 0) {
117
+ // config set 経由は検証済みだが手編集で不正値が入りうる
118
+ if (!isConfigRepairPath) {
119
+ throw new ValidationError(`Invalid timeout in config: "${String(configuredTimeout)}" (expected a positive number of seconds). Fix with: i-repo config set timeout <seconds>`);
120
+ }
121
+ timeout = 30; // 修復経路は安全な既定値で進める
122
+ }
123
+ setDefaultTimeout(timeout);
124
+ // --save: シェルのリダイレクトを経由せず UTF-8 でファイルへ書く
125
+ // (Windows の PowerShell 5 は `>` で CP932 再エンコードして文字化けするため)。
126
+ // CSV は Excel が UTF-8 を認識できるよう BOM 付き。ただし quiet は
127
+ // ID パイプ用の生出力なので BOM を付けない。
128
+ if (opts.save) {
129
+ setOutputFile(String(opts.save), {
130
+ bom: opts.format === "csv" && !opts.quiet,
131
+ });
132
+ }
133
+ });
134
+ // 保存メッセージは stderr へ (データ出力と混ざらない)。
135
+ // handleError は throw せず exitCode を立てるため、失敗時にも
136
+ // postAction は到達する — 成功時のみメッセージを出す。
137
+ // ダウンロード系など writer を経由しないコマンドでは「保存しました」と
138
+ // 偽らず、ファイルが空である旨の警告を出す。
139
+ program.hook("postAction", () => {
140
+ if (!isFileOutput() || process.exitCode)
141
+ return;
142
+ if (wroteToFile()) {
143
+ console.error(t.muted(tr("cli.outputSaved", { path: getOutputFile() })));
144
+ }
145
+ else {
146
+ printWarning(tr("cli.saveNoData", { path: getOutputFile() }));
147
+ }
72
148
  });
73
149
  // Register subcommands
74
150
  program.addCommand(authCommand);
@@ -79,6 +155,7 @@ program.addCommand(definitionBatchesCommand);
79
155
  program.addCommand(reportBatchesCommand);
80
156
  program.addCommand(systemsCommand);
81
157
  program.addCommand(rawCommand);
158
+ program.addCommand(schemaCommand);
82
159
  program.addCommand(pluginCommand);
83
160
  // Launch interactive Ink UI when run without arguments
84
161
  program.action(async () => {
@@ -122,7 +199,23 @@ export async function run(argv) {
122
199
  // Set locale from config (auto-detect from environment when unset)
123
200
  setLocale(resolveLocale(getConfig("language")));
124
201
  applyExitOverride(program);
202
+ // Hide delete commands (unless allowDelete) and disabledCommands
203
+ // entries from help; record them so preAction blocks execution.
204
+ applyCommandGate(program);
125
205
  if (isPluginDispatch && sub !== null) {
206
+ // disabledCommands may name a plugin — block before dispatching.
207
+ if (isPluginGated(sub)) {
208
+ console.error(tr("gate.commandDisabled"));
209
+ process.exitCode = 1;
210
+ return;
211
+ }
212
+ // プラグインは stdout を直接所有する (stdio inherit) ため --save は
213
+ // 適用できない。暗黙に無視せず明示エラーにする。
214
+ if (context.save) {
215
+ console.error(tr("cli.saveNotForPlugins", { name: sub }));
216
+ process.exitCode = 1;
217
+ return;
218
+ }
126
219
  const code = await dispatchPlugin(sub, userArgs.slice(subIndex + 1), context);
127
220
  if (code === null) {
128
221
  console.error(`Unknown command: ${sub}`);
@@ -137,6 +230,14 @@ export async function run(argv) {
137
230
  await program.parseAsync(fullArgv);
138
231
  }
139
232
  catch (error) {
233
+ // Guidance, not a failure box: the command is disabled by config.
234
+ if (error instanceof CommandGateError) {
235
+ console.error(tr(error.reason === "delete"
236
+ ? "gate.deleteDisabled"
237
+ : "gate.commandDisabled"));
238
+ process.exitCode = 1;
239
+ return;
240
+ }
140
241
  if (error instanceof CommanderError) {
141
242
  if (error.code === "commander.version")
142
243
  return;
@@ -148,13 +249,17 @@ export async function run(argv) {
148
249
  ` e.g. --regist-from 2024/01/01T00:00:00\n` +
149
250
  ` --regist-from "2024/01/01 00:00:00"`);
150
251
  }
151
- process.exitCode = 1;
252
+ // choices()/argParser の拒否は検証エラー — exit code 契約 (11) に
253
+ // 揃える (アクション内の ValidationError と判別不能にしない)
254
+ process.exitCode =
255
+ error.code === "commander.invalidArgument" ? ExitCode.Validation : 1;
152
256
  return;
153
257
  }
154
258
  const info = extractErrorInfo(error);
155
259
  const logPath = logError(error, info);
156
260
  printError(error, logPath);
157
- process.exitCode = 1;
261
+ // preAction の検証エラー等もここに届く — 種別別 ExitCode を尊重する
262
+ process.exitCode = info.exitCode || 1;
158
263
  }
159
264
  finally {
160
265
  logCommandEnd(Number(process.exitCode ?? 0), Date.now() - startedAt);
@@ -1 +1 @@
1
- {"version":3,"file":"irepo.js","sourceRoot":"","sources":["../../src/bin/irepo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"irepo.js","sourceRoot":"","sources":["../../src/bin/irepo.ts"],"names":[],"mappings":"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"}
@@ -166,6 +166,9 @@ authCommand
166
166
  const hasPassword = !!(process.env.IREPO_PASSWORD || getConfig("password"));
167
167
  if (!endpoint && !user) {
168
168
  printWarning(tr("auth.notConfigured"));
169
+ // 未設定は「確認できた失敗」— exit 0 だと CI の事前チェック
170
+ // (auth status || setup) が機能しない。gh auth status と同じ作法。
171
+ process.exitCode = 1;
169
172
  return;
170
173
  }
171
174
  const endpointSrc = resolveSource("endpoint");
@@ -195,6 +198,9 @@ authCommand
195
198
  if (opts.verify) {
196
199
  if (!endpoint || !user) {
197
200
  printWarning(tr("auth.cannotVerify"));
201
+ // --verify を頼まれて検証できなかったのに exit 0 を返すと、
202
+ // `auth status --verify && deploy` が検証ゼロで先に進む成功偽装になる
203
+ process.exitCode = 1;
198
204
  return;
199
205
  }
200
206
  const { createClient } = await import("../config/client.js");
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/commands/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/commands/auth.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsEpC,eAAO,MAAM,aAAa,SACoB,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoFpC,eAAO,MAAM,aAAa,SACoB,CAAC"}
@@ -5,9 +5,10 @@
5
5
  */
6
6
  import { Command } from "commander";
7
7
  import { getConfigWithSource, setConfig, resetConfig, validKeys, isValidKey, } from "../config/store.js";
8
+ import { parseDisabledCommands, isConfigPath } from "../config/command-gate.js";
8
9
  import { getAllConfigPaths, } from "../config/scoped-store.js";
9
10
  import { setLocale, t as tr } from "../i18n/index.js";
10
- import { printSuccess, printError, printWarning, printDetails, printInfo, t, } from "../ui/index.js";
11
+ import { printSuccess, printError, printWarning, printDetails, printInfo, out, t, } from "../ui/index.js";
11
12
  const validScopes = ["user", "project", "local"];
12
13
  function isValidScope(s) {
13
14
  return validScopes.includes(s);
@@ -29,13 +30,24 @@ function coerceValue(key, raw) {
29
30
  }
30
31
  return n;
31
32
  }
32
- case "quiet": {
33
+ case "quiet":
34
+ case "allowDelete": {
33
35
  if (!["true", "false"].includes(raw)) {
34
36
  printWarning(tr("config.invalidBoolean", { key }));
35
37
  return null;
36
38
  }
37
39
  return raw === "true";
38
40
  }
41
+ case "disabledCommands": {
42
+ // The config command can never be disabled — otherwise the only
43
+ // way back is hand-editing the file (lockout prevention).
44
+ const paths = parseDisabledCommands(raw);
45
+ const kept = paths.filter((p) => !isConfigPath(p));
46
+ if (kept.length < paths.length) {
47
+ printWarning(tr("gate.cannotDisableConfig"));
48
+ }
49
+ return kept.join(", ");
50
+ }
39
51
  case "language": {
40
52
  if (!["en", "ja"].includes(raw)) {
41
53
  printWarning(tr("config.invalidLanguage"));
@@ -104,7 +116,7 @@ configCommand
104
116
  else {
105
117
  const displayValue = key === "password" ? "****" : String(info.value);
106
118
  const source = info.source ? ` ${t.dim(`[${info.source}]`)}` : "";
107
- console.log(` ${t.muted(key)} = ${t.text(displayValue)}${source}`);
119
+ out(` ${t.muted(key)} = ${t.text(displayValue)}${source}`);
108
120
  }
109
121
  }
110
122
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/definition-batches/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,eAAO,MAAM,wBAAwB,SAEY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/definition-batches/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC,eAAO,MAAM,wBAAwB,SAEY,CAAC"}
@@ -8,6 +8,7 @@ import { readFile } from "node:fs/promises";
8
8
  import { basename } from "node:path";
9
9
  import { createClient } from "../../config/client.js";
10
10
  import { handleError } from "../../core/errors.js";
11
+ import { choiceOption, fileTypeXmlCsv, parseDateTime, parseLabelId, parseNumeric, } from "../shared-options.js";
11
12
  import { formatOutput } from "../../ui/formatters/index.js";
12
13
  import { withSpinner, confirmDestructive, printInfo } from "../../ui/index.js";
13
14
  import { t as tr } from "../../i18n/index.js";
@@ -18,7 +19,7 @@ export const definitionBatchesCommand = new Command("definition-batches")
18
19
  definitionBatchesCommand
19
20
  .command("update-select-items <file>")
20
21
  .description("Update select item values from data file")
21
- .requiredOption("-t, --type <type>", "File type (xml/csv)")
22
+ .addOption(fileTypeXmlCsv())
22
23
  .action(async (file, opts, cmd) => {
23
24
  const globalOpts = cmd.optsWithGlobals();
24
25
  try {
@@ -47,21 +48,21 @@ definitionBatchesCommand
47
48
  definitionBatchesCommand
48
49
  .command("delete")
49
50
  .description("Delete definitions matching conditions")
50
- .option("-d, --definition <id>", "Definition ID")
51
- .option("-l, --label-id <id>", "Label ID ('nolabel' for unlabeled)")
52
- .option("--public-status <status>", "Public status (1=test, 2=published)")
51
+ .option("-d, --definition <id>", "Definition ID (numeric)", parseNumeric)
52
+ .option("-l, --label-id <id>", "Label ID ('nolabel' for unlabeled)", parseLabelId)
53
+ .addOption(choiceOption("--public-status <status>", "Public status (1=test, 2=published)", ["1", "2"]))
53
54
  .option("--definition-name <name>", "Definition name (partial match)")
54
55
  .option("--remarks <text>", "Remarks (partial match)")
55
56
  .option("--regist-user <id>", "Registration user ID")
56
- .option("--regist-from <datetime>", "Registration date from (e.g. 2024/01/01T00:00:00)")
57
- .option("--regist-to <datetime>", "Registration date to (e.g. 2024/12/31T23:59:59)")
57
+ .option("--regist-from <datetime>", "Registration date from (e.g. 2024/01/01T00:00:00)", parseDateTime)
58
+ .option("--regist-to <datetime>", "Registration date to (e.g. 2024/12/31T23:59:59)", parseDateTime)
58
59
  .option("--update-user <id>", "Update user ID")
59
- .option("--update-from <datetime>", "Update date from (e.g. 2024/01/01T00:00:00)")
60
- .option("--update-to <datetime>", "Update date to (e.g. 2024/12/31T23:59:59)")
61
- .option("--deleted <flag>", "Target deleted (no/yes)")
62
- .option("--mode <mode>", "Delete mode (logical/physical)")
63
- .option("--transaction-mode <mode>", "Transaction mode (batch/per-definition)")
64
- .option("--execute-count <n>", "Process count (transaction-mode=1)")
60
+ .option("--update-from <datetime>", "Update date from (e.g. 2024/01/01T00:00:00)", parseDateTime)
61
+ .option("--update-to <datetime>", "Update date to (e.g. 2024/12/31T23:59:59)", parseDateTime)
62
+ .addOption(choiceOption("--deleted <flag>", "Target deleted", ["no", "yes", "0", "1"]))
63
+ .addOption(choiceOption("--mode <mode>", "Delete mode", ["logical", "physical", "0", "1"]))
64
+ .addOption(choiceOption("--transaction-mode <mode>", "Transaction mode", ["batch", "per-definition", "0", "1"]))
65
+ .option("--execute-count <n>", "Process count (transaction-mode=1)", parseNumeric)
65
66
  .option("-f, --force", "Skip confirmation prompt")
66
67
  .action(async (opts, cmd) => {
67
68
  const globalOpts = cmd.optsWithGlobals();
@@ -80,11 +81,11 @@ definitionBatchesCommand
80
81
  definitionName: opts.definitionName,
81
82
  remarks: opts.remarks,
82
83
  registUser: opts.registUser,
83
- registTimeFrom: normDate(opts.registFrom),
84
- registTimeTo: normDate(opts.registTo),
84
+ registTimeFrom: opts.registFrom,
85
+ registTimeTo: opts.registTo,
85
86
  updateUser: opts.updateUser,
86
- updateTimeFrom: normDate(opts.updateFrom),
87
- updateTimeTo: normDate(opts.updateTo),
87
+ updateTimeFrom: opts.updateFrom,
88
+ updateTimeTo: opts.updateTo,
88
89
  deleted: resolveMap(opts.deleted, flagMap),
89
90
  mode: resolveMap(opts.mode, modeMap),
90
91
  transactionMode: resolveMap(opts.transactionMode, txModeMap),
@@ -100,14 +101,12 @@ definitionBatchesCommand
100
101
  handleError(error, { format: globalOpts.format });
101
102
  }
102
103
  });
103
- /** Normalize datetime: accept T separator (CLI-friendly) and convert to space (API format) */
104
- function normDate(v) {
105
- return v ? String(v).replace("T", " ") : undefined;
106
- }
107
104
  const modeMap = { logical: "0", physical: "1", "0": "0", "1": "1" };
108
105
  const txModeMap = { batch: "0", "per-definition": "1", "0": "0", "1": "1" };
109
106
  const flagMap = { no: "0", yes: "1", "0": "0", "1": "1" };
107
+ // 値は choices() がパース時に保証する — map に無い値はここに到達しない
108
+ // (以前は未知値を `?? v` でそのままサーバへ素通ししていた)
110
109
  function resolveMap(v, map) {
111
- return v ? (map[v.toLowerCase()] ?? v) : undefined;
110
+ return v ? map[v.toLowerCase()] : undefined;
112
111
  }
113
112
  //# sourceMappingURL=index.js.map