@tocca-systems/twp-cli 0.78.0 → 0.79.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 (75) hide show
  1. package/CHANGELOG.public.md +8 -0
  2. package/README.md +33 -10
  3. package/dist/{agent-loop-6Q5QQC5H.js → agent-loop-ZGHJGHFQ.js} +32 -32
  4. package/dist/{ai-dispatch-U2MEAOHY.js → ai-dispatch-DJ5JT5BE.js} +1 -1
  5. package/dist/analysis-H52FJIFO.js +5 -0
  6. package/dist/{api-command-WM6TWH3Q.js → api-command-Y6J7EAOT.js} +2 -2
  7. package/dist/{app-M6FLPNQT.js → app-YVRIMXZY.js} +4 -4
  8. package/dist/attendance-correct-OLWRCDP4.js +1 -1
  9. package/dist/attendance-lists-TBUZCRKK.js +1 -1
  10. package/dist/{budget-Z4TZDYFC.js → budget-T246BG2P.js} +1 -1
  11. package/dist/{chunk-B3466RC6.js → chunk-22CRY6JR.js} +1 -1
  12. package/dist/{chunk-IBZ5UL4H.js → chunk-4RNL462J.js} +1 -1
  13. package/dist/{chunk-47C3XM23.js → chunk-5YJAT7HE.js} +1 -1
  14. package/dist/chunk-64VHXDB6.js +11 -0
  15. package/dist/{chunk-UAW4FEOU.js → chunk-CZVQS3WP.js} +1 -1
  16. package/dist/{chunk-DDW53EFR.js → chunk-DELIIGWE.js} +1 -1
  17. package/dist/{chunk-QA53SS3M.js → chunk-DJ5OD2HW.js} +11 -11
  18. package/dist/chunk-IVFSEXD3.js +48 -0
  19. package/dist/{chunk-W4E4F2ZA.js → chunk-MLRBDF44.js} +1 -1
  20. package/dist/{chunk-RZVNPLKX.js → chunk-MPX2Q3BJ.js} +1 -1
  21. package/dist/{chunk-2UYVICTQ.js → chunk-NTT2QG3J.js} +1 -1
  22. package/dist/{chunk-OF5JPNLD.js → chunk-QXYY7DUV.js} +1 -1
  23. package/dist/{chunk-6SAHK3OR.js → chunk-RCUI6WWU.js} +1 -1
  24. package/dist/{chunk-T2XHX32P.js → chunk-U5EYLW6X.js} +1 -1
  25. package/dist/{chunk-TFH4FMN2.js → chunk-UZLHJ2RF.js} +1 -1
  26. package/dist/{chunk-DLT7DYWR.js → chunk-V3RZ4RFP.js} +1 -1
  27. package/dist/chunk-VERYHAWV.js +13 -0
  28. package/dist/{chunk-KJH35N3L.js → chunk-VLCR2U77.js} +1 -1
  29. package/dist/{chunk-SDSQXDBB.js → chunk-VYIYENEU.js} +1 -1
  30. package/dist/{chunk-D2OMWITR.js → chunk-X2WD2H3B.js} +1 -1
  31. package/dist/{chunk-RMOBVFPJ.js → chunk-YV65V2F6.js} +1 -1
  32. package/dist/cli.js +56 -23
  33. package/dist/{commands-3XRXO47T.js → commands-UDG7E3X3.js} +11 -11
  34. package/dist/{commands-22YEUKS2.js → commands-ZIRZVBH6.js} +1 -1
  35. package/dist/{company-OSKBPHNA.js → company-2CRWKBJL.js} +2 -2
  36. package/dist/{completion-6E2TSIU5.js → completion-C6ZQCDT2.js} +8 -7
  37. package/dist/{contract-USUYPZGJ.js → contract-73RVPBYM.js} +1 -1
  38. package/dist/{deposit-4KSD4HRJ.js → deposit-3I3NV556.js} +1 -1
  39. package/dist/dispatch-HHWTJ3P4.js +3 -0
  40. package/dist/{estimate-HLPOQAII.js → estimate-NLKTWCYI.js} +2 -2
  41. package/dist/{expense-KCDGJ4Y7.js → expense-O2O4623X.js} +1 -1
  42. package/dist/{holiday-FMELHZIS.js → holiday-WDI4CSNL.js} +1 -1
  43. package/dist/{inquiry-5SSB25FA.js → inquiry-4Q4BRYM3.js} +1 -1
  44. package/dist/{invoice-ME4FODCA.js → invoice-BXSI6SMA.js} +1 -1
  45. package/dist/{knowledge-43PQDFAG.js → knowledge-TCADQEPU.js} +1 -1
  46. package/dist/{leave-3RP6CFUY.js → leave-W4GHXMSE.js} +1 -1
  47. package/dist/{logout-guard-T3IAROLQ.js → logout-guard-57LHDX6L.js} +1 -1
  48. package/dist/{media-4IGTXKOP.js → media-D7BZTPXD.js} +2 -2
  49. package/dist/{plan-submit-7KDB74QH.js → plan-submit-ELEIJM6I.js} +1 -1
  50. package/dist/{project-AIAD2RJL.js → project-HGUUMTEE.js} +1 -1
  51. package/dist/{prospect-OOQMGJ6Q.js → prospect-QY3NYP2A.js} +1 -1
  52. package/dist/{purchase-MOLAGXZ7.js → purchase-7XCGCQ2G.js} +2 -2
  53. package/dist/{receivable-ZO7DA6ZR.js → receivable-GW5WCVJ7.js} +1 -1
  54. package/dist/{registry-UWYM2UPG.js → registry-TFHSCQK3.js} +1 -1
  55. package/dist/{run-SYMKOV3Z.js → run-EO7J3QYK.js} +2 -2
  56. package/dist/{runner-command-N5IRCOQ4.js → runner-command-SRPMAC5S.js} +1 -1
  57. package/dist/{sales-ai-review-QBBRTX3F.js → sales-ai-review-L5VW3DU3.js} +1 -1
  58. package/dist/{sales-master-DKC5TCSG.js → sales-master-BQML5IJT.js} +1 -1
  59. package/dist/{sales-numbering-SJOO6NZP.js → sales-numbering-OW4O6WH6.js} +1 -1
  60. package/dist/{server-settings-CRH7UU45.js → server-settings-OB7JF757.js} +1 -1
  61. package/dist/{setup-VPHP4HDM.js → setup-FMSAHRGZ.js} +1 -1
  62. package/dist/skill-4TSTVUXY.js +1 -1
  63. package/dist/staffing-board-MQREMSVJ.js +110 -0
  64. package/dist/{status-command-CGKICLTJ.js → status-command-C42CVQ3Q.js} +1 -1
  65. package/dist/{supplier-payment-ARH5FZTA.js → supplier-payment-KRLYWEKY.js} +1 -1
  66. package/dist/{support-EDIJC36M.js → support-ITRXFVMK.js} +1 -1
  67. package/dist/{task-PEXVSFM4.js → task-AGNMPS4F.js} +4 -3
  68. package/dist/{user-NI4LZ7Y2.js → user-U4VHKBLE.js} +2 -2
  69. package/dist/{workflow-GJK7QETS.js → workflow-4NC2C4TX.js} +1 -1
  70. package/package.json +1 -1
  71. package/dist/analysis-SZWW5N5I.js +0 -5
  72. package/dist/chunk-G7QVPGEN.js +0 -11
  73. package/dist/chunk-JRZ2Q5UZ.js +0 -52
  74. /package/dist/{chunk-K5VUWKZK.js → chunk-XNYQH5JI.js} +0 -0
  75. /package/dist/{skill-manage-command-QYJLCLDK.js → skill-manage-command-UOWZCF6R.js} +0 -0
@@ -0,0 +1,110 @@
1
+ import { createRequire as __twpCreateRequire } from 'node:module';
2
+ const require = __twpCreateRequire(import.meta.url);
3
+ import{DEPARTMENT_FLAG,FROM_FLAG,MONTH_FLAG,TO_FLAG,USER_FLAG,analysisForbidden,dataOf,levelGuidance,listIn,monthsBetween,noArgs,periodNote,recordOf,resolveFilters,resolvedOrUndefined,responseMonths}from"./chunk-QXYY7DUV.js";import"./chunk-HKEW6XIC.js";import{monthFlag}from"./chunk-EXT4AIDF.js";import"./chunk-CADCERVL.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{isoDate}from"./chunk-JJSBBWJ5.js";import{readBody}from"./chunk-6LSQCOCJ.js";import"./chunk-RSSPNFSK.js";
4
+ import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";import"./chunk-II5RVJQN.js";import{requireResolved,withResolved}from"./chunk-PS5QFKHB.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";
5
+ import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var BOARD_PATH="/api/v2/analysis/staffing-board";var TENTATIVE_PATH=`${BOARD_PATH}/tentative-assignments`;var FORBIDDEN=analysisForbidden(levelGuidance("\u8981\u54E1\u8ABF\u6574\u30DC\u30FC\u30C9","\u4EBA\u4E8B\u7BA1\u7406"));var EDIT_DENIED_GUIDANCE="\u8981\u54E1\u8ABF\u6574\u30DC\u30FC\u30C9\u3092\u7DE8\u96C6\u3059\u308B\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093\uFF08\u95B2\u89A7\u306E\u307F\uFF09\u3002\u5206\u6790\u306E\u7BA1\u7406\u8005\u306B\u300C\u7DE8\u96C6\u53EF\u300D\u3078\u306E\u5909\u66F4\u3092\u4F9D\u983C\u3057\u3066\u304F\u3060\u3055\u3044\u3002";
6
+ var PROJECT_MANAGER_GUIDANCE="\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30E1\u30F3\u30D0\u30FC\u3092\u5909\u66F4\u3059\u308B\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u7BA1\u7406\u8005\u304B\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u304C\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002";function writeForbidden(body){const text=body?.error_description??"";if(body?.error==="permission_denied"&&text.includes("\u7DE8\u96C6"))return EDIT_DENIED_GUIDANCE;
7
+ if(body?.error==="forbidden")return text.includes("\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u7BA1\u7406\u8005")?PROJECT_MANAGER_GUIDANCE:void 0;return FORBIDDEN(body)}var NOTE_ID_RE=/^[A-Za-z0-9._:-]{1,200}$/;function idArg(input,label,usage){const[id,...rest]=input.args;if(id===void 0||id.trim()==="")throw new UsageError(`${label}\u306E ID \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044`,usage);if(rest.length>0)throw new UsageError(`\u53D7\u3051\u53D6\u308C\u308B${label}\u306F1\u3064\u3060\u3051\u3067\u3059: ${rest.
8
+ join(" ")}`,usage);const value=id.trim();if(!NOTE_ID_RE.test(value)||/^\.+$/.test(value)){throw new UsageError(`${label}\u306E ID \u3068\u3057\u3066\u4F7F\u3048\u306A\u3044\u6587\u5B57\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059: ${value}`,usage)}return encodeURIComponent(value)}var MAX_MONTHS=12;var DEFAULT_MONTHS=4;function shiftMonth(ym,n){const[y,m]=ym.split("-").map(Number);const index=y*12+(m-1)+n;return`${String(Math.floor(index/12))}-${String(index%12+1).padStart(2,"0")}`}function defaultBoardRange(now=new Date){
9
+ const current=`${String(now.getFullYear())}-${String(now.getMonth()+1).padStart(2,"0")}`;const from=shiftMonth(current,1);return{from,to:shiftMonth(from,DEFAULT_MONTHS-1),defaulted:true}}function boardRange(input,usage,now){const from=monthFlag(input.flags,FROM_FLAG.name);const to=monthFlag(input.flags,TO_FLAG.name);const month=monthFlag(input.flags,MONTH_FLAG.name);let range;if(month!==void 0){if(from!==void 0||to!==void 0)throw new UsageError("--month \u3068 --from / --to \u306F\u4F75\u7528\u3067\u304D\u307E\u305B\u3093",
10
+ usage);range={from:month,to:month,defaulted:false}}else if(from===void 0&&to===void 0){range=defaultBoardRange(now)}else if(from===void 0||to===void 0){throw new UsageError("--from \u3068 --to \u306F\u4E21\u65B9\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF081\u304B\u6708\u3060\u3051\u306A\u3089 --month\uFF09",usage)}else{range={from,to,defaulted:false}}if(range.from>range.to)throw new UsageError(`--from\uFF08${range.from}\uFF09\u304C --to\uFF08${range.to}\uFF09\u3088\u308A\u5F8C\u306B\u306A\u3063\u3066\u3044\u307E\u3059`,
11
+ usage);if(monthsBetween(range.from,range.to).length>MAX_MONTHS){throw new UsageError(`\u671F\u9593\u306F${String(MAX_MONTHS)}\u304B\u6708\u307E\u3067\u3067\u3059\uFF08${range.from} \u301C ${range.to}\uFF09`,usage)}return range}function boardRangeNotes(range){return range.defaulted?[`\u671F\u9593\u306E\u6307\u5B9A\u304C\u7121\u3044\u306E\u3067\u753B\u9762\u306E\u521D\u671F\u8868\u793A\u3068\u540C\u3058\u7FCC\u6708\u304B\u3089${String(DEFAULT_MONTHS)}\u304B\u6708\uFF08${range.from} \u301C ${range.
12
+ to}\u30FB\u3053\u306E\u7AEF\u672B\u306E\u6642\u8A08\uFF09\u306B\u3057\u307E\u3059\u3002`]:[]}var UNIT_FLAG={name:"--unit",summary:"\u8868\u793A\u5358\u4F4D\uFF08hours\uFF1D\u6642\u9593\u30FB\u65E2\u5B9A / fte\uFF1D\u4EBA\u6708 / percent\uFF1D\u5272\u5408\uFF09\u3002table / text / tsv \u3060\u3051\u306B\u52B9\u304F",takesValue:true,placeholder:"<hours|fte|percent>"};var BY_PROJECT_FLAG={name:"--by-project",summary:"\u30E1\u30F3\u30D0\u30FC\xD7\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u884C\u3067\u51FA\u3059\uFF08\u753B\u9762\u3067\u884C\u3092\u958B\u3044\u305F\u5185\u8A33\uFF09",
13
+ takesValue:false};var INCLUDE_TENTATIVE_FLAG={name:"--include-tentative",summary:"\u4EEE\u30A2\u30B5\u30A4\u30F3\u3092\u5408\u8A08\u306B\u8DB3\u3059\uFF08\u753B\u9762\u306E\u300C\u4EEE\u30A2\u30B5\u30A4\u30F3\u3092\u542B\u3081\u308B\u300D\u5207\u66FF\uFF09",takesValue:false};var SHOW_USAGE="twp staffing-board show [--month <YYYY-MM> | --from <YYYY-MM> --to <YYYY-MM>] [--unit hours|fte|percent] [--by-project] [--include-tentative] [--user <\u30E6\u30FC\u30B6\u30FC>] [--department <\u90E8\u7F72>]";
14
+ function unitOf(input){const raw=input.flags.get(UNIT_FLAG.name)?.trim()??"hours";if(raw!=="hours"&&raw!=="fte"&&raw!=="percent"){throw new UsageError(`--unit \u306F hours / fte / percent \u306E\u3044\u305A\u308C\u304B\u3067\u3059\uFF08\u53D7\u3051\u53D6\u3063\u305F\u5024: ${raw}\uFF09`,SHOW_USAGE)}return raw}function formatBoardValue(hours,standardHours,unit){const standard=typeof standardHours==="number"?standardHours:0;switch(unit){case"fte":return standard>0?(hours/standard).toFixed(2):"-";case"\
15
+ percent":return standard>0?`${(hours/standard*100).toFixed(0)}%`:"-";default:return`${hours.toFixed(1)}h`}}function num(value){return typeof value==="number"&&Number.isFinite(value)?value:0}function monthIndex(entries){const out=new Map;if(!Array.isArray(entries))return out;for(const entry of entries){if(isRecord(entry)&&typeof entry["year_month"]==="string")out.set(entry["year_month"],entry)}return out}var VIEW_KEY="__twp_staffing_board_view";function viewOf(body){const view=recordOf(isRecord(body)?
16
+ body[VIEW_KEY]:void 0);return{unit:view["unit"]??"hours",byProject:view["byProject"]===true,excludedProjectIds:Array.isArray(view["excludedProjectIds"])?view["excludedProjectIds"]:[],tentatives:Array.isArray(view["tentatives"])?view["tentatives"]:null}}function boardMonthHours(user,ym,view){const excluded=new Set(view.excludedProjectIds);const assigned=num(monthIndex(user["by_month"]).get(ym)?.["assigned_hours"]);let excludedHours=0;const projects=Array.isArray(user["projects"])?user["projects"].
17
+ map(recordOf):[];for(const project of projects){const id=project["project_id"];if(project["is_unassigned"]===true||typeof id!=="string"||!excluded.has(id))continue;const cell=monthIndex(project["by_month"]).get(ym);if(cell!==void 0&&cell["is_estimated"]!==true)excludedHours+=num(cell["hours"])}const base=Math.max(0,assigned-excludedHours);if(view.tentatives===null)return base;const tentative=view.tentatives.filter(t=>t["user_id"]===user["user_id"]&&!(typeof t["project_id"]==="string"&&excluded.has(
18
+ t["project_id"]))).reduce((sum,t)=>sum+num(recordOf(t["monthly_hours"])[ym]),0);return base+tentative}function boardRows(body){const view=viewOf(body);const months=responseMonths(body);return listIn(body,"users","\u8981\u54E1\u8ABF\u6574\u30DC\u30FC\u30C9").map(user=>{const byMonth=monthIndex(user["by_month"]);const cells={};let total=0;for(const ym of months){const m=byMonth.get(ym);if(m===void 0){cells[ym]=null;continue}const hours=boardMonthHours(user,ym,view);total+=hours;const estimated=num(
19
+ m["estimated_hours"]);const showEstimated=estimated>0&&(view.unit==="hours"||num(m["standard_hours"])>0);cells[ym]=`${formatBoardValue(hours,m["standard_hours"],view.unit)}${showEstimated?` (+\u63A8\u5B9A ${formatBoardValue(estimated,m["standard_hours"],view.unit)})`:""}`}return{department_name:user["department_name"]??null,user_name:user["user_name"]??null,...cells,total_hours:Math.round(total*10)/10,user_id:user["user_id"]??null}})}function boardProjectRows(body){const view=viewOf(body);const excluded=new Set(
20
+ view.excludedProjectIds);const months=responseMonths(body);const rows=[];for(const user of listIn(body,"users","\u8981\u54E1\u8ABF\u6574\u30DC\u30FC\u30C9")){const standards=monthIndex(user["by_month"]);const projects=Array.isArray(user["projects"])?user["projects"].map(recordOf):[];for(const project of projects){const byMonth=monthIndex(project["by_month"]);const cells={};for(const ym of months){const m=byMonth.get(ym);const hours=num(m?.["hours"]);cells[ym]=m===void 0||hours<=0?null:`${formatBoardValue(
21
+ hours,standards.get(ym)?.["standard_hours"],view.unit)}${m["is_estimated"]===true?" (\u63A8\u5B9A)":""}`}const id=project["project_id"];rows.push({user_name:user["user_name"]??null,project_name:project["project_name"]??null,...cells,excluded:typeof id==="string"&&excluded.has(id),unassigned:project["is_unassigned"]===true,user_id:user["user_id"]??null,project_id:id??null})}}return rows}function shownTentatives(body,tentatives){const users=new Set(listIn(body,"users","\u8981\u54E1\u8ABF\u6574\u30DC\u30FC\u30C9").
22
+ map(u=>u["user_id"]));return tentatives.filter(t=>users.has(t["user_id"])).length}function showPlan(input){noArgs(input,SHOW_USAGE);const range=boardRange(input,SHOW_USAGE);unitOf(input);return{method:"GET",path:BOARD_PATH,query:{start_ym:range.from,end_ym:range.to,user_id:resolvedOrUndefined(input,"userId"),department_id:resolvedOrUndefined(input,"departmentId")}}}var showOperation={name:"show",summary:"\u8981\u54E1\u8ABF\u6574\u30DC\u30FC\u30C9\u306E\u8868\uFF08\u30E1\u30F3\u30D0\u30FC\xD7\u6708\u306E\u30A2\u30B5\u30A4\u30F3\u5DE5\u6570\uFF09\u3092\u8868\u793A\u3059\u308B",
23
+ usage:SHOW_USAGE,description:`\u753B\u9762\u300C\u8981\u54E1\u8ABF\u6574\u30DC\u30FC\u30C9\u300D\u306E\u8868\u3068\u540C\u3058\u5024\u3092\u51FA\u3057\u307E\u3059\uFF08GET /api/v2/analysis/staffing-board \uFF0B \u96C6\u8A08\u5BFE\u8C61\u5916\u306E\u8A2D\u5B9A\uFF09\u3002
24
+ \u671F\u9593\u3092\u7701\u304F\u3068\u753B\u9762\u306E\u521D\u671F\u8868\u793A\u3068\u540C\u3058\u7FCC\u6708\u304B\u3089${String(DEFAULT_MONTHS)}\u304B\u6708\uFF08\u3053\u306E\u7AEF\u672B\u306E\u6642\u8A08\uFF09\u3067\u3059\u3002\u671F\u9593\u306F${String(MAX_MONTHS)}\u304B\u6708\u307E\u3067\u3067\u3059\u3002
25
+ \u5404\u6708\u306F\u300C\u6B63\u5F0F\u30A2\u30B5\u30A4\u30F3\u306E\u5408\u8A08 \u2212 \u96C6\u8A08\u5BFE\u8C61\u5916\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u300D\u3067\u3001--include-tentative \u3067\u4EEE\u30A2\u30B5\u30A4\u30F3\u3092\u8DB3\u3057\u307E\u3059\uFF08\u753B\u9762\u306E\u5207\u66FF\u3068\u540C\u3058\uFF09\u3002
26
+ \u63A8\u5B9A\u6642\u9593\uFF08\u30A2\u30B5\u30A4\u30F3\u671F\u9593\u304C\u672A\u5165\u529B\u3067\u6848\u4EF6\u306E\u65E2\u5B9A\u304B\u3089\u51FA\u3057\u305F\u5024\uFF09\u306F\u5408\u8A08\u306B\u542B\u3081\u305A\u3001(+\u63A8\u5B9A \u2026) \u3068\u6DFB\u3048\u307E\u3059\u3002
27
+ --unit \u3067\u6642\u9593 / \u4EBA\u6708\uFF08FTE\uFF09/ \u5272\u5408\u306B\u63DB\u7B97\u3057\u307E\u3059\uFF08\u5206\u6BCD\u306F\u305D\u306E\u30E1\u30F3\u30D0\u30FC\u30FB\u305D\u306E\u6708\u306E\u6A19\u6E96\u6642\u9593\u3002\u753B\u9762\u3068\u540C\u3058\u5F0F\uFF09\u3002
28
+ --by-project \u3067\u30E1\u30F3\u30D0\u30FC\xD7\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u884C\u306B\u3057\u307E\u3059\u3002
29
+ \u30BB\u30EB\u5DE5\u6570\u306E\u66F4\u65B0\u306F twp staffing-board cell set \u3067\u3059\uFF08\u753B\u9762\u3068\u540C\u30581\u304B\u6708\u5358\u4F4D\u30FB\u30DC\u30FC\u30C9\u306E\u7DE8\u96C6\u53EF\u304C\u8981\u308A\u307E\u3059\uFF09\u3002
30
+ --output json \u306F\u30B5\u30FC\u30D0\u306E\u5FDC\u7B54\u306B excluded_project_ids\uFF08\u3068 --include-tentative \u306A\u3089 tentative_assignments\uFF09\u3092\u8DB3\u3057\u305F\u3082\u306E\u3067\u3001\u63DB\u7B97\u524D\u306E\u5024\u3067\u3059\u3002`,flags:[MONTH_FLAG,FROM_FLAG,TO_FLAG,UNIT_FLAG,BY_PROJECT_FLAG,INCLUDE_TENTATIVE_FLAG,USER_FLAG,DEPARTMENT_FLAG],forbidden:FORBIDDEN,async prepare(input,ctx){noArgs(input,SHOW_USAGE);boardRange(input,SHOW_USAGE);unitOf(input);return resolveFilters(
31
+ input,ctx)},plan:showPlan,plannedNotes:input=>[...boardRangeNotes(boardRange(input,SHOW_USAGE)),`\u3053\u306E\u3042\u3068\u96C6\u8A08\u5BFE\u8C61\u5916\u306E\u8A2D\u5B9A\uFF08GET ${BOARD_PATH}/settings\uFF09${input.flags.has(INCLUDE_TENTATIVE_FLAG.name)?"\u3068\u4EEE\u30A2\u30B5\u30A4\u30F3\uFF08GET \u2026/tentative-assignments\uFF09":""}\u3082\u8AAD\u307F\u307E\u3059\u3002`],async execute(input,ctx){const plan=showPlan(input);const board=await ctx.send(plan);const settings=recordOf(dataOf(await ctx.
32
+ send({method:"GET",path:`${BOARD_PATH}/settings`}),"\u8981\u54E1\u8ABF\u6574\u30DC\u30FC\u30C9\u306E\u8A2D\u5B9A"));const excluded=Array.isArray(settings["excluded_project_ids"])?settings["excluded_project_ids"].filter(v=>typeof v==="string"):[];let tentatives=null;if(input.flags.has(INCLUDE_TENTATIVE_FLAG.name)){tentatives=listIn(await ctx.send({method:"GET",path:TENTATIVE_PATH,query:{start_ym:plan.query?.["start_ym"],end_ym:plan.query?.["end_ym"]}}),"items","\u4EEE\u30A2\u30B5\u30A4\u30F3")}if(!isRecord(
33
+ board))return board;const view={unit:unitOf(input),byProject:input.flags.has(BY_PROJECT_FLAG.name),excludedProjectIds:excluded,tentatives};return{...board,[VIEW_KEY]:view}},summarize:body=>viewOf(body).byProject?boardProjectRows(body):boardRows(body),raw:body=>{listIn(body,"users","\u8981\u54E1\u8ABF\u6574\u30DC\u30FC\u30C9");if(!isRecord(body))return body;const view=viewOf(body);const rest={...body,excluded_project_ids:view.excludedProjectIds};if(view.tentatives!==null)rest["tentative_assignmen\
34
+ ts"]=view.tentatives;delete rest[VIEW_KEY];return rest},notes:body=>{const view=viewOf(body);return[...periodNote(body),...view.excludedProjectIds.length>0?[`\u96C6\u8A08\u5BFE\u8C61\u5916\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 ${String(view.excludedProjectIds.length)} \u4EF6\u3092\u5408\u8A08\u304B\u3089\u9664\u3044\u3066\u3044\u307E\u3059\u3002`]:[],view.tentatives===null?"\u4EEE\u30A2\u30B5\u30A4\u30F3\u306F\u542B\u307F\u307E\u305B\u3093\uFF08--include-tentative \u3067\u8DB3\u3057\u307E\u3059\uFF09\u3002":
35
+ view.byProject?"--by-project \u306E\u884C\u306F\u6B63\u5F0F\u30A2\u30B5\u30A4\u30F3\u3060\u3051\u3067\u3001\u4EEE\u30A2\u30B5\u30A4\u30F3\u306F\u542B\u307F\u307E\u305B\u3093\u3002":`\u8868\u793A\u3057\u305F\u30E1\u30F3\u30D0\u30FC\u306E\u4EEE\u30A2\u30B5\u30A4\u30F3 ${String(shownTentatives(body,view.tentatives))} \u4EF6\u3092\u5408\u8A08\u306B\u542B\u3081\u3066\u3044\u307E\u3059\u3002`]}};var PROBABILITIES=["confirmed","likely","pre","on_hold"];var PROBABILITY_LABELS={confirmed:"\u78BA\u5B9A",likely:"\
36
+ \u307B\u307C\u78BA\u5B9A",pre:"\u30D7\u30EC",on_hold:"\u4FDD\u7559"};var TENTATIVE_USER_FLAG={name:"--user",summary:"\u30E1\u30F3\u30D0\u30FC\uFF08\u6C0F\u540D\u30FB\u30E1\u30FC\u30EB\u30FBID\u30FBme\uFF09",takesValue:true,placeholder:"<\u30E6\u30FC\u30B6\u30FC>"};var TENTATIVE_PROJECT_FLAG={name:"--project",summary:"\u65E2\u5B58\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\uFF08\u30B3\u30FC\u30C9\u30FBID\uFF09",takesValue:true,placeholder:"<\u30B3\u30FC\u30C9|ID>"};var PROJECT_NAME_FLAG={name:"--project\
37
+ -name",summary:"TWP \u672A\u767B\u9332\u306E\u898B\u8FBC\u307F\u6848\u4EF6\u540D\uFF08200\u6587\u5B57\u307E\u3067\uFF09",takesValue:true,placeholder:"<\u6848\u4EF6\u540D>"};var PROBABILITY_FLAG={name:"--probability",summary:"\u78BA\u5EA6\uFF08confirmed\uFF1D\u78BA\u5B9A / likely\uFF1D\u307B\u307C\u78BA\u5B9A / pre\uFF1D\u30D7\u30EC / on_hold\uFF1D\u4FDD\u7559\uFF09",takesValue:true,placeholder:"<\u78BA\u5EA6>"};var HOURS_FLAG={name:"--hours",summary:"\u6708\u306E\u6642\u9593\uFF08YYYY-MM=\u6642\u9593\uFF09\u3002\u7E70\u308A\u8FD4\u3057\u6307\u5B9A\u3067\u304D\u308B\u3002update \u3067\u306F\u6307\u5B9A\u3057\u305F\u6708\u306E\u96C6\u5408\u3067\
38
+ \u7F6E\u304D\u63DB\u308F\u308B",takesValue:true,placeholder:"<YYYY-MM=\u6642\u9593>",repeatable:true};var NO_HOURS_FLAG={name:"--no-hours",summary:"\u6708\u306E\u6642\u9593\u3092\u7A7A\u306B\u3059\u308B\uFF08\u6642\u671F\u672A\u5B9A\u306E\u898B\u8FBC\u307F\uFF09",takesValue:false};var MEMO_FLAG={name:"--memo",summary:"\u30E1\u30E2\uFF082,000\u6587\u5B57\u307E\u3067\uFF09",takesValue:true,placeholder:"<\u6587\u5B57\u5217>"};var ROLE_FLAG={name:"--role",summary:"\u6607\u683C\u6642\u306E\u5F79\u5272\uFF08\u65E2\u5B9A member\u3002\u5024\u306F\u30B5\u30FC\u30D0\u304C\u691C\u67FB\u3059\u308B\uFF09",
39
+ takesValue:true,placeholder:"<\u5F79\u5272>"};var TENTATIVE_LIST_USAGE="twp staffing-board tentative list [--from <YYYY-MM> --to <YYYY-MM>] [--user <\u30E6\u30FC\u30B6\u30FC>]";var TENTATIVE_CREATE_USAGE="twp staffing-board tentative create --user <\u30E6\u30FC\u30B6\u30FC> (--project <\u30B3\u30FC\u30C9> | --project-name <\u6848\u4EF6\u540D>) --probability <\u78BA\u5EA6> (--hours <YYYY-MM=\u6642\u9593> ... | --no-hours) [--memo <\u6587\u5B57\u5217>]";var TENTATIVE_UPDATE_USAGE="twp staffing-boa\
40
+ rd tentative update <ID> [--user <\u30E6\u30FC\u30B6\u30FC>] [--project <\u30B3\u30FC\u30C9>] [--project-name <\u6848\u4EF6\u540D>] [--probability <\u78BA\u5EA6>] [--hours <YYYY-MM=\u6642\u9593> ... | --no-hours] [--memo <\u6587\u5B57\u5217>]";var TENTATIVE_DELETE_USAGE="twp staffing-board tentative delete <ID> --yes";var TENTATIVE_PROMOTE_USAGE="twp staffing-board tentative promote <ID> [--project <\u30B3\u30FC\u30C9>] [--role <\u5F79\u5272>] --yes";function parseMonthlyHours(values,usage){const out={};
41
+ for(const raw of values){const match=/^\s*(\d{4}-(?:0[1-9]|1[0-2]))\s*=\s*([0-9]+(?:\.[0-9]+)?)\s*$/.exec(raw);if(match===null)throw new UsageError(`--hours \u306F YYYY-MM=\u6642\u9593 \u306E\u5F62\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u53D7\u3051\u53D6\u3063\u305F\u5024: ${raw}\uFF09`,usage);const[,ym,hours]=match;if(ym in out)throw new UsageError(`--hours \u306B\u540C\u3058\u6708\uFF08${ym}\uFF09\u304C2\u56DE\u3042\u308A\u307E\u3059`,usage);out[ym]=Number(hours)}return out}
42
+ function probabilityOf(input,usage){const raw=input.flags.get(PROBABILITY_FLAG.name)?.trim();if(raw===void 0)return void 0;if(!PROBABILITIES.includes(raw)){throw new UsageError(`--probability \u306F ${PROBABILITIES.join(" / ")} \u306E\u3044\u305A\u308C\u304B\u3067\u3059\uFF08\u53D7\u3051\u53D6\u3063\u305F\u5024: ${raw}\uFF09`,usage)}return raw}function tentativeBody(input,usage,creating){const body={};const userId=input.resolved?.["userId"];const projectId=input.resolved?.["projectId"];const projectName=input.
43
+ flags.get(PROJECT_NAME_FLAG.name);const probability=probabilityOf(input,usage);const hours=repeatedValues(input,HOURS_FLAG.name);const noHours=input.flags.has(NO_HOURS_FLAG.name);const memo=input.flags.get(MEMO_FLAG.name);if(hours.length>0&&noHours)throw new UsageError("--hours \u3068 --no-hours \u306F\u4F75\u7528\u3067\u304D\u307E\u305B\u3093",usage);if(creating){if(userId===void 0)throw new UsageError("--user \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);if(projectId===void 0&&
44
+ (projectName===void 0||projectName.trim()==="")){throw new UsageError("--project \u304B --project-name \u306E\u3069\u3061\u3089\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage)}if(probability===void 0)throw new UsageError("--probability \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);if(hours.length===0&&!noHours){throw new UsageError("--hours \u30921\u3064\u4EE5\u4E0A\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u6642\u671F\u672A\u5B9A\u306A\u3089 --no-hours\uFF09",
45
+ usage)}}if(userId!==void 0)body["user_id"]=userId;if(projectId!==void 0)body["project_id"]=projectId;if(projectName!==void 0)body["project_name"]=projectName.trim()===""?null:projectName.trim();if(probability!==void 0)body["probability"]=probability;if(hours.length>0)body["monthly_hours"]=parseMonthlyHours(hours,usage);if(noHours)body["monthly_hours"]={};if(memo!==void 0)body["memo"]=memo===""?null:memo;if(!creating&&Object.keys(body).length===0)throw new UsageError("\u5909\u66F4\u3059\u308B\u9805\u76EE\u30921\u3064\u4EE5\u4E0A\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",
46
+ usage);return body}async function resolveTentativeRefs(input,ctx){const resolved={};const user=input.flags.get(TENTATIVE_USER_FLAG.name);const project=input.flags.get(TENTATIVE_PROJECT_FLAG.name);if(user!==void 0)resolved["userId"]=(await ctx.resolver.user(user,TENTATIVE_USER_FLAG.name)).id;if(project!==void 0)resolved["projectId"]=(await ctx.resolver.project(project)).id;return withResolved(input,resolved)}var TENTATIVE_COLUMNS=["user_id","project_name","probability","hours","memo","project_id",
47
+ "id","updated_at"];function tentativeRow(item){const monthly=recordOf(item["monthly_hours"]);const hours=Object.keys(monthly).sort().map(ym=>`${ym}=${String(monthly[ym])}`).join(" ");const probability=typeof item["probability"]==="string"?item["probability"]:null;return pick({...item,probability:probability===null?null:`${PROBABILITY_LABELS[probability]??probability}\uFF08${probability}\uFF09`,hours},TENTATIVE_COLUMNS)}function tentativeOne(body){const data=dataOf(body,"\u4EEE\u30A2\u30B5\u30A4\u30F3");
48
+ if(!isRecord(data))throw new ApiResponseError("\u4EEE\u30A2\u30B5\u30A4\u30F3\u306E\u5FDC\u7B54\u306E data \u304C\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");return data}function tentativeWrite(name){const creating=name==="create";const usage=creating?TENTATIVE_CREATE_USAGE:TENTATIVE_UPDATE_USAGE;return{name,summary:creating?"\u4EEE\u30A2\u30B5\u30A4\u30F3\uFF08\u672A\u767B\u9332\u306E\u898B\u8FBC\u307F\u6848\u4EF6\u3092\u542B\u3080\uFF09\u3092\u767B\u9332\u3059\u308B":
49
+ "\u4EEE\u30A2\u30B5\u30A4\u30F3\u3092\u5909\u66F4\u3059\u308B",usage,description:(creating?"POST /api/v2/analysis/staffing-board/tentative-assignments \u3067\u3059\u3002\u6B63\u30C7\u30FC\u30BF\uFF08ProjectMember\uFF09\u306B\u306F\u5165\u3089\u305A\u3001\u30DC\u30FC\u30C9\u306E\u5225\u8868\u793A\u306B\u3060\u3051\u8F09\u308A\u307E\u3059\u3002\n":"PUT /api/v2/analysis/staffing-board/tentative-assignments/{id} \u3067\u3059\u3002\u6307\u5B9A\u3057\u305F\u9805\u76EE\u3060\u3051\u3092\u9001\u308A\u307E\u3059\u3002\n--hours \u306F\u6708\u306E\u96C6\u5408\u3092\u4E38\u3054\u3068\u7F6E\u304D\u63DB\u3048\u307E\u3059\uFF08\u8DB3\u3059\u306E\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u6B8B\u3057\u305F\u3044\u6708\u3082\u4E26\u3079\u3066\u304F\u3060\u3055\u3044\uFF09\u3002\n")+
50
+ "\u78BA\u5EA6\u306F confirmed\uFF08\u78BA\u5B9A\uFF09/ likely\uFF08\u307B\u307C\u78BA\u5B9A\uFF09/ pre\uFF08\u30D7\u30EC\uFF09/ on_hold\uFF08\u4FDD\u7559\uFF09\u3067\u3059\u3002\u7DE8\u96C6\u53EF\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\u3002",flags:[TENTATIVE_USER_FLAG,TENTATIVE_PROJECT_FLAG,PROJECT_NAME_FLAG,PROBABILITY_FLAG,HOURS_FLAG,NO_HOURS_FLAG,MEMO_FLAG],forbidden:writeForbidden,async prepare(input,ctx){if(creating)noArgs(input,usage);else idArg(input,"\u4EEE\u30A2\u30B5\u30A4\u30F3",
51
+ usage);probabilityOf(input,usage);return resolveTentativeRefs(input,ctx)},plan(input){if(creating){noArgs(input,usage);return{method:"POST",path:TENTATIVE_PATH,body:tentativeBody(input,usage,true)}}return{method:"PUT",path:`${TENTATIVE_PATH}/${idArg(input,"\u4EEE\u30A2\u30B5\u30A4\u30F3",usage)}`,body:tentativeBody(input,usage,false)}},plannedNotes:input=>repeatedValues(input,HOURS_FLAG.name).some(v=>/=\s*0+(\.0+)?\s*$/.test(v))?["0 \u6642\u9593\u306E\u6708\u306F\u30B5\u30FC\u30D0\u304C\u4FDD\u5B58\u3057\u307E\u305B\u3093\uFF08\u305D\u306E\u6708\u306F\u6642\u9593\u306A\u3057\u306B\u306A\u308A\u307E\u3059\uFF09\u3002"]:
52
+ [],summarize:body=>tentativeRow(tentativeOne(body)),raw:body=>tentativeOne(body)}}var tentativeResource={name:"tentative",summary:"\u4EEE\u30A2\u30B5\u30A4\u30F3\uFF08TWP \u672A\u767B\u9332\u306E\u898B\u8FBC\u307F\u6848\u4EF6\u30FB\u78BA\u5EA6\u533A\u5206\uFF09",operations:[{name:"list",summary:"\u4EEE\u30A2\u30B5\u30A4\u30F3\u306E\u4E00\u89A7\u3092\u8868\u793A\u3059\u308B",usage:TENTATIVE_LIST_USAGE,description:"GET /api/v2/analysis/staffing-board/tentative-assignments \u3067\u3059\uFF08\u30C6\u30CA\u30F3\u30C8\u5168\u4EF6\u30FB\u30E1\u30F3\u30D0\u30FC\u9806\uFF09\u3002\n--from \
53
+ / --to \u3092\u4ED8\u3051\u308B\u3068\u3001\u305D\u306E\u671F\u9593\u306B\u6642\u9593\u306E\u3042\u308B\u4EEE\u30A2\u30B5\u30A4\u30F3\u3060\u3051\u306B\u306A\u308A\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u304C\u7D5E\u308A\u307E\u3059\uFF09\u3002\nhours \u5217\u306F YYYY-MM=\u6642\u9593 \u3092\u4E26\u3079\u305F\u3082\u306E\u3067\u3059\u3002",flags:[FROM_FLAG,TO_FLAG,TENTATIVE_USER_FLAG],forbidden:FORBIDDEN,async prepare(input,ctx){noArgs(input,TENTATIVE_LIST_USAGE);tentativeListRange(input);return resolveTentativeRefs(
54
+ input,ctx)},plan(input){noArgs(input,TENTATIVE_LIST_USAGE);const range=tentativeListRange(input);return{method:"GET",path:TENTATIVE_PATH,query:{start_ym:range?.from,end_ym:range?.to,user_id:resolvedOrUndefined(input,"userId")}}},summarize:body=>listIn(body,"items","\u4EEE\u30A2\u30B5\u30A4\u30F3").map(tentativeRow),raw:body=>listIn(body,"items","\u4EEE\u30A2\u30B5\u30A4\u30F3")},tentativeWrite("create"),tentativeWrite("update"),{name:"delete",summary:"\u4EEE\u30A2\u30B5\u30A4\u30F3\u3092\u524A\u9664\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09",
55
+ usage:TENTATIVE_DELETE_USAGE,description:"DELETE /api/v2/analysis/staffing-board/tentative-assignments/{id} \u3067\u3059\u3002\u7DE8\u96C6\u53EF\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\u3002",destructive:true,flags:[],forbidden:writeForbidden,plan:input=>({method:"DELETE",path:`${TENTATIVE_PATH}/${idArg(input,"\u4EEE\u30A2\u30B5\u30A4\u30F3",TENTATIVE_DELETE_USAGE)}`}),summarize:body=>acknowledgement(body,"\u4EEE\u30A2\u30B5\u30A4\u30F3\u306E\u524A\u9664"),raw:body=>acknowledgement(body,
56
+ "\u4EEE\u30A2\u30B5\u30A4\u30F3\u306E\u524A\u9664")},{name:"promote",summary:"\u4EEE\u30A2\u30B5\u30A4\u30F3\u3092\u6B63\u5F0F\u30A2\u30B5\u30A4\u30F3\uFF08\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u30E1\u30F3\u30D0\u30FC\uFF09\u3078\u6607\u683C\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09",usage:TENTATIVE_PROMOTE_USAGE,description:"POST /api/v2/analysis/staffing-board/tentative-assignments/{id}/promote \u3067\u3059\u3002\n\u30E1\u30F3\u30D0\u30FC\u3092\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u8FFD\u52A0\u3057\u3066\u6708\u306E\u6642\u9593\u3092\u30A2\u30B5\u30A4\u30F3\u671F\u9593\u3078\u5199\u3057\u3001\u4EEE\u30A2\u30B5\u30A4\u30F3\u306F\u6D88\u3048\u307E\u3059\uFF08\u5143\u306B\u623B\u3059\u64CD\u4F5C\u306F\u3042\u308A\u307E\u305B\u3093\uFF09\u3002\n--project \u306F\u4EEE\u30A2\u30B5\u30A4\u30F3\u304C\u65E2\u5B58\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u6307\u3057\u3066\u3044\u308C\u3070\u7701\u3051\
57
+ \u307E\u3059\u3002\u7DE8\u96C6\u53EF\u306E\u6A29\u9650\u3068\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u7BA1\u7406\u8005\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\u3002",destructive:true,confirmation:"\u6B63\u5F0F\u30A2\u30B5\u30A4\u30F3\u3078\u66F8\u304D\u8FBC\u307F\u3001\u4EEE\u30A2\u30B5\u30A4\u30F3\u3092\u6D88\u3059\u64CD\u4F5C",flags:[TENTATIVE_PROJECT_FLAG,ROLE_FLAG],forbidden:writeForbidden,async prepare(input,ctx){idArg(input,"\u4EEE\u30A2\u30B5\u30A4\u30F3",TENTATIVE_PROMOTE_USAGE);return resolveTentativeRefs(
58
+ input,ctx)},plan(input){const body={};const projectId=input.resolved?.["projectId"];const role=input.flags.get(ROLE_FLAG.name)?.trim();if(projectId!==void 0)body["project_id"]=projectId;if(role!==void 0&&role!=="")body["role"]=role;return{method:"POST",path:`${TENTATIVE_PATH}/${idArg(input,"\u4EEE\u30A2\u30B5\u30A4\u30F3",TENTATIVE_PROMOTE_USAGE)}/promote`,body}},summarize:body=>acknowledgement(body,"\u4EEE\u30A2\u30B5\u30A4\u30F3\u306E\u6607\u683C"),raw:body=>acknowledgement(body,"\u4EEE\u30A2\u30B5\u30A4\u30F3\u306E\u6607\u683C")}]};
59
+ function tentativeListRange(input){const from=monthFlag(input.flags,FROM_FLAG.name);const to=monthFlag(input.flags,TO_FLAG.name);if(from===void 0&&to===void 0)return void 0;if(from===void 0||to===void 0)throw new UsageError("--from \u3068 --to \u306F\u4E21\u65B9\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",TENTATIVE_LIST_USAGE);if(from>to)throw new UsageError(`--from\uFF08${from}\uFF09\u304C --to\uFF08${to}\uFF09\u3088\u308A\u5F8C\u306B\u306A\u3063\u3066\u3044\u307E\u3059`,TENTATIVE_LIST_USAGE);
60
+ return{from,to}}var NOTE_PATH=`${BOARD_PATH}/notes`;var NOTE_SCOPES=["cell","member","meeting"];var NOTE_MAX_CHARS=5e4;var SCOPE_FLAG={name:"--scope",summary:"\u30E1\u30E2\u306E\u7A2E\u985E\uFF08cell\uFF1D\u30E1\u30F3\u30D0\u30FC\xD7\u6708 / member\uFF1D\u30E1\u30F3\u30D0\u30FC / meeting\uFF1D\u4F1A\u8B70\u65E5\uFF09",takesValue:true,placeholder:"<cell|member|meeting>"};var NOTE_USER_FLAG={name:"--user",summary:"\u30E1\u30F3\u30D0\u30FC\uFF08cell / member \u306E\u3068\u304D\u3002\u6C0F\u540D\u30FB\u30E1\u30FC\u30EB\u30FBID\u30FBme\uFF09",
61
+ takesValue:true,placeholder:"<\u30E6\u30FC\u30B6\u30FC>"};var NOTE_MONTH_FLAG={name:"--month",summary:"\u6708\uFF08cell \u306E\u3068\u304D\u30FBYYYY-MM\uFF09",takesValue:true,placeholder:"<YYYY-MM>"};var MEETING_DATE_FLAG={name:"--meeting-date",summary:"\u4F1A\u8B70\u65E5\uFF08meeting \u306E\u3068\u304D\u30FBYYYY-MM-DD\uFF09",takesValue:true,placeholder:"<YYYY-MM-DD>"};var CONTENT_FLAG={name:"--content",summary:"\u30E1\u30E2\u672C\u6587",takesValue:true,placeholder:"<\u6587\u5B57\u5217>"};var CONTENT_FILE_FLAG={
62
+ name:"--content-file",summary:"\u30E1\u30E2\u672C\u6587\u3092\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u8AAD\u3080\uFF08- \u3067\u6A19\u6E96\u5165\u529B\uFF09",takesValue:true,placeholder:"<\u30D1\u30B9>"};var EXPECTED_FLAG={name:"--expected-updated-at",summary:"\u7DE8\u96C6\u3092\u59CB\u3081\u305F\u6642\u70B9\u306E updated_at\uFF08\u65B0\u898F\u306A\u3089 none\uFF09\u3002\u98DF\u3044\u9055\u3048\u3070\u4E0A\u66F8\u304D\u305B\u305A 409 \u3067\u6B62\u307E\u308B",takesValue:true,placeholder:"<updated_a\
63
+ t|none>"};var NOTE_LIST_USAGE="twp staffing-board note list [--scope cell|member|meeting] [--user <\u30E6\u30FC\u30B6\u30FC>]";var NOTE_SET_USAGE="twp staffing-board note set --scope <cell|member|meeting> [--user <\u30E6\u30FC\u30B6\u30FC>] [--month <YYYY-MM>] [--meeting-date <YYYY-MM-DD>] (--content <\u6587\u5B57\u5217> | --content-file <\u30D1\u30B9>) [--expected-updated-at <\u5024|none>]";var NOTE_DELETE_USAGE="twp staffing-board note delete <ID> --yes";var NOTE_COLUMNS=["scope","user_id","mo\
64
+ nth","meeting_date","content","updated_at","updated_by_name","id"];function noteScope(input,usage,required){const raw=input.flags.get(SCOPE_FLAG.name)?.trim();if(raw===void 0){if(required)throw new UsageError("--scope \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08cell / member / meeting\uFF09",usage);return void 0}if(!NOTE_SCOPES.includes(raw))throw new UsageError(`--scope \u306F cell / member / meeting \u306E\u3044\u305A\u308C\u304B\u3067\u3059\uFF08\u53D7\u3051\u53D6\u3063\u305F\u5024: ${raw}\
65
+ \uFF09`,usage);return raw}function noteTarget(input,usage){const scope=noteScope(input,usage,true);const month=monthFlag(input.flags,NOTE_MONTH_FLAG.name);const meetingDate=isoDate(input,MEETING_DATE_FLAG.name);const needs={cell:["--user","--month"],member:["--user"],meeting:["--meeting-date"]};const given={"--user":input.flags.has(NOTE_USER_FLAG.name),"--month":month!==void 0,"--meeting-date":meetingDate!==void 0};const required=needs[scope]??[];const missing=required.filter(flag=>!given[flag]);
66
+ const extra=Object.keys(given).filter(flag=>given[flag]&&!required.includes(flag));if(missing.length>0)throw new UsageError(`--scope ${scope} \u3067\u306F ${missing.join(" / ")} \u304C\u8981\u308A\u307E\u3059`,usage);if(extra.length>0)throw new UsageError(`--scope ${scope} \u3067\u306F ${extra.join(" / ")} \u306F\u4F7F\u3044\u307E\u305B\u3093\uFF08\u30B5\u30FC\u30D0\u304C\u7121\u8996\u3057\u307E\u3059\uFF09`,usage);const target={scope};if(scope!=="meeting")target["user_id"]=requireResolved(input,
67
+ "userId");if(scope==="cell"&&month!==void 0)target["month"]=month;if(scope==="meeting"&&meetingDate!==void 0)target["meeting_date"]=meetingDate;return target}function noteOne(body){const data=dataOf(body,"\u30E1\u30E2");if(!isRecord(data))throw new ApiResponseError("\u30E1\u30E2\u306E\u5FDC\u7B54\u306E data \u304C\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");return data}function noteList(body){
68
+ const data=dataOf(body,"\u30E1\u30E2");if(!Array.isArray(data))throw new ApiResponseError("\u30E1\u30E2\u306E\u4E00\u89A7\u306E\u5FDC\u7B54\u306E data \u304C\u914D\u5217\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");return data.map(recordOf)}var noteResource={name:"note",summary:"\u30E1\u30E2\uFF08\u30E1\u30F3\u30D0\u30FC\xD7\u6708\u30FB\u30E1\u30F3\u30D0\u30FC\u30FB\u4F1A\u8B70\u65E5\u306E3\u7A2E\u985E\u3002\u66F4\u65B0\u8005\u3068\u65E5\u6642\u3064\u304D\uFF09",
69
+ operations:[{name:"list",summary:"\u30E1\u30E2\u306E\u4E00\u89A7\u3092\u8868\u793A\u3059\u308B",usage:NOTE_LIST_USAGE,description:"GET /api/v2/analysis/staffing-board/notes \u3067\u3059\uFF08\u30C6\u30CA\u30F3\u30C8\u5168\u4EF6\uFF09\u3002--scope / --user \u306F CLI \u304C\u884C\u3092\u7D5E\u308A\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u306B\u7D5E\u308A\u8FBC\u307F\u304C\u3042\u308A\u307E\u305B\u3093\uFF09\u3002\n--output json \u306E\u884C\u306F\u7D5E\u3063\u305F\u5F8C\u306E\u3082\u306E\u3067\u3059\u3002",
70
+ flags:[SCOPE_FLAG,NOTE_USER_FLAG],forbidden:FORBIDDEN,async prepare(input,ctx){noArgs(input,NOTE_LIST_USAGE);noteScope(input,NOTE_LIST_USAGE,false);const user=input.flags.get(NOTE_USER_FLAG.name);return user===void 0?input:withResolved(input,{userId:(await ctx.resolver.user(user,NOTE_USER_FLAG.name)).id})},plan(input){noArgs(input,NOTE_LIST_USAGE);noteScope(input,NOTE_LIST_USAGE,false);return{method:"GET",path:NOTE_PATH}},plannedNotes:input=>input.flags.has(SCOPE_FLAG.name)||input.flags.has(NOTE_USER_FLAG.
71
+ name)?["--scope / --user \u306F\u30B5\u30FC\u30D0\u306B\u7121\u3044\u7D5E\u308A\u8FBC\u307F\u306A\u306E\u3067\u3001\u5168\u4EF6\u3092\u53D7\u3051\u53D6\u3063\u3066\u304B\u3089 CLI \u304C\u7D5E\u308A\u307E\u3059\u3002"]:[],narrow(body,input){const scope=noteScope(input,NOTE_LIST_USAGE,false);const userId=input.resolved?.["userId"];const rows=noteList(body).filter(row=>(scope===void 0||row["scope"]===scope)&&(userId===void 0||row["user_id"]===userId));return isRecord(body)?{...body,data:rows}:body},
72
+ summarize:body=>noteList(body).map(row=>pick(row,NOTE_COLUMNS)),raw:body=>noteList(body),notes:body=>isRecord(body)&&body["can_edit"]===false?["\u3042\u306A\u305F\u306F\u3053\u306E\u30DC\u30FC\u30C9\u3092\u95B2\u89A7\u306E\u307F\u3067\u304D\u307E\u3059\uFF08\u30E1\u30E2\u306E\u66F4\u65B0\u306F\u3067\u304D\u307E\u305B\u3093\uFF09\u3002"]:[]},{name:"set",summary:"\u30E1\u30E2\u3092\u4F5C\u6210\u30FB\u4E0A\u66F8\u304D\u3059\u308B\uFF08\u5BFE\u8C61\u3054\u3068\u306B1\u4EF6\uFF09",usage:NOTE_SET_USAGE,
73
+ description:`PUT /api/v2/analysis/staffing-board/notes \u3067\u3059\u3002\u5BFE\u8C61\uFF08\u7A2E\u985E\uFF0B\u30E1\u30F3\u30D0\u30FC\uFF0F\u6708\uFF0F\u4F1A\u8B70\u65E5\uFF09\u3054\u3068\u306B1\u4EF6\u3067\u3001\u65E2\u306B\u3042\u308C\u3070\u4E0A\u66F8\u304D\u3057\u307E\u3059\u3002
74
+ \u4ED6\u306E\u4EBA\u306E\u4FDD\u5B58\u3092\u9ED9\u3063\u3066\u4E0A\u66F8\u304D\u3057\u305F\u304F\u306A\u3044\u3068\u304D\u306F --expected-updated-at \u306B\u8AAD\u3093\u3060\u6642\u70B9\u306E updated_at\uFF08\u65B0\u898F\u306A\u3089 none\uFF09\u3092\u6E21\u3057\u307E\u3059\u3002
75
+ \u672C\u6587\u306F ${NOTE_MAX_CHARS.toLocaleString("en-US")} \u6587\u5B57\u307E\u3067\u3067\u3059\u3002\u7DE8\u96C6\u53EF\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\u3002`,flags:[SCOPE_FLAG,NOTE_USER_FLAG,NOTE_MONTH_FLAG,MEETING_DATE_FLAG,CONTENT_FLAG,CONTENT_FILE_FLAG,EXPECTED_FLAG],forbidden:writeForbidden,async prepare(input,ctx){noArgs(input,NOTE_SET_USAGE);noteScope(input,NOTE_SET_USAGE,true);const user=input.flags.get(NOTE_USER_FLAG.name);const content=await readBody(input,{flag:CONTENT_FLAG.
76
+ name,fileFlag:CONTENT_FILE_FLAG.name,label:"\u30E1\u30E2\u672C\u6587",maxChars:NOTE_MAX_CHARS,usage:NOTE_SET_USAGE});if(content===void 0||content.trim()==="")throw new UsageError("\u30E1\u30E2\u672C\u6587\uFF08--content \u304B --content-file\uFF09\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",NOTE_SET_USAGE);const resolved={content};if(user!==void 0)resolved["userId"]=(await ctx.resolver.user(user,NOTE_USER_FLAG.name)).id;return withResolved(input,resolved)},plan(input){noArgs(input,NOTE_SET_USAGE);
77
+ const body={...noteTarget(input,NOTE_SET_USAGE),content:requireResolved(input,"content")};const expected=input.flags.get(EXPECTED_FLAG.name)?.trim();if(expected!==void 0)body["expected_updated_at"]=expected==="none"||expected===""?null:expected;return{method:"PUT",path:NOTE_PATH,body}},summarize:body=>pick(noteOne(body),NOTE_COLUMNS),raw:body=>noteOne(body)},{name:"delete",summary:"\u30E1\u30E2\u3092\u524A\u9664\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09",usage:NOTE_DELETE_USAGE,description:"\
78
+ DELETE /api/v2/analysis/staffing-board/notes/{id} \u3067\u3059\u3002ID \u306F note list \u306E id \u5217\uFF08\u4F8B: member:<\u30E6\u30FC\u30B6\u30FCID>\uFF09\u3067\u3059\u3002\u7DE8\u96C6\u53EF\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\u3002",destructive:true,flags:[],forbidden:writeForbidden,plan:input=>({method:"DELETE",path:`${NOTE_PATH}/${idArg(input,"\u30E1\u30E2",NOTE_DELETE_USAGE)}`}),summarize:body=>acknowledgement(body,"\u30E1\u30E2\u306E\u524A\u9664"),raw:body=>acknowledgement(
79
+ body,"\u30E1\u30E2\u306E\u524A\u9664")}]};var SNAPSHOT_PATH=`${BOARD_PATH}/snapshots`;var BASE_FLAG={name:"--base",summary:"\u6BD4\u3079\u308B\u76F8\u624B\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 ID\uFF08\u7121\u3051\u308C\u3070\u76F4\u524D\u306B\u4FDD\u5B58\u3057\u305F\u3082\u306E\uFF09",takesValue:true,placeholder:"<ID>"};var SNAPSHOT_MEETING_FLAG={name:"--meeting-date",summary:"\u4F1A\u8B70\u65E5\uFF08YYYY-MM-DD\uFF09\u3002\u7121\u3051\u308C\u3070\u4ECA\u65E5\uFF08\u30B5\u30FC\u30D0\u304C\u6C7A\u3081\u307E\u3059\uFF09",
80
+ takesValue:true,placeholder:"<YYYY-MM-DD>"};var SNAPSHOT_GET_USAGE="twp staffing-board snapshot get <ID>";var SNAPSHOT_DIFF_USAGE="twp staffing-board snapshot diff <ID> [--base <ID>]";var SNAPSHOT_CREATE_USAGE="twp staffing-board snapshot create [--month <YYYY-MM> | --from <YYYY-MM> --to <YYYY-MM>] [--meeting-date <YYYY-MM-DD>]";var SNAPSHOT_DELETE_USAGE="twp staffing-board snapshot delete <ID> --yes";var SNAPSHOT_COLUMNS=["meeting_date","start_ym","end_ym","member_count","created_at","created_b\
81
+ y_name","id"];function snapshotOne(body,label){const data=dataOf(body,label);if(!isRecord(data))throw new ApiResponseError(`${label}\u306E\u5FDC\u7B54\u306E data \u304C\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`);return data}function snapshotRows(data){const months=Array.isArray(data["year_months"])?data["year_months"].filter(m=>typeof m==="string"):[];const rows=Array.isArray(
82
+ data["rows"])?data["rows"].map(recordOf):[];return rows.map(row=>{const byMonth=monthIndex(row["months"]);const cells={};for(const ym of months){const m=byMonth.get(ym);cells[ym]=m===void 0?null:`${String(m["total_hours"])}h/${m["utilization_rate"]===null?"-":`${String(m["utilization_rate"])}%`}`}return{department_name:row["department_name"]??null,user_name:row["user_name"]??null,...cells,contract_end_ym:row["contract_end_ym"]??null,user_id:row["user_id"]??null}})}function monthsText(months,field){
83
+ if(!Array.isArray(months))return"";return months.map(recordOf).map(m=>`${String(m["year_month"]??"?")}:${m[field]===null||m[field]===void 0?"-":`${String(m[field])}%`}`).join(" ")}function extractionNotes(data){const extraction=recordOf(data["extraction"]);const names=key=>{const list=Array.isArray(extraction[key])?extraction[key].map(recordOf):[];return list.length===0?"\u306A\u3057":list.map(m=>String(m["user_name"]??m["user_id"]??"?")).join("\u3001")};return[`\u4F1A\u8B70\u65E5 ${String(data["\
84
+ meeting_date"]??"-")} / \u671F\u9593 ${String(data["start_ym"]??"-")} \u301C ${String(data["end_ym"]??"-")} / ${String(data["member_count"]??"-")} \u4EBA`,`\u7A7A\u304D: ${names("free")}`,`\u8D85\u904E: ${names("over")}`,`\u5951\u7D04\u7D42\u4E86\u4E88\u5B9A: ${names("contract_ending")}`]}function diffRows(data){const changes=Array.isArray(data["changes"])?data["changes"].map(recordOf):[];return changes.map(row=>({department_name:row["department_name"]??null,user_name:row["user_name"]??null,delta_hours:row["\
85
+ delta_hours"]??null,months:Array.isArray(row["months"])?row["months"].map(recordOf).map(m=>`${String(m["year_month"]??"?")}: ${String(m["before_hours"]??"-")}\u2192${String(m["after_hours"]??"-")}h`).join(" / "):"",user_id:row["user_id"]??null}))}function diffNotes(data){if(data["base"]===null)return["\u6BD4\u3079\u308B\u76F8\u624B\u304C\u3042\u308A\u307E\u305B\u3093\uFF08\u6700\u521D\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3067\u3059\uFF09\u3002"];const base=recordOf(data["base"]);
86
+ const current=recordOf(data["current"]);const summary=recordOf(data["summary"]);const members=key=>{const list=Array.isArray(data[key])?data[key].map(recordOf):[];return list.length===0?"\u306A\u3057":list.map(m=>`${String(m["user_name"]??"?")}${"months"in m?`\uFF08${monthsText(m["months"],"after_utilization_rate")}\uFF09`:""}`).join("\u3001")};return[`\u6BD4\u8F03: ${String(base["meeting_date"]??"-")}\uFF08${String(base["id"]??"-")}\uFF09\u2192 ${String(current["meeting_date"]??"-")}\uFF08${String(
87
+ current["id"]??"-")}\uFF09`,`\u5909\u5316 ${String(summary["changed_count"]??"-")} \u4EBA\uFF08\u5897 ${String(summary["increased_count"]??"-")} / \u6E1B ${String(summary["decreased_count"]??"-")}\uFF09\u30FB\u5408\u8A08 ${String(summary["total_delta_hours"]??"-")}h`,`\u65B0\u305F\u306B\u7A7A\u304D: ${members("newly_free")}`,`\u65B0\u305F\u306B\u8D85\u904E: ${members("newly_over")}`,`\u8FFD\u52A0\u3055\u308C\u305F\u30E1\u30F3\u30D0\u30FC: ${members("added_members")}`,`\u3044\u306A\u304F\u306A\u3063\u305F\u30E1\u30F3\u30D0\u30FC: ${members(
88
+ "removed_members")}`]}var snapshotResource={name:"snapshot",summary:"\u6642\u70B9\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\uFF08\u4F1A\u8B70\u3054\u3068\u306E\u4FDD\u5B58\u30FB\u524D\u56DE\u3068\u306E\u5DEE\u5206\u30FB\u7A7A\u304D\uFF0F\u8D85\u904E\uFF0F\u5951\u7D04\u7D42\u4E86\u4E88\u5B9A\u306E\u62BD\u51FA\uFF09",operations:[{name:"list",summary:"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u4E00\u89A7\u3092\u8868\u793A\u3059\u308B\uFF08\u65B0\u3057\u3044\u9806\uFF09",usage:"tw\
89
+ p staffing-board snapshot list",description:"GET /api/v2/analysis/staffing-board/snapshots \u3067\u3059\uFF08\u65B0\u3057\u3044\u9806\u30FB\u30C6\u30CA\u30F3\u30C8\u5168\u4EF6\uFF09\u3002",flags:[],forbidden:FORBIDDEN,plan(input){noArgs(input,"twp staffing-board snapshot list");return{method:"GET",path:SNAPSHOT_PATH}},summarize:body=>noteListLike(body).map(row=>pick(row,SNAPSHOT_COLUMNS)),raw:body=>noteListLike(body)},{name:"get",summary:"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C81\u4EF6\uFF08\u4FDD\u5B58\u6642\u70B9\u306E\u8868\u3068\u62BD\u51FA\uFF09\u3092\u8868\u793A\u3059\u308B",
90
+ usage:SNAPSHOT_GET_USAGE,description:"GET /api/v2/analysis/staffing-board/snapshots/{id} \u3067\u3059\u3002\u8868\u306E\u5404\u6708\u306F\u300C\u6B63\u5F0F\uFF0B\u4EEE\u306E\u5408\u8A08\u6642\u9593/\u7A3C\u50CD\u7387\u300D\u3067\u3059\u3002\n\u7A7A\u304D\u8981\u54E1\u30FB\u7A3C\u50CD\u7387\u8D85\u904E\u8005\u30FB\u5951\u7D04\u7D42\u4E86\u4E88\u5B9A\u8005\u306E\u62BD\u51FA\u306F stderr \u306B\u51FA\u3057\u307E\u3059\uFF08--output json \u3067\u306F extraction\uFF09\u3002",flags:[],forbidden:FORBIDDEN,
91
+ plan:input=>({method:"GET",path:`${SNAPSHOT_PATH}/${idArg(input,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8",SNAPSHOT_GET_USAGE)}`}),summarize:body=>snapshotRows(snapshotOne(body,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8")),raw:body=>snapshotOne(body,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8"),notes:body=>extractionNotes(snapshotOne(body,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8"))},{name:"diff",summary:"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u9593\u306E\u5DEE\u5206\uFF08\u524D\u56DE\u304B\u3089\u5909\u308F\u3063\u305F\u30E1\u30F3\u30D0\u30FC\uFF09\u3092\u8868\u793A\u3059\u308B",
92
+ usage:SNAPSHOT_DIFF_USAGE,description:"GET /api/v2/analysis/staffing-board/snapshots/{id}/diff \u3067\u3059\u3002--base \u304C\u7121\u3051\u308C\u3070 {id} \u306E\u76F4\u524D\u306B\u4FDD\u5B58\u3057\u305F\u3082\u306E\u3068\u6BD4\u3079\u307E\u3059\u3002\n\u6BD4\u3079\u308B\u306E\u306F\u4E21\u65B9\u306B\u542B\u307E\u308C\u308B\u6708\u3060\u3051\u3067\u3059\u3002\u5897\u6E1B\u306F\u300C\u4ECA\u56DE\u2212\u524D\u56DE\u300D\u306E\u5408\u8A08\u6642\u9593\uFF08\u6B63\u5F0F\uFF0B\u4EEE\uFF09\u3067\u3059\u3002\n\u65B0\u305F\u306B\u7A7A\u304D\uFF0F\u8D85\u904E\u306B\u306A\u3063\u305F\u30E1\u30F3\u30D0\u30FC\u30FB\u8FFD\u52A0\uFF0F\u9664\u5916\u3055\u308C\u305F\u30E1\u30F3\u30D0\u30FC\u306F stderr \u306B\u51FA\u3057\u307E\u3059\uFF08--output json \u3067\u306F\u305D\u308C\u305E\u308C\u306E\u914D\u5217\uFF09\u3002",
93
+ flags:[BASE_FLAG],forbidden:FORBIDDEN,plan(input){const id=idArg(input,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8",SNAPSHOT_DIFF_USAGE);const base=input.flags.get(BASE_FLAG.name);return{method:"GET",path:`${SNAPSHOT_PATH}/${id}/diff`,query:{base_id:base===void 0?void 0:decodeURIComponent(idArg({...input,args:[base]},"\u6BD4\u3079\u308B\u76F8\u624B\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8",SNAPSHOT_DIFF_USAGE))}}},summarize:body=>diffRows(snapshotOne(body,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u5DEE\u5206")),
94
+ raw:body=>snapshotOne(body,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u5DEE\u5206"),notes:body=>diffNotes(snapshotOne(body,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u5DEE\u5206"))},{name:"create",summary:"\u3044\u307E\u306E\u30DC\u30FC\u30C9\u3092\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3068\u3057\u3066\u4FDD\u5B58\u3059\u308B",usage:SNAPSHOT_CREATE_USAGE,description:`POST /api/v2/analysis/staffing-board/snapshots \u3067\u3059\u3002\u6B63\u5F0F\u30A2\u30B5\u30A4\u30F3\u30FB\u4EEE\u30A2\u30B5\u30A4\u30F3\u30FB\u96C6\u8A08\u5BFE\u8C61\u5916\u306E\u8A2D\u5B9A\u30FB\u30E1\u30E2\u3092\u51CD\u7D50\u3057\u3066\u4FDD\u5B58\u3057\u307E\u3059\u3002
95
+ \u671F\u9593\u3092\u7701\u304F\u3068\u753B\u9762\u306E\u521D\u671F\u8868\u793A\u3068\u540C\u3058\u7FCC\u6708\u304B\u3089${String(DEFAULT_MONTHS)}\u304B\u6708\uFF08\u3053\u306E\u7AEF\u672B\u306E\u6642\u8A08\uFF09\u3067\u3059\u3002\u4F1A\u8B70\u65E5\u3092\u7701\u304F\u3068\u4ECA\u65E5\uFF08\u30B5\u30FC\u30D0\uFF09\u3067\u3059\u3002\u7DE8\u96C6\u53EF\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\u3002`,flags:[MONTH_FLAG,FROM_FLAG,TO_FLAG,SNAPSHOT_MEETING_FLAG],forbidden:writeForbidden,plan(input){
96
+ noArgs(input,SNAPSHOT_CREATE_USAGE);const range=boardRange(input,SNAPSHOT_CREATE_USAGE);const meetingDate=isoDate(input,SNAPSHOT_MEETING_FLAG.name);return{method:"POST",path:SNAPSHOT_PATH,body:{start_ym:range.from,end_ym:range.to,...meetingDate===void 0?{}:{meeting_date:meetingDate}}}},plannedNotes:input=>boardRangeNotes(boardRange(input,SNAPSHOT_CREATE_USAGE)),summarize:body=>pick(snapshotOne(body,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8"),SNAPSHOT_COLUMNS),raw:body=>snapshotOne(body,"\
97
+ \u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8"),notes:body=>extractionNotes(snapshotOne(body,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8"))},{name:"delete",summary:"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u524A\u9664\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09",usage:SNAPSHOT_DELETE_USAGE,description:"DELETE /api/v2/analysis/staffing-board/snapshots/{id} \u3067\u3059\u3002\u7DE8\u96C6\u53EF\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\u3002",destructive:true,flags:[],
98
+ forbidden:writeForbidden,plan:input=>({method:"DELETE",path:`${SNAPSHOT_PATH}/${idArg(input,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8",SNAPSHOT_DELETE_USAGE)}`}),summarize:body=>acknowledgement(body,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u524A\u9664"),raw:body=>acknowledgement(body,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u524A\u9664")}]};function noteListLike(body){const data=dataOf(body,"\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u4E00\u89A7");
99
+ if(!Array.isArray(data))throw new ApiResponseError("\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u4E00\u89A7\u306E\u5FDC\u7B54\u306E data \u304C\u914D\u5217\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");return data.map(recordOf)}var CELL_PATH=`${BOARD_PATH}/cells`;var CELL_PROJECT_FLAG={name:"--project",summary:"\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\uFF08\u30B3\u30FC\u30C9\u30FBID\uFF09",takesValue:true,placeholder:"\
100
+ <\u30B3\u30FC\u30C9|ID>"};var CELL_USER_FLAG={name:"--user",summary:"\u30E1\u30F3\u30D0\u30FC\uFF08\u6C0F\u540D\u30FB\u30E1\u30FC\u30EB\u30FBID\u30FBme\uFF09",takesValue:true,placeholder:"<\u30E6\u30FC\u30B6\u30FC>"};var CELL_MONTH_FLAG={name:"--month",summary:"\u6708\uFF08YYYY-MM\uFF09",takesValue:true,placeholder:"<YYYY-MM>"};var CELL_HOURS_FLAG={name:"--hours",summary:"\u305D\u306E\u6708\u306E\u6642\u9593\uFF080\u301C744\u30020 \u3067\u305D\u306E\u6708\u306E\u30A2\u30B5\u30A4\u30F3\u3092\u5916\u3059\uFF09",
101
+ takesValue:true,placeholder:"<\u6642\u9593>"};var CELL_SET_USAGE="twp staffing-board cell set --project <\u30B3\u30FC\u30C9> --user <\u30E6\u30FC\u30B6\u30FC> --month <YYYY-MM> --hours <\u6642\u9593>";var CELL_HISTORY_USAGE="twp staffing-board cell history --project <\u30B3\u30FC\u30C9> --user <\u30E6\u30FC\u30B6\u30FC> [--limit <\u4EF6\u6570>]";async function resolveCellRefs(input,ctx,usage){noArgs(input,usage);const project=input.flags.get(CELL_PROJECT_FLAG.name);const user=input.flags.get(CELL_USER_FLAG.
102
+ name);if(project===void 0||project.trim()==="")throw new UsageError("--project \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);if(user===void 0||user.trim()==="")throw new UsageError("--user \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);return withResolved(input,{projectId:(await ctx.resolver.project(project)).id,userId:(await ctx.resolver.user(user,CELL_USER_FLAG.name)).id})}function cellHours(input,usage){const raw=input.flags.get(CELL_HOURS_FLAG.name)?.trim();if(raw===
103
+ void 0||raw==="")throw new UsageError("--hours \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);if(!/^\d+(\.\d+)?$/.test(raw)||Number(raw)>744)throw new UsageError(`--hours \u306F 0\u301C744 \u306E\u6570\u5024\u3067\u3059\uFF08\u53D7\u3051\u53D6\u3063\u305F\u5024: ${raw}\uFF09`,usage);return Number(raw)}var cellResource={name:"cell",summary:"\u30BB\u30EB\u5DE5\u6570\uFF08\u30E1\u30F3\u30D0\u30FC\xD7\u6848\u4EF6\xD7\u6708\u306E\u6B63\u5F0F\u30A2\u30B5\u30A4\u30F3\u6642\u9593\uFF09\u306E\u66F4\u65B0\u3068\u4FEE\u6B63\u5C65\u6B74",
104
+ operations:[{name:"set",summary:"\u30E1\u30F3\u30D0\u30FC\xD7\u6848\u4EF6\xD7\u6708\u306E\u5DE5\u6570\u3092\u8A2D\u5B9A\u3059\u308B\uFF08\u753B\u9762\u306E\u30BB\u30EB\u7DE8\u96C6\u3068\u540C\u3058\uFF09",usage:CELL_SET_USAGE,description:"PUT /api/v2/analysis/staffing-board/cells \u3067\u3059\u3002\u6B63\u30C7\u30FC\u30BF\uFF08\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u30E1\u30F3\u30D0\u30FC\u306E\u30A2\u30B5\u30A4\u30F3\u671F\u9593\uFF09\u306E\u305D\u306E\u6708\u3060\u3051\u3092\u66F8\u304D\u63DB\u3048\u307E\u3059\u3002\n\u6642\u9593\u306F\u30DC\u30FC\u30C9\u306B\u8868\u793A\u3055\u308C\u308B\u57FA\u6E96\uFF08\u795D\u65E5\u30FB\u6709\u7D66\u3092\u9664\u3044\u305F\u55B6\u696D\u65E5\u3076\u3093\uFF09\u3067\u3001\u4FDD\u5B58\u3059\u308B\u6708\u6B21\u6642\u9593\u306F\u30B5\u30FC\u30D0\u304C\u9006\u7B97\u3057\u307E\u3059\u30020 \u3067\u305D\u306E\u6708\u306E\u30A2\u30B5\u30A4\u30F3\u3092\u5916\u3057\u307E\u3059\u3002\n\u4EBA\u6708\u30FB\u5272\u5408\u3067\u8003\u3048\u308B\u3068\u304D\u306F twp staffing-board show --unit \u3067\u6A19\u6E96\u6642\u9593\u3092\u898B\u3066\u6642\u9593\u306B\u76F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002\n\u30DC\u30FC\u30C9\u306E\u300C\u7DE8\u96C6\u53EF\u300D\u3068\u3001\u305D\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u7BA1\u7406\u8005\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\u3002\u671F\u9593\u3092\u307E\u3068\u3081\u3066\u5909\u3048\u308B\u306A\u3089 \
105
+ twp project member update --period-file \u3067\u3059\u3002",flags:[CELL_PROJECT_FLAG,CELL_USER_FLAG,CELL_MONTH_FLAG,CELL_HOURS_FLAG],forbidden:writeForbidden,async prepare(input,ctx){cellHours(input,CELL_SET_USAGE);if(monthFlag(input.flags,CELL_MONTH_FLAG.name)===void 0)throw new UsageError("--month \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",CELL_SET_USAGE);return resolveCellRefs(input,ctx,CELL_SET_USAGE)},plan(input){const month=monthFlag(input.flags,CELL_MONTH_FLAG.name);if(month===
106
+ void 0)throw new UsageError("--month \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",CELL_SET_USAGE);return{method:"PUT",path:CELL_PATH,body:{project_id:requireResolved(input,"projectId"),user_id:requireResolved(input,"userId"),year_month:month,hours:cellHours(input,CELL_SET_USAGE)}}},summarize:body=>acknowledgement(body,"\u30BB\u30EB\u5DE5\u6570\u306E\u66F4\u65B0"),raw:body=>acknowledgement(body,"\u30BB\u30EB\u5DE5\u6570\u306E\u66F4\u65B0")},{name:"history",summary:"\u30E1\u30F3\u30D0\u30FC\xD7\u6848\u4EF6\u306E\u5DE5\u6570\u306E\u4FEE\u6B63\u5C65\u6B74\u3092\u8868\u793A\u3059\u308B\
107
+ \uFF08\u65B0\u3057\u3044\u9806\uFF09",usage:CELL_HISTORY_USAGE,description:"GET /api/v2/analysis/staffing-board/cells/history \u3067\u3059\uFF08\u753B\u9762\u306E\u30BB\u30EB\u306E\u4FEE\u6B63\u5C65\u6B74\u3068\u540C\u3058\uFF09\u3002\n\n"+LIST_PAGING_HELP,flags:[CELL_PROJECT_FLAG,CELL_USER_FLAG,...LIST_FLAGS],paging:envelopePaging({label:"\u30BB\u30EB\u5DE5\u6570\u306E\u4FEE\u6B63\u5C65\u6B74"}),forbidden:FORBIDDEN,prepare:(input,ctx)=>resolveCellRefs(input,ctx,CELL_HISTORY_USAGE),plan:input=>({
108
+ method:"GET",path:`${CELL_PATH}/history`,query:{project_id:requireResolved(input,"projectId"),user_id:requireResolved(input,"userId"),limit:positiveInteger(input.flags,"--limit"),cursor:nonEmpty(input.flags,"--cursor")}}),summarize:body=>listIn(body,"items","\u30BB\u30EB\u5DE5\u6570\u306E\u4FEE\u6B63\u5C65\u6B74").map(row=>({created_at:row["created_at"]??null,created_by_name:row["created_by_name"]??null,action:row["action"]??null,comment:row["comment"]??null,changes:Array.isArray(row["changes"])?
109
+ JSON.stringify(row["changes"]):null,id:row["id"]??null})),raw:body=>listIn(body,"items","\u30BB\u30EB\u5DE5\u6570\u306E\u4FEE\u6B63\u5C65\u6B74")}]};var staffingBoardDomain={name:"staffing-board",summary:"\u8981\u54E1\u8ABF\u6574\u30DC\u30FC\u30C9\uFF08\u30E1\u30F3\u30D0\u30FC\xD7\u6708\u306E\u5DE5\u6570\u8868\u30FB\u30BB\u30EB\u5DE5\u6570\u30FB\u4EEE\u30A2\u30B5\u30A4\u30F3\u30FB\u30E1\u30E2\u30FB\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\uFF09",operations:[showOperation],subresources:[cellResource,
110
+ tentativeResource,noteResource,snapshotResource]};export{boardMonthHours,boardProjectRows,boardRange,boardRows,cellHours,defaultBoardRange,diffRows,formatBoardValue,noteTarget,parseMonthlyHours,snapshotRows,staffingBoardDomain,tentativeBody,tentativeRow};
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{hasRemovableRunner,removeHint}from"./chunk-K5VUWKZK.js";import"./chunk-MYBIPHZ7.js";import"./chunk-A4LFG7MW.js";import"./chunk-VRBI2NPI.js";import{describeError,filterByStatus,pick}from"./chunk-O52RKZCC.js";import"./chunk-RMFLTSOV.js";import{EXIT_OK,EXIT_USAGE,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";function str(v){return typeof v==="string"&&v!==""?v:null}function num(v){return typeof v==="number"&&Number.isFinite(v)?v:null}function secondsSince(iso,now){if(iso===null)return null;const at=Date.parse(iso);if(Number.isNaN(at))return null;return Math.max(0,Math.floor((now.getTime()-at)/1e3))}async function collectStatus(api,ctx){const now=ctx.now??new Date;const runnersRes=await api.runners();let runners;if(!runnersRes.ok){runners={ok:false,error:describeError(runnersRes)}}else{const raw=pick(
3
+ import{hasRemovableRunner,removeHint}from"./chunk-XNYQH5JI.js";import"./chunk-MYBIPHZ7.js";import"./chunk-A4LFG7MW.js";import"./chunk-VRBI2NPI.js";import{describeError,filterByStatus,pick}from"./chunk-O52RKZCC.js";import"./chunk-RMFLTSOV.js";import{EXIT_OK,EXIT_USAGE,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";function str(v){return typeof v==="string"&&v!==""?v:null}function num(v){return typeof v==="number"&&Number.isFinite(v)?v:null}function secondsSince(iso,now){if(iso===null)return null;const at=Date.parse(iso);if(Number.isNaN(at))return null;return Math.max(0,Math.floor((now.getTime()-at)/1e3))}async function collectStatus(api,ctx){const now=ctx.now??new Date;const runnersRes=await api.runners();let runners;if(!runnersRes.ok){runners={ok:false,error:describeError(runnersRes)}}else{const raw=pick(
4
4
  runnersRes.json,"runners");const list=Array.isArray(raw)?raw:[];runners={ok:true,live_count:num(pick(runnersRes.json,"live_count")),max_runners:num(pick(runnersRes.json,"max_runners")),heartbeat_timeout:num(pick(runnersRes.json,"heartbeat_timeout")),items:list.map(r=>{const lastSeen=str(r?.["last_seen_at"]);return{runner_id:str(r?.["runner_id"]),is_live:r?.["is_live"]===true,is_reporting:r?.["is_reporting"]===true,kind:str(r?.["kind"]),phase:str(r?.["phase"]),current_item_id:str(r?.["current_ite\
5
5
  m_id"]),hostname:str(r?.["hostname"]),last_seen_at:lastSeen,seconds_since_last_seen:secondsSince(lastSeen,now)}})}}const queue={};for(const status of["pending","processing"]){const res=await api.list({status,limit:100});if(!res.ok){queue[status]={ok:false,error:describeError(res)};continue}const items=pick(res.json,"items");const more=pick(res.json,"has_more")===true||pick(res.json,"pagination.has_more")===true;const counted=Array.isArray(items)?filterByStatus(items,status).length:null;queue[status]=
6
6
  {ok:true,count:counted,has_more:more}}const state=await api.request("GET","/state");const plan_lock=state.ok?{held:pick(state.json,"state.planning")===true,owner_runner_id:str(pick(state.json,"state.plan_owner_runner_id")),expires_at:str(pick(state.json,"state.plan_lock_expires_at"))}:null;return{project:{ref:ctx.projectRef,id:ctx.projectId},api_url:ctx.apiUrl,runners,queue,plan_lock,local_lock:{held:ctx.lockHeld,path:ctx.lockPath}}}function formatElapsed(seconds){if(seconds<60)return`${seconds}\
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{yearMonthValue}from"./chunk-RZVNPLKX.js";import{excerpt,salesAdminForbidden,sendAtomic}from"./chunk-T2XHX32P.js";import{readCsvFileText}from"./chunk-QLENN5DD.js";import"./chunk-IBZ5UL4H.js";import{booleanText,boundedText,isoDate}from"./chunk-JJSBBWJ5.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{readBody}from"./chunk-6LSQCOCJ.js";import{SALES_SUPPLIER_PAYMENTS_PATH,SALES_SUPPLIER_PAYMENT_SCHEDULES_PATH,isExactNumericId,resolveNamed}from"./chunk-RSSPNFSK.js";
3
+ import{yearMonthValue}from"./chunk-MPX2Q3BJ.js";import{excerpt,salesAdminForbidden,sendAtomic}from"./chunk-U5EYLW6X.js";import{readCsvFileText}from"./chunk-QLENN5DD.js";import"./chunk-4RNL462J.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{booleanText,boundedText,isoDate}from"./chunk-JJSBBWJ5.js";import{readBody}from"./chunk-6LSQCOCJ.js";import{SALES_SUPPLIER_PAYMENTS_PATH,SALES_SUPPLIER_PAYMENT_SCHEDULES_PATH,isExactNumericId,resolveNamed}from"./chunk-RSSPNFSK.js";
4
4
  import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import{LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,PAGE_NUMBER_PAGING_HELP,STABLE_PAGE_ORDER,nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes}from"./chunk-MI6HVYR2.js";import"./chunk-II5RVJQN.js";import{requireResolved,withResolved}from"./chunk-PS5QFKHB.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";
5
5
  import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var PATH=SALES_SUPPLIER_PAYMENTS_PATH;var SCHEDULE_PATH=SALES_SUPPLIER_PAYMENT_SCHEDULES_PATH;var FORBIDDEN=salesAdminForbidden("\u652F\u6255");var SCHEDULE_FORBIDDEN=salesAdminForbidden("\u652F\u6255\u5148\u30DE\u30B9\u30BF");var STATUSES={invoice_pending:"\u8ACB\u6C42\u66F8\u672A\u7740",invoice_received:"\u8ACB\u6C42\u66F8\u53D7\u9818",transfer_reserved:"\u632F\u8FBC\u4E88\u7D04\u6E08",paid:"\u652F\u6255\u6E08"};var TAX_RATES=["10","8","0"];var BULK_MAX_IDS=100;var FILE_MAX_BYTES=1024*1024;var SUPPLIER_NAME_MAX_CHARS=255;
6
6
  var MEMO_MAX_CHARS=1e3;var AMOUNT_MAX=999999999999999;var LIST_COLUMNS=["id","target_year_month","supplier_name","supplier_user_name","payment_amount","transfer_due_date","status"];var GET_COLUMNS=[...LIST_COLUMNS,"company_name","outsourcing_flg","invoice_date","tax_rate","amount_excluding_tax","amount_excluding_tax_manual","transfer_executed_date","project_name","supplier_payment_schedule_id","memo"];var WRITE_COLUMNS=GET_COLUMNS.filter(c=>c!=="project_name"&&c!=="supplier_user_name");var SCHEDULE_LIST_COLUMNS=[
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{contentTypeFor,inspectLocalFile,issued}from"./chunk-WTYIFLVB.js";import{checkUploadQuota}from"./chunk-V64CGX7V.js";import"./chunk-RMFLTSOV.js";import{boundedText}from"./chunk-JJSBBWJ5.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{readBody}from"./chunk-6LSQCOCJ.js";import{SUPPORTS_PATH,SUPPORT_CATEGORIES_PATH}from"./chunk-RSSPNFSK.js";import{UUID_RE,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";
3
+ import{contentTypeFor,inspectLocalFile,issued}from"./chunk-WTYIFLVB.js";import{checkUploadQuota}from"./chunk-V64CGX7V.js";import"./chunk-RMFLTSOV.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{boundedText}from"./chunk-JJSBBWJ5.js";import{readBody}from"./chunk-6LSQCOCJ.js";import{SUPPORTS_PATH,SUPPORT_CATEGORIES_PATH}from"./chunk-RSSPNFSK.js";import{UUID_RE,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";
4
4
  import"./chunk-II5RVJQN.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";import fs from"fs";import path from"path";var LABEL="\u30B5\u30DD\u30FC\u30C8\u4F9D\u983C";var MAX_ATTACHMENTS=3;var TITLE_MAX=255;var CONTENT_MAX=1e4;var COMMENT_MAX=5e3;var SOURCE="support_request";var STATUSES=["new","in_progress","waiting","re_inquiry","awaiting_requester","closed","withdrawn"];var LIST_COLUMNS=["id","title","category_name","status","awaiting_type","requester_name","created_at","updated_at"];var GET_COLUMNS=["id","title","category_name","status","awaiting_type","requester_name","created_at","updated_at","comment_cou\
5
5
  nt","last_comment_by","last_comment_at"];var WRITE_COLUMNS=["id","title","category_name","status","attachment_file_ids","updated_at"];var COMMENT_COLUMNS=["id","user_name","is_master_tenant","comment","attachment_file_ids","created_at"];var CATEGORY_COLUMNS=["id","name","description","sort"];var STATUS_HELP="\u72B6\u614B: new\uFF08\u672A\u5BFE\u5FDC\uFF09/ in_progress\uFF08\u5BFE\u5FDC\u4E2D\uFF09/ waiting\uFF08\u56DE\u7B54\u6E08\u307F\u30FB\u78BA\u8A8D\u5F85\u3061\uFF09/ re_inquiry\uFF08\u518D\u554F\u3044\u5408\u308F\u305B\uFF09/ awaiting_requester\uFF08\u3054\u56DE\u7B54\u30FB\u3054\u78BA\u8A8D\u5F85\u3061\u3002awaiting_type \u304C\u6C42\u3081\u3066\u3044\u308B\u5185\u5BB9: answer\uFF1D\u56DE\u7B54 / approval\uFF1D\u627F\u8A8D / confirmation\uFF1D\u753B\u9762\u3067\u306E\u78BA\u8A8D\uFF09/ closed\uFF08\u5B8C\u4E86\uFF09/ withd\
6
6
  rawn\uFF08\u53D6\u308A\u4E0B\u3052\uFF09\u3002";var NOT_FOUND_HELP="\u4ED6\u306E\u4EBA\u306E\u4F9D\u983C\u3068\u5B58\u5728\u3057\u306A\u3044\u4F9D\u983C\u306F\u3001\u3069\u3061\u3089\u3082\u300C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u300D\u306B\u306A\u308A\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u304C\u533A\u5225\u3057\u307E\u305B\u3093\uFF09\u3002";var ID_FLAG={name:"--id",summary:`\u5BFE\u8C61\u306E${LABEL}\u306E ID\uFF08\u4F4D\u7F6E\u5F15\u6570\u306E\u4EE3\u308F\u308A\u306B\u4F7F\u3048\u308B\uFF09`,
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{PROJECT_FLAG,TASK_REF_FLAG,TASK_REF_HELP,classifyTaskRef,rejectPrivateSurface,rejectRedundantProject,resolveTaskLocation,taskAttachmentResource,taskSurface,wantsPrivateSurface}from"./chunk-WTYIFLVB.js";import"./chunk-V64CGX7V.js";import{RUNNER_PLATFORMS}from"./chunk-O52RKZCC.js";import{PRIVATE_PROJECT_PREFIX,PRIVATE_PROJECT_REF,isPrivateProjectId}from"./chunk-RMFLTSOV.js";import{MANHOUR_DESCRIPTION,MANHOUR_FROM_FLAG,MANHOUR_TO_FLAG,manhourNotes,manhourQuery,manhourRows}from"./chunk-OF5JPNLD.js";
4
- import"./chunk-HKEW6XIC.js";import"./chunk-EXT4AIDF.js";import{createFlags,fieldBody,hasAnyField,updateFlags}from"./chunk-CADCERVL.js";import{boundedText,decimal,integerInRange,isoDate,priority}from"./chunk-JJSBBWJ5.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{charCount,readBody}from"./chunk-6LSQCOCJ.js";import{PRIVATE_TASKS_PATH,TASK_MASTERS}from"./chunk-RSSPNFSK.js";import{UUID_RE,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";
3
+ import{PROJECT_FLAG,TASK_REF_FLAG,TASK_REF_HELP,classifyTaskRef,rejectPrivateSurface,rejectRedundantProject,resolveTaskLocation,taskAttachmentResource,taskSurface,wantsPrivateSurface}from"./chunk-WTYIFLVB.js";import"./chunk-V64CGX7V.js";import{RUNNER_PLATFORMS}from"./chunk-O52RKZCC.js";import{PRIVATE_PROJECT_PREFIX,PRIVATE_PROJECT_REF,isPrivateProjectId}from"./chunk-RMFLTSOV.js";import{MANHOUR_DESCRIPTION,MANHOUR_FROM_FLAG,MANHOUR_TO_FLAG,manhourNotes,manhourQuery,manhourRows}from"./chunk-QXYY7DUV.js";
4
+ import"./chunk-HKEW6XIC.js";import"./chunk-EXT4AIDF.js";import{createFlags,fieldBody,hasAnyField,updateFlags}from"./chunk-CADCERVL.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{boundedText,decimal,integerInRange,isoDate,priority}from"./chunk-JJSBBWJ5.js";import{charCount,readBody}from"./chunk-6LSQCOCJ.js";import{PRIVATE_TASKS_PATH,TASK_MASTERS}from"./chunk-RSSPNFSK.js";import{UUID_RE,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";
5
5
  import"./chunk-H4CDX4TX.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";import"./chunk-II5RVJQN.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";
6
6
  import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var PRIVATE_UNSUPPORTED=[{flag:"--assignee",clearToken:"assignee",reason:"\u500B\u4EBA\u30BF\u30B9\u30AF\u306F\u5E38\u306B\u81EA\u5206\u306E\u3082\u306E\u306A\u306E\u3067\u3001\u30B5\u30FC\u30D0\u5074\u306B\u62C5\u5F53\u8005\u3092\u6307\u5B9A\u30FB\u7D5E\u308A\u8FBC\u307F\u3059\u308B\u9805\u76EE\u304C\u3042\u308A\u307E\u305B\u3093\u3002"},{flag:"--milestone",clearToken:"milestone",reason:"\u500B\u4EBA\u30BF\u30B9\u30AF\u306B\u30DE\u30A4\u30EB\u30B9\u30C8\u30FC\u30F3\u306E\u9805\u76EE\u304C\u30B5\u30FC\u30D0\u5074\u306B\u3042\u308A\u307E\u305B\u3093\u3002"},
7
7
  {flag:"--required-platforms",clearToken:"required-platforms",reason:"\u5FC5\u8981\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0\u306F\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u30EB\u30FC\u30D7\u304C\u62FE\u3046\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u30BF\u30B9\u30AF\u3060\u3051\u306E\u9805\u76EE\u3067\u3001\u500B\u4EBA\u30BF\u30B9\u30AF\u306E\u30B5\u30FC\u30D0\u5074\u306B\u3042\u308A\u307E\u305B\u3093\u3002"}];function rejectPrivateUnsupportedFlags(input){const clearTokens=new Set(repeatedValues(input,
@@ -86,7 +86,8 @@ takesValue:true,placeholder:"<\u540D\u524D|ID>",repeatable:true};var CLEAR_SATIS
86
86
  \u30EA\u30F3\u30AF\u306F\u4E21\u65B9\u5411\u306B\u4F5C\u3089\u308C\u307E\u3059\uFF08blocked_by \u3092\u4F5C\u308B\u3068\u3001\u76F8\u624B\u5074\u306B\u306F blocks \u304C\u4ED8\u304D\u307E\u3059\uFF09\u3002
87
87
 
88
88
  --satisfied-status \u306F blocks / blocked_by \u3067\u3060\u3051\u6307\u5B9A\u3067\u304D\u307E\u3059\u3002\u6307\u5B9A\u3057\u306A\u3051\u308C\u3070\u3001
89
- \u76F8\u624B\u304C\u5B8C\u4E86\u6271\u3044\u306E\u30B9\u30C6\u30FC\u30BF\u30B9\u306B\u306A\u3063\u305F\u6642\u70B9\u3067\u524D\u63D0\u304C\u6E80\u305F\u3055\u308C\u307E\u3059\u3002
89
+ \u76F8\u624B\u304C\u5B8C\u4E86\u6271\u3044\u306E\u30B9\u30C6\u30FC\u30BF\u30B9\u306B\u306A\u3063\u305F\u6642\u70B9\u3067\u524D\u63D0\u304C\u6E80\u305F\u3055\u308C\u307E\u3059\u3002\u305F\u3060\u3057\u300C\u52D5\u4F5C\u78BA\u8A8D\u300D\u300C\u30EA\u30EA\u30FC\u30B9\u5F85\u3061\u300D
90
+ \u300C\u51E6\u7406\u6E08\u307F\u300D\u304C\u63C3\u3046\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3067\u306F\u3001\u305D\u308C\u3089\u3068\u5B8C\u4E86\u6271\u3044\u306E\u30B9\u30C6\u30FC\u30BF\u30B9\u304C\u6761\u4EF6\u3068\u3057\u3066\u4FDD\u5B58\u3055\u308C\u307E\u3059\u3002
90
91
 
91
92
  \u500B\u4EBA\u30BF\u30B9\u30AF\uFF08--project __private__\uFF09\u306B\u306F\u30EA\u30F3\u30AF\u304C\u3042\u308A\u307E\u305B\u3093\u3002`;var EXAMPLES="\n\n\u4F8B:\n twp task link create ABC-12 --target ABC-10 --type blocked_by\n twp task link create ABC-12 --target ABC-10 --type blocked_by --satisfied-status \u30EC\u30D3\u30E5\u30FC\u4E2D --satisfied-status \u5B8C\u4E86\n twp task link update ABC-12 --target ABC-10 --clear-satisfied-status\n twp task get ABC-12 # \u524D\u63D0\u3068\u5145\u8DB3\u72B6\u6CC1\uFF08prerequisites / prerequisites_satisfied\uFF09\u3092\u78BA\u8A8D\u3059\u308B";
92
93
  function linkPath(input){const projectId=encodeURIComponent(requireResolved(input,"projectId"));const taskId=encodeURIComponent(requireResolved(input,"taskId"));return`/api/v2/projects/${projectId}/tasks/${taskId}/links`}function linkType(input,usage){const value=nonEmpty(input.flags,"--type");if(value===void 0)return"related";const found=LINK_TYPES.find(t=>t===value);if(found===void 0){throw new UsageError(`--type \u306B\u6307\u5B9A\u3067\u304D\u306A\u3044\u7A2E\u5225\u3067\u3059: ${value}`,`\u6307\u5B9A\
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{FISCAL_YEAR_FLAG,fiscalYear,skillNames}from"./chunk-NLCJXS5S.js";import{ASSIGNED_PROJECT_COLUMNS,assignedProjectItems}from"./chunk-D2OMWITR.js";import{LICENSE_FEATURE_NAMES,levelHoldsSeat,permissionMovesSeat,readLicenses}from"./chunk-HYBXFEHH.js";import{CONCURRENCY,exportOperation,mapPool,pacedSender}from"./chunk-7PTFN3H7.js";import{readCsvFileText}from"./chunk-QLENN5DD.js";import"./chunk-OF5JPNLD.js";import{USER_REF_FLAG,USER_REF_HELP,prepareUser,userPath}from"./chunk-HKEW6XIC.js";
4
- import"./chunk-EXT4AIDF.js";import{createFlags,fieldBody,hasAnyField,resolveRefFields,updateFlags}from"./chunk-CADCERVL.js";import{booleanText,boundedText,isoDate,isoDateValue}from"./chunk-JJSBBWJ5.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import"./chunk-6LSQCOCJ.js";import{DEPARTMENTS_PATH,ORG_MASTER_LIMIT,POSITIONS_PATH}from"./chunk-RSSPNFSK.js";import{ResolveError,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import{ApiError}from"./chunk-JA5A6UJ2.js";
3
+ import{ASSIGNED_PROJECT_COLUMNS,assignedProjectItems}from"./chunk-X2WD2H3B.js";import{FISCAL_YEAR_FLAG,fiscalYear,skillNames}from"./chunk-NLCJXS5S.js";import{LICENSE_FEATURE_NAMES,levelHoldsSeat,permissionMovesSeat,readLicenses}from"./chunk-HYBXFEHH.js";import{CONCURRENCY,exportOperation,mapPool,pacedSender}from"./chunk-7PTFN3H7.js";import{readCsvFileText}from"./chunk-QLENN5DD.js";import"./chunk-QXYY7DUV.js";import{USER_REF_FLAG,USER_REF_HELP,prepareUser,userPath}from"./chunk-HKEW6XIC.js";
4
+ import"./chunk-EXT4AIDF.js";import{createFlags,fieldBody,hasAnyField,resolveRefFields,updateFlags}from"./chunk-CADCERVL.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{booleanText,boundedText,isoDate,isoDateValue}from"./chunk-JJSBBWJ5.js";import"./chunk-6LSQCOCJ.js";import{DEPARTMENTS_PATH,ORG_MASTER_LIMIT,POSITIONS_PATH}from"./chunk-RSSPNFSK.js";import{ResolveError,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import{ApiError}from"./chunk-JA5A6UJ2.js";
5
5
  import"./chunk-H4CDX4TX.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger,shellQuote}from"./chunk-MI6HVYR2.js";import"./chunk-II5RVJQN.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiRejectedError,ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";
6
6
  import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";import fs from"fs";var ASSIGNMENT_COLUMNS=["id","department_name","position_name","start_date","end_date","is_primary","is_current","is_approval_route","effective_status"];function assignmentRows(body){const response=isRecord(body)&&"response"in body?body["response"]:body;const list=isRecord(response)?response["list"]:void 0;if(!Array.isArray(list)){throw new ApiResponseError("\u6240\u5C5E\u4E00\u89A7\u306E\u5FDC\u7B54\u306B list \u914D\u5217\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}
7
7
  return list}async function nameMap(ctx,path,label2){try{const body=await ctx.send({method:"GET",path,query:{limit:ORG_MASTER_LIMIT}});const list=isRecord(body)?body["list"]:void 0;if(!Array.isArray(list))throw new Error(`${label2}\u4E00\u89A7\u306E\u5FDC\u7B54\u306B list \u914D\u5217\u304C\u3042\u308A\u307E\u305B\u3093`);const count=isRecord(body)?body["count"]:void 0;if(typeof count==="number"&&count>list.length){ctx.warn(`${label2}\u4E00\u89A7\u304C ${count} \u4EF6\u4E2D ${list.length} \u4EF6\u3067\u5207\u308A\u8A70\u3081\u3089\
@@ -1,4 +1,4 @@
1
1
  import { createRequire as __twpCreateRequire } from 'node:module';
2
2
  const require = __twpCreateRequire(import.meta.url);
3
- import{applyInstancePlan,createInstancePlan,formColumns,parseInstanceContent,workflowDomain,writtenInstance}from"./chunk-B3466RC6.js";import"./chunk-DDW53EFR.js";import"./chunk-DLT7DYWR.js";import"./chunk-IBZ5UL4H.js";import"./chunk-JJSBBWJ5.js";import"./chunk-RX5HWI4L.js";import"./chunk-6LSQCOCJ.js";import"./chunk-RSSPNFSK.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import"./chunk-MI6HVYR2.js";
3
+ import{applyInstancePlan,createInstancePlan,formColumns,parseInstanceContent,workflowDomain,writtenInstance}from"./chunk-22CRY6JR.js";import"./chunk-DELIIGWE.js";import"./chunk-V3RZ4RFP.js";import"./chunk-4RNL462J.js";import"./chunk-RX5HWI4L.js";import"./chunk-JJSBBWJ5.js";import"./chunk-6LSQCOCJ.js";import"./chunk-RSSPNFSK.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import"./chunk-MI6HVYR2.js";
4
4
  import"./chunk-II5RVJQN.js";import"./chunk-PS5QFKHB.js";import"./chunk-3ZRMMBP5.js";import"./chunk-VFPY2A23.js";import"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";export{applyInstancePlan,createInstancePlan,formColumns,parseInstanceContent,workflowDomain,writtenInstance};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tocca-systems/twp-cli",
3
- "version": "0.78.0",
3
+ "version": "0.79.0",
4
4
  "description": "TWP CLI — Tocca Working Platform の CLI 型統合インターフェース(AIエージェントハーネス)",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,5 +0,0 @@
1
- import { createRequire as __twpCreateRequire } from 'node:module';
2
- const require = __twpCreateRequire(import.meta.url);
3
- import{FROM_FLAG,MANHOUR_DESCRIPTION,MANHOUR_FROM_FLAG,MANHOUR_TO_FLAG,MONTH_FLAG,TO_FLAG,analysisDomain,analysisForbidden,currentMonth,dataOf,listIn,manhourNotes,manhourQuery,manhourRows,monthRange,monthsBetween,noArgs,profitRows,rangeNotes,recordOf,staffKpiRows,workloadDistributionNotes,workloadDistributionRows}from"./chunk-OF5JPNLD.js";import"./chunk-HKEW6XIC.js";import"./chunk-EXT4AIDF.js";import"./chunk-CADCERVL.js";import"./chunk-JJSBBWJ5.js";import"./chunk-RX5HWI4L.js";
4
- import"./chunk-6LSQCOCJ.js";import"./chunk-RSSPNFSK.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-H4CDX4TX.js";import"./chunk-MI6HVYR2.js";import"./chunk-II5RVJQN.js";import"./chunk-PS5QFKHB.js";import"./chunk-3ZRMMBP5.js";import"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";
5
- import"./chunk-VSJBJXZO.js";export{FROM_FLAG,MANHOUR_DESCRIPTION,MANHOUR_FROM_FLAG,MANHOUR_TO_FLAG,MONTH_FLAG,TO_FLAG,analysisDomain,analysisForbidden,currentMonth,dataOf,listIn,manhourNotes,manhourQuery,manhourRows,monthRange,monthsBetween,noArgs,profitRows,rangeNotes,recordOf,staffKpiRows,workloadDistributionNotes,workloadDistributionRows};
@@ -1,11 +0,0 @@
1
- import { createRequire as __twpCreateRequire } from 'node:module';
2
- const require = __twpCreateRequire(import.meta.url);
3
- var LOADERS={agent:async()=>(await import("./agent-WTDLGRNM.js")).agentDomain,"agent-loop":async()=>(await import("./agent-loop-6Q5QQC5H.js")).agentLoopDomain,"ai-review-reason":async()=>(await import("./sales-ai-review-QBBRTX3F.js")).aiReviewReasonDomain,analysis:async()=>(await import("./analysis-SZWW5N5I.js")).analysisDomain,announcement:async()=>(await import("./announcement-RTTVGW4K.js")).announcementDomain,attendance:async()=>(await import("./attendance-correct-OLWRCDP4.js")).attendanceDomainWithRecords,
4
- backlog:async()=>(await import("./backlog-HDDV2NTC.js")).backlogDomain,budget:async()=>(await import("./budget-Z4TZDYFC.js")).budgetDomain,"business-hours":async()=>(await import("./business-hours-I4X6YQS3.js")).businessHoursDomain,"business-place":async()=>(await import("./sales-master-DKC5TCSG.js")).businessPlaceDomain,company:async()=>(await import("./company-OSKBPHNA.js")).companyDomain,contract:async()=>(await import("./contract-USUYPZGJ.js")).contractDomain,customer:async()=>(await import("./company-OSKBPHNA.js")).
5
- customerDomain,department:async()=>(await import("./department-GPVHVFFP.js")).departmentDomain,deposit:async()=>(await import("./deposit-4KSD4HRJ.js")).depositDomain,estimate:async()=>(await import("./estimate-HLPOQAII.js")).estimateDomain,evaluation:async()=>(await import("./evaluation-VP7OFTBS.js")).evaluationDomain,expense:async()=>(await import("./expense-KCDGJ4Y7.js")).expenseDomain,"fiscal-year":async()=>(await import("./fiscal-year-ZTCSF46U.js")).fiscalYearDomain,holiday:async()=>(await import("./holiday-FMELHZIS.js")).
6
- holidayDomain,"goal-sheet":async()=>(await import("./evaluation-VP7OFTBS.js")).goalSheetDomain,inquiry:async()=>(await import("./inquiry-5SSB25FA.js")).inquiryDomain,invoice:async()=>(await import("./invoice-ME4FODCA.js")).invoiceDomain,"job-title":async()=>(await import("./job-title-NCFHCA4M.js")).jobTitleDomain,knowledge:async()=>(await import("./domain-knowledge-5SCZLCPF.js")).knowledgeDomain,leave:async()=>(await import("./leave-3RP6CFUY.js")).leaveDomain,license:async()=>(await import("./license-XSWDXSJE.js")).
7
- licenseDomain,media:async()=>(await import("./media-4IGTXKOP.js")).mediaDomain,meeting:async()=>(await import("./knowledge-43PQDFAG.js")).meetingDomain,note:async()=>(await import("./knowledge-43PQDFAG.js")).noteDomain,notification:async()=>(await import("./notification-WP7CH734.js")).notificationDomain,onedrive:async()=>(await import("./onedrive-KWVOUGG6.js")).onedriveDomain,outlook:async()=>(await import("./outlook-GYRF5TXA.js")).outlookDomain,payee:async()=>(await import("./sales-master-DKC5TCSG.js")).
8
- payeeDomain,position:async()=>(await import("./position-H3NSDVKQ.js")).positionDomain,project:async()=>(await import("./project-AIAD2RJL.js")).projectDomain,prospect:async()=>(await import("./prospect-OOQMGJ6Q.js")).prospectDomain,purchase:async()=>(await import("./purchase-MOLAGXZ7.js")).purchaseDomain,qualification:async()=>(await import("./skill-4TSTVUXY.js")).qualificationDomain,receivable:async()=>(await import("./receivable-ZO7DA6ZR.js")).receivableDomain,redmine:async()=>(await import("./redmine-644RTL42.js")).
9
- redmineDomain,report:async()=>(await import("./report-P74LSHTE.js")).reportDomain,"rounding-setting":async()=>(await import("./sales-numbering-SJOO6NZP.js")).roundingSettingDomain,"seal-impression":async()=>(await import("./sales-master-DKC5TCSG.js")).sealImpressionDomain,search:async()=>(await import("./search-BLMSVPIL.js")).searchDomain,segment:async()=>(await import("./segment-G4IPD43F.js")).segmentDomain,shift:async()=>(await import("./attendance-lists-TBUZCRKK.js")).shiftDomain,skill:async()=>(await import("./skill-4TSTVUXY.js")).
10
- skillDomain,storage:async()=>(await import("./storage-AQDCEBDJ.js")).storageDomain,"supplier-payment":async()=>(await import("./supplier-payment-ARH5FZTA.js")).supplierPaymentDomain,support:async()=>(await import("./support-EDIJC36M.js")).supportDomain,task:async()=>(await import("./task-PEXVSFM4.js")).taskDomain,teams:async()=>(await import("./teams-MZR3256V.js")).teamsDomain,user:async()=>(await import("./user-NI4LZ7Y2.js")).userDomain,"user-contract-type":async()=>(await import("./user-contract-type-HDA5TITL.js")).
11
- userContractTypeDomain,wiki:async()=>(await import("./knowledge-43PQDFAG.js")).wikiDomain,workchange:async()=>(await import("./attendance-lists-TBUZCRKK.js")).workchangeDomain,"worker-agent":async()=>(await import("./worker-agent-52PXQO4N.js")).workerAgentDomain,workflow:async()=>(await import("./workflow-GJK7QETS.js")).workflowDomain};async function loadDomain(name){return LOADERS[name]()}export{loadDomain};
@@ -1,52 +0,0 @@
1
- import { createRequire as __twpCreateRequire } from 'node:module';
2
- const require = __twpCreateRequire(import.meta.url);
3
- import{isModeId,isPermissionModeId}from"./chunk-2LOT54OO.js";import{API_TOKEN,HELP_TOKEN,isDomainName}from"./chunk-W4E4F2ZA.js";import{splitFlagToken}from"./chunk-QQRJLH6B.js";var BUILTIN_COMMANDS=["login","logout","whoami","update","task-loop"];var TASK_LOOP_ACTIONS=["run","status","stop","schedule","setup","charter","skill","settings","plan","capacity","runner"];var VALUE_FLAGS=new Set(["-p","--print","--profile","--tenant","--mode","--permission-mode","--model","--allowed-tools","--disallowed-tools","--project","--engine","--interval","--max-cycles","--ai","--workspace","--ai-config-file","--now","--counts","--gate","--file","--out","--revision","--dir","--from","-\
4
- -to","--config","--output","--query"]);var BOOLEAN_FLAGS=new Set(["-h","--help","-v","--version","--no-tui","--doctor","--password","--token","--no-browser","--safe","--daemon","--force-runner","--force","--drain","--yes","-y","--no-ai-config-file","--verbose","--all","--empty","--check","--dry-run","--debug","--refresh"]);function dispatch(argv,limit=2){const tokens=[];const indexes=[];let truncated=false;for(let i=0;i<argv.length;i++){const arg=argv[i];if(arg===void 0)continue;if(arg.startsWith(
5
- "-")&&arg!=="-"){const{name,value:inline}=splitFlagToken(arg);if(BOOLEAN_FLAGS.has(name)){if(inline!==void 0){truncated=true;break}continue}if(VALUE_FLAGS.has(name)){if(inline!==void 0)continue;const next=argv[i+1];if(next!==void 0&&(!next.startsWith("-")||next==="-"))i++;continue}truncated=true;break}if(arg===""||arg==="-")continue;if(tokens.length>=limit)break;tokens.push(arg);indexes.push(i)}return{tokens,indexes,truncated}}function isBuiltin(token){return token!==void 0&&BUILTIN_COMMANDS.includes(
6
- token)}function isTaskLoopAction(token){return token!==void 0&&TASK_LOOP_ACTIONS.includes(token)}function resolveRoute(result){const{tokens,indexes}=result;const[first,second]=tokens;const firstIndex=indexes[0];if(first===void 0||firstIndex===void 0)return{kind:"none",consumed:[]};const consumed=[firstIndex];const secondIndex=indexes[1];if(isBuiltin(first)){if(first==="task-loop"&&isTaskLoopAction(second)){if(secondIndex!==void 0)consumed.push(secondIndex);return{kind:"builtin",command:first,action:second,
7
- consumed}}return{kind:"builtin",command:first,...first==="task-loop"?{action:"run"}:{},consumed}}if(second!==void 0&&secondIndex!==void 0)consumed.push(secondIndex);return{kind:"domain",domain:first,...second!==void 0?{operation:second}:{},consumed}}var GLOBAL_FLAGS=new Set(["-h","--help","-v","--version","--profile","--output","--query","--dry-run","--debug","--yes","-y","--refresh"]);function parseArgv(argv){const out={command:"tui",safe:false,daemon:false,forceRunner:false,stopForce:false,logoutForce:false,stopDrain:false,noTui:false,doctor:false,yes:false,skillAll:false,planEmpty:false,planCheck:false,noAiConfigFile:false,verbose:false,loginMethod:"browser",loginNoBrowser:false,promptFromStdin:false,domainArgv:[],domainHelp:false,dryRun:false,
8
- debug:false,refresh:false,unknown:[],allowedTools:[],disallowedTools:[]};const route=resolveRoute(dispatch(argv));const consumed=new Set;const[firstIndex,secondIndex]=route.consumed;if(route.kind==="builtin"){out.command=route.command;if(route.action!==void 0)out.taskLoopAction=route.action;for(const index of route.consumed)consumed.add(index)}else if(route.kind==="domain"){if(route.domain===HELP_TOKEN){if(route.operation===void 0){out.command="help";if(firstIndex!==void 0)consumed.add(firstIndex)}else if(isDomainName(
9
- route.operation)){out.command="domain";out.domain=route.operation;out.domainHelp=true;if(firstIndex!==void 0)consumed.add(firstIndex);if(secondIndex!==void 0)consumed.add(secondIndex)}else if(route.operation===API_TOKEN){out.command="api";out.domainHelp=true;if(firstIndex!==void 0)consumed.add(firstIndex);if(secondIndex!==void 0)consumed.add(secondIndex)}}else if(route.domain===API_TOKEN){out.command="api";if(firstIndex!==void 0)consumed.add(firstIndex)}else if(isDomainName(route.domain)){out.command=
10
- "domain";out.domain=route.domain;if(route.operation!==void 0)out.operation=route.operation;for(const index of route.consumed)consumed.add(index)}}const hasSubcommandToken=route.kind==="builtin"||route.kind==="domain"&&(route.domain===HELP_TOKEN||route.domain===API_TOKEN||isDomainName(route.domain));const isDomainRoute=out.command==="domain"||out.command==="api";const takeValue=(i,flag,inline)=>{const value=inline??argv[i+1];if(value===void 0||inline===void 0&&value.startsWith("-")){out.unknown.push(
11
- flag);return{step:0}}if(value.trim()===""){out.unknown.push(inline===void 0?`${flag} `:`${flag}=${inline}`);return{step:0}}return{value,step:inline===void 0?1:0}};let optionsClosed=false;for(let i=0;i<argv.length;i++){if(consumed.has(i))continue;const raw=argv[i];if(raw===void 0)continue;if(isDomainRoute&&raw==="--")optionsClosed=true;const{name:arg,value:inline}=splitFlagToken(raw);if(isDomainRoute&&(optionsClosed||!GLOBAL_FLAGS.has(arg))){out.domainArgv.push(raw);continue}if(inline!==void 0&&BOOLEAN_FLAGS.
12
- has(arg)){out.unknown.push(raw);continue}switch(arg){case"-h":case"--help":if(isDomainRoute)out.domainHelp=true;else out.command="help";break;case"-v":case"--version":out.command="version";break;case"--no-tui":out.noTui=true;break;case"--doctor":out.doctor=true;break;case"--password":out.loginMethod="password";break;case"--token":out.loginMethod="token";break;case"--no-browser":out.loginNoBrowser=true;break;case"--profile":{const{value,step}=takeValue(i,"--profile",inline);if(value!==void 0){out.
13
- profile=value;i+=step}break}case"-p":case"--print":{const next=inline??argv[i+1];const step=inline===void 0?1:0;if(hasSubcommandToken){out.unknown.push(raw)}else if(next==="-"){out.command="print";out.promptFromStdin=true;out.prompt="";i+=step}else if(next!==void 0&&(inline!==void 0||!next.startsWith("-"))){out.command="print";out.prompt=next;i+=step}else{out.unknown.push(raw)}break}case"--output":{const{value,step}=takeValue(i,"--output",inline);if(value!==void 0){out.output=value;i+=step}break}case"\
14
- --query":{const{value,step}=takeValue(i,"--query",inline);if(value!==void 0){out.query=value;i+=step}break}case"--dry-run":out.dryRun=true;break;case"--debug":out.debug=true;break;case"--refresh":out.refresh=true;break;case"--tenant":{const{value,step}=takeValue(i,"--tenant",inline);if(value!==void 0){out.tenant=value;i+=step}break}case"--mode":{const next=inline??argv[i+1];const step=inline===void 0?1:0;if(isModeId(next)){out.mode=next;i+=step}else if(next!==void 0&&(inline!==void 0||!next.startsWith(
15
- "-"))){out.unknown.push(inline!==void 0?raw:`--mode ${next}`);i+=step}else{out.unknown.push("--mode")}break}case"--permission-mode":{const next=inline??argv[i+1];const step=inline===void 0?1:0;if(isPermissionModeId(next)){out.permissionMode=next;i+=step}else if(next!==void 0&&(inline!==void 0||!next.startsWith("-"))){out.unknown.push(inline!==void 0?raw:`--permission-mode ${next}`);i+=step}else{out.unknown.push("--permission-mode")}break}case"--allowed-tools":case"--disallowed-tools":{const{value,
16
- step}=takeValue(i,arg,inline);if(value!==void 0){(arg==="--allowed-tools"?out.allowedTools:out.disallowedTools).push(value);i+=step}break}case"--model":{const{value,step}=takeValue(i,"--model",inline);if(value!==void 0){out.model=value;i+=step}break}case"--safe":out.safe=true;break;case"--daemon":out.daemon=true;break;case"--force-runner":out.forceRunner=true;break;case"--force":out.stopForce=true;break;case"--drain":out.stopDrain=true;break;case"--project":{const{value,step}=takeValue(i,"--proj\
17
- ect",inline);if(value!==void 0){out.project=value;i+=step}break}case"--engine":{const{value,step}=takeValue(i,"--engine",inline);if(value!==void 0){out.engine=value;i+=step}break}case"--interval":case"--max-cycles":{const{value,step}=takeValue(i,arg,inline);if(value!==void 0){const n=Number.parseInt(value,10);if(Number.isInteger(n)&&n>0){if(arg==="--interval")out.interval=n;else out.maxCycles=n}else{out.unknown.push(inline!==void 0?raw:`${arg} ${value}`)}i+=step}break}case"--yes":case"-y":out.yes=
18
- true;break;case"--ai":{const{value:v,step}=takeValue(i,"--ai",inline);if(v!==void 0){out.ais=[...out.ais??[],v];i+=step}break}case"--no-ai-config-file":out.noAiConfigFile=true;break;case"--workspace":{const{value:v,step}=takeValue(i,"--workspace",inline);if(v!==void 0){out.workspace=v;i+=step}break}case"--ai-config-file":{const{value:v,step}=takeValue(i,"--ai-config-file",inline);if(v!==void 0){out.aiConfigFile=v;i+=step}break}case"--verbose":out.verbose=true;break;case"--now":{const{value:v,step}=takeValue(
19
- i,"--now",inline);if(v!==void 0){out.scheduleNow=v;i+=step}break}case"--counts":{const{value:v,step}=takeValue(i,"--counts",inline);if(v!==void 0){out.scheduleCounts=v;i+=step}break}case"--gate":{const{value:v,step}=takeValue(i,"--gate",inline);if(v!==void 0){out.scheduleGate=v;i+=step}break}case"--file":{if(inline===void 0&&argv[i+1]==="-"){out.charterFile="-";i+=1;break}const{value:v,step}=takeValue(i,"--file",inline);if(v!==void 0){out.charterFile=v;i+=step}break}case"--out":{const{value:v,step}=takeValue(
20
- i,"--out",inline);if(v!==void 0){out.charterOut=v;i+=step}break}case"--revision":{const{value:v,step}=takeValue(i,"--revision",inline);if(v!==void 0){out.charterRevision=v;i+=step}break}case"--from":{const{value:v,step}=takeValue(i,"--from",inline);if(v!==void 0){out.revisionFrom=v;i+=step}break}case"--to":{const{value:v,step}=takeValue(i,"--to",inline);if(v!==void 0){out.revisionTo=v;i+=step}break}case"--dir":{const{value:v,step}=takeValue(i,"--dir",inline);if(v!==void 0){out.skillDir=v;i+=step}
21
- break}case"--config":{const{value:v,step}=takeValue(i,"--config",inline);if(v!==void 0){out.skillConfig=v;i+=step}break}case"--all":out.skillAll=true;break;case"--empty":out.planEmpty=true;break;case"--check":out.planCheck=true;break;default:if(out.command==="task-loop"&&out.taskLoopAction==="charter"&&out.charterOp===void 0&&isRevisionAwareOp(raw)){out.charterOp=raw;break}if(out.command==="task-loop"&&out.taskLoopAction==="schedule"){if(out.scheduleOp===void 0&&isScheduleOp(raw)){out.scheduleOp=
22
- raw;break}if(out.scheduleOp==="config"&&out.scheduleConfigOp===void 0&&(raw==="pull"||raw==="push")){out.scheduleConfigOp=raw;break}if(out.scheduleOp==="delete"&&out.scheduleId===void 0&&!raw.startsWith("-")){out.scheduleId=raw;break}}if(out.command==="task-loop"&&out.taskLoopAction==="settings"&&out.settingsOp===void 0&&(raw==="push"||raw==="pull")){out.settingsOp=raw;break}if(out.command==="task-loop"&&out.taskLoopAction==="plan"&&out.planOp===void 0&&raw==="submit"){out.planOp="submit";break}
23
- if(out.command==="task-loop"&&out.taskLoopAction==="capacity"&&out.capacityOp===void 0&&raw==="report"){out.capacityOp="report";break}if(out.command==="task-loop"&&out.taskLoopAction==="runner"){if(out.runnerOp===void 0&&(raw==="list"||raw==="remove")){out.runnerOp=raw;break}if(out.runnerOp==="remove"&&out.runnerTargetId===void 0&&!raw.startsWith("-")){out.runnerTargetId=raw;break}}if(out.command==="task-loop"&&out.taskLoopAction==="skill"){if(out.skillOp===void 0&&(isRevisionAwareOp(raw)||isSkillManageOp(
24
- raw)||raw==="check")){out.skillOp=raw;break}if(out.skillOp!==void 0&&out.skillName===void 0&&!raw.startsWith("-")){out.skillName=raw;break}}out.unknown.push(raw)}}if(out.command!=="login"&&out.loginMethod!=="browser"){out.unknown.push(out.loginMethod==="password"?"--password":"--token");out.loginMethod="browser"}if(out.permissionMode!==void 0&&out.command!=="tui"&&out.command!=="print"){out.unknown.push("--permission-mode");delete out.permissionMode}if(out.command!=="tui"&&out.command!=="print"){
25
- if(out.allowedTools.length>0)out.unknown.push("--allowed-tools");if(out.disallowedTools.length>0)out.unknown.push("--disallowed-tools");out.allowedTools=[];out.disallowedTools=[]}if(out.loginNoBrowser&&!(out.command==="login"&&out.loginMethod==="browser")){out.unknown.push("--no-browser");out.loginNoBrowser=false}if(out.command==="logout"&&out.stopForce){out.logoutForce=true;out.stopForce=false}if(out.command!=="task-loop"){if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("-\
26
- -daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.stopForce)out.unknown.push("--force");if(out.stopDrain)out.unknown.push("--drain");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles");if(out.project!==void 0)out.unknown.push("--project");if(out.verbose)out.unknown.push("--verbose");if(out.scheduleNow!==void 0)out.unknown.push("--now");if(out.scheduleCounts!==void 0)
27
- out.unknown.push("--counts");if(out.scheduleGate!==void 0)out.unknown.push("--gate");if(out.ais!==void 0)out.unknown.push("--ai");if(out.workspace!==void 0)out.unknown.push("--workspace");if(out.aiConfigFile!==void 0)out.unknown.push("--ai-config-file");if(out.noAiConfigFile)out.unknown.push("--no-ai-config-file");if(out.charterFile!==void 0)out.unknown.push("--file");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.charterRevision!==void 0)out.unknown.push("--revision");if(out.skillDir!==
28
- void 0)out.unknown.push("--dir");if(out.skillAll)out.unknown.push("--all");if(out.skillConfig!==void 0)out.unknown.push("--config");if(out.revisionFrom!==void 0)out.unknown.push("--from");if(out.revisionTo!==void 0)out.unknown.push("--to");if(out.planEmpty)out.unknown.push("--empty");if(out.planCheck)out.unknown.push("--check")}if(out.yes&&out.command!=="task-loop"&&!isDomainRoute)out.unknown.push("--yes");const acceptsOutput=isDomainRoute||out.command==="whoami"||out.command==="task-loop"&&out.
29
- taskLoopAction==="status"||out.command==="task-loop"&&out.taskLoopAction==="skill"&&(out.skillOp==="list"||out.skillOp==="show"||out.skillOp==="check")||out.command==="task-loop"&&out.taskLoopAction==="runner";if(!acceptsOutput){if(out.output!==void 0)out.unknown.push("--output");if(out.query!==void 0)out.unknown.push("--query")}else if(out.command==="task-loop"&&(out.skillOp==="check"||out.taskLoopAction==="runner"&&out.runnerOp==="remove")&&out.query!==void 0){out.unknown.push("--query")}if(!isDomainRoute){
30
- if(out.dryRun)out.unknown.push("--dry-run");if(out.debug)out.unknown.push("--debug");if(out.refresh)out.unknown.push("--refresh")}if(out.command==="api"&&out.refresh){out.unknown.push("--refresh");out.refresh=false}if(out.command==="task-loop"&&(out.taskLoopAction!=="schedule"||out.scheduleOp!==void 0)){if(out.verbose)out.unknown.push("--verbose");if(out.scheduleNow!==void 0)out.unknown.push("--now");if(out.scheduleCounts!==void 0)out.unknown.push("--counts");if(out.scheduleGate!==void 0)out.unknown.
31
- push("--gate")}if(out.command==="task-loop"&&out.taskLoopAction!=="stop"&&out.stopForce){out.unknown.push("--force")}if(out.command==="task-loop"&&out.taskLoopAction!=="stop"&&out.stopDrain){out.unknown.push("--drain")}if(out.command==="task-loop"&&out.taskLoopAction==="stop"&&out.stopForce&&out.stopDrain){out.unknown.push("--force \u3068 --drain \u306F\u540C\u6642\u306B\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093");out.stopForce=false;out.stopDrain=false}if(out.command==="task-loop"&&out.taskLoopAction!==
32
- "setup"){const yesConfirms=out.taskLoopAction==="charter"||out.taskLoopAction==="skill"||out.taskLoopAction==="settings"||out.taskLoopAction==="runner"&&out.runnerOp==="remove"||out.taskLoopAction==="schedule"&&out.scheduleOp!==void 0&&out.scheduleOp!=="list";if(out.yes&&!yesConfirms)out.unknown.push("--yes");if(out.ais!==void 0)out.unknown.push("--ai");if(out.workspace!==void 0)out.unknown.push("--workspace");if(out.aiConfigFile!==void 0)out.unknown.push("--ai-config-file");if(out.noAiConfigFile)
33
- out.unknown.push("--no-ai-config-file")}if(out.command==="task-loop"&&(out.taskLoopAction==="stop"||out.taskLoopAction==="status")){if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}if(out.command==="task-loop"&&out.taskLoopAction==="setup"){if(out.
34
- engine!==void 0)out.unknown.push("--engine");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}if(out.command==="task-loop"&&out.taskLoopAction==="charter"){if(out.charterOp===void 0){out.unknown.push("charter \u306B\u306F push / pull / history / diff / revert \u306E\u3044\u305A\u308C\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044")}
35
- if(out.charterOp!=="push"&&out.charterFile!==void 0)out.unknown.push("--file");if(out.charterOp!=="push"&&out.charterOp!=="revert"&&out.charterRevision!==void 0){out.unknown.push("--revision")}pushRevisionFlagErrors(out,out.charterOp);if((out.charterOp==="history"||out.charterOp==="diff")&&out.yes)out.unknown.push("--yes");if(out.charterOp!=="pull"&&out.charterOut!==void 0)out.unknown.push("--out");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)
36
- out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"&&out.taskLoopAction==="skill"){if(out.skillOp===void 0){out.unknown.push(SKILL_OP_REQUIRED)}else if(out.skillOp==="check"){if(out.skillName!==void 0)out.unknown.push("skill check \u306F\u30B9\u30AD\u30EB\u540D\u3092\u53D7\u3051\u4ED8\u3051\u307E\u305B\u3093\uFF08\u30B5\u30FC\u30D0\u306E\u5168\u30B9\u30AD\u30EB\u3092\u691C\u67FB\u3057\u307E\u3059\uFF09");
37
- if(out.skillAll)out.unknown.push("--all");if(out.yes)out.unknown.push("--yes")}else if(out.skillOp==="list"&&out.skillAll){out.unknown.push("--all")}else if(out.skillOp==="list"&&out.skillName!==void 0){out.unknown.push(`skill list \u306F\u30B9\u30AD\u30EB\u540D\u3092\u53D7\u3051\u4ED8\u3051\u307E\u305B\u3093: ${out.skillName}`)}else if(out.skillOp==="list"){}else if(out.skillOp!=="push"&&out.skillOp!=="pull"&&out.skillAll){out.unknown.push(`skill ${out.skillOp} \u306F --all \u3092\u53D7\u3051\u4ED8\u3051\u307E\u305B\u3093\uFF08\u30B9\u30AD\u30EB\u540D\u30921\u3064\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF09`)}else if(out.
38
- skillName===void 0&&!out.skillAll){out.unknown.push(out.skillOp==="push"||out.skillOp==="pull"?`skill ${out.skillOp} \u306B\u306F\u30B9\u30AD\u30EB\u540D\u304B --all \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044`:`skill ${out.skillOp} \u306B\u306F\u30B9\u30AD\u30EB\u540D\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044`)}else if(out.skillName!==void 0&&out.skillAll){out.unknown.push("\u30B9\u30AD\u30EB\u540D\u3068 --all \u306F\u540C\u6642\u306B\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093")}
39
- if(out.skillOp!=="push"&&out.skillOp!=="revert"&&out.skillOp!=="delete"&&out.charterRevision!==void 0){out.unknown.push("--revision")}pushRevisionFlagErrors(out,out.skillOp);if((out.skillOp==="history"||out.skillOp==="diff"||out.skillOp==="list"||out.skillOp==="show")&&out.yes){out.unknown.push("--yes")}if(out.skillOp!=="push"&&out.skillOp!=="pull"&&out.skillDir!==void 0)out.unknown.push("--dir");if(out.skillOp!=="check"&&out.skillConfig!==void 0)out.unknown.push("--config");if(out.charterFile!==
40
- void 0)out.unknown.push("--file");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"&&out.taskLoopAction==="settings"){if(out.settingsOp===void 0)out.unknown.push(
41
- "settings \u306B\u306F push / pull \u306E\u3044\u305A\u308C\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044");if(out.settingsOp!=="push"&&out.charterFile!==void 0)out.unknown.push("--file");if(out.settingsOp!=="push"&&out.charterRevision!==void 0)out.unknown.push("--revision");if(out.settingsOp!=="pull"&&out.charterOut!==void 0)out.unknown.push("--out");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runne\
42
- r");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"&&out.taskLoopAction==="plan"){if(out.planOp===void 0)out.unknown.push("plan \u306B\u306F submit \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.charterRevision!==void 0)out.unknown.push("--revision");if(out.safe)out.unknown.push(
43
- "--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"&&out.taskLoopAction==="capacity"){if(out.capacityOp===void 0)out.unknown.push("capacity \u306B\u306F report \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044");if(out.charterFile!==void 0)
44
- out.unknown.push("--file");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.charterRevision!==void 0)out.unknown.push("--revision");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"&&out.taskLoopAction===
45
- "runner"){if(out.runnerOp===void 0)out.unknown.push("runner \u306B\u306F list / remove \u306E\u3044\u305A\u308C\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044");if(out.runnerOp==="remove"&&out.runnerTargetId===void 0){out.unknown.push("runner remove \u306B\u306F runner_id \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044")}if(out.charterFile!==void 0)out.unknown.push("--file");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.charterRevision!==void 0)out.unknown.push(
46
- "--revision");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"&&out.taskLoopAction==="schedule"&&out.scheduleOp!==void 0){const op=out.scheduleOp;const takesFile=op==="push"||op==="config"&&out.scheduleConfigOp===
47
- "push";if(op==="config"&&out.scheduleConfigOp===void 0){out.unknown.push("schedule config \u306B\u306F pull \u304B push \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044")}if(op==="delete"&&out.scheduleId===void 0)out.unknown.push("schedule delete \u306B\u306F\u5B9A\u7FA9ID\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044");if(takesFile&&out.charterFile===void 0)out.unknown.push(`schedule ${op==="push"?"push":"config push"} \u306B\u306F --file <\u30D1\u30B9> \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044`);
48
- if(!takesFile&&out.charterFile!==void 0)out.unknown.push("--file");if(!(op==="config"&&out.scheduleConfigOp==="pull")&&out.charterOut!==void 0)out.unknown.push("--out");if((op==="list"||op==="config"&&out.scheduleConfigOp!=="push")&&out.charterRevision!==void 0){out.unknown.push("--revision")}if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==
49
- void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"){if(out.charterFile!==void 0)out.unknown.push("--file");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.charterRevision!==void 0)out.unknown.push("--revision")}if(out.command==="task-loop"&&out.taskLoopAction!=="skill"){if(out.skillDir!==void 0)out.unknown.push("--dir");if(out.skillAll)out.unknown.push("--all");if(out.skillConfig!==void 0)out.unknown.push(
50
- "--config")}if(out.command==="task-loop"&&out.taskLoopAction!=="skill"&&out.taskLoopAction!=="charter"){if(out.revisionFrom!==void 0)out.unknown.push("--from");if(out.revisionTo!==void 0)out.unknown.push("--to")}if(out.command==="task-loop"&&out.taskLoopAction!=="plan"){if(out.planEmpty)out.unknown.push("--empty");if(out.planCheck)out.unknown.push("--check")}return out}function isScheduleOp(raw){return raw==="list"||raw==="push"||raw==="delete"||raw==="config"}function isSkillManageOp(raw){return raw===
51
- "list"||raw==="show"||raw==="delete"}var SKILL_OP_REQUIRED="skill \u306B\u306F push / pull / list / show / delete / history / diff / revert / check \u306E\u3044\u305A\u308C\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044";function isRevisionAwareOp(raw){return raw==="push"||raw==="pull"||raw==="history"||raw==="diff"||raw==="revert"}function pushRevisionFlagErrors(out,op){if(op!=="diff"&&out.revisionFrom!==void 0)out.unknown.push("--from");if(op!=="diff"&&op!=="revert"&&out.revisionTo!==
52
- void 0)out.unknown.push("--to")}export{BUILTIN_COMMANDS,TASK_LOOP_ACTIONS,VALUE_FLAGS,GLOBAL_FLAGS,parseArgv};
File without changes