weaver-work-cli 0.1.39 → 0.1.42

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 (197) hide show
  1. package/README.md +4 -2
  2. package/dist/chunks/{archive-ENZYBBME.js → archive-J4I6MCKF.js} +2 -2
  3. package/dist/chunks/{archive-oa-YWLEC5V4.js → archive-oa-BRZKKTO4.js} +2 -2
  4. package/dist/chunks/{asset-OOV6DWPA.js → asset-L7D4FAOZ.js} +2 -2
  5. package/dist/chunks/{asset-idle-RE632MY5.js → asset-idle-DADLLV75.js} +2 -2
  6. package/dist/chunks/{attachment-content-RWN2FCLL.js → attachment-content-K4C7VLWQ.js} +3 -3
  7. package/dist/chunks/{blog-PEPOJAL7.js → blog-BVGQ7NZL.js} +2 -2
  8. package/dist/chunks/{caizhilian-WYIQDVPJ.js → caizhilian-SAADNFD6.js} +2 -2
  9. package/dist/chunks/{calendar-CIARBAOX.js → calendar-Q7NQY5Z2.js} +61 -23
  10. package/dist/chunks/{chunk-F2EQXUEE.js → chunk-3KTFS4IA.js} +397 -159
  11. package/dist/chunks/{chunk-G2JSIUWF.js → chunk-4PD5NWAX.js} +89 -0
  12. package/dist/chunks/{chunk-HJYVHXUQ.js → chunk-4RAE6JXP.js} +1 -1
  13. package/dist/chunks/{chunk-CQHGNCK2.js → chunk-72CKAUAG.js} +41 -8
  14. package/dist/chunks/{chunk-K3RUEEOL.js → chunk-APVFJUQH.js} +2 -2
  15. package/dist/chunks/{chunk-BJGXMFGD.js → chunk-BBKDXQEC.js} +2 -2
  16. package/dist/chunks/chunk-BIPYLLVS.js +501 -0
  17. package/dist/chunks/{chunk-GVPJZXJ2.js → chunk-EKWAQSLU.js} +92 -50
  18. package/dist/chunks/{chunk-XXJOSZTQ.js → chunk-FOAA27U5.js} +381 -57
  19. package/dist/chunks/{chunk-I2HB737U.js → chunk-G4UR6NXN.js} +2 -2
  20. package/dist/chunks/{chunk-YS5DPN4T.js → chunk-GEWYMQME.js} +1 -1
  21. package/dist/chunks/{chunk-P2DAISYW.js → chunk-GHXCDPTM.js} +1 -1
  22. package/dist/chunks/{chunk-L4N7B7ZD.js → chunk-IZ7S7QUS.js} +4 -4
  23. package/dist/chunks/{chunk-NLK2RZKG.js → chunk-JPRO6ER2.js} +122 -2214
  24. package/dist/chunks/{chunk-36DIFZAH.js → chunk-LADPYOWC.js} +2 -2
  25. package/dist/chunks/chunk-LDZQPUIA.js +1238 -0
  26. package/dist/chunks/chunk-NKZRQXST.js +2546 -0
  27. package/dist/chunks/{chunk-EINRJHQ3.js → chunk-QKNKR4RH.js} +3 -3
  28. package/dist/chunks/{chunk-T7JDJJ7H.js → chunk-R4CHUSKC.js} +126 -19
  29. package/dist/chunks/{chunk-EZGFHJFW.js → chunk-SA6VBIHY.js} +88 -15
  30. package/dist/chunks/{chunk-ZXRNHZTE.js → chunk-TTPJJJC4.js} +2 -2
  31. package/dist/chunks/{chunk-KTCB5R5H.js → chunk-W7BEHOSR.js} +2 -2
  32. package/dist/chunks/{chunk-MUQUHKPG.js → chunk-YRSZQUD2.js} +2 -2
  33. package/dist/chunks/{conflict-DRMDOL56.js → conflict-F2OMZRTO.js} +2 -2
  34. package/dist/chunks/{contract-73MERZWN.js → contract-5BETHRSG.js} +2 -2
  35. package/dist/chunks/{cowork-HNGBPD7A.js → cowork-3MN6EQQO.js} +27 -10
  36. package/dist/chunks/create-flow-5FQNNMVO.js +55 -0
  37. package/dist/chunks/{ebuilder-form-OY6DVNRK.js → ebuilder-form-SBHOYBUD.js} +3 -3
  38. package/dist/chunks/{ehr-RAQNEQO7.js → ehr-KMOJULKG.js} +432 -1234
  39. package/dist/chunks/env-LB7NBL2O.js +19 -0
  40. package/dist/chunks/{esb-6XV7C7YV.js → esb-W2PJCFCX.js} +4 -4
  41. package/dist/chunks/factory-6ZFQXQ46.js +30 -0
  42. package/dist/chunks/{fna-XTSRB7G7.js → fna-ZQPCUV4R.js} +2 -2
  43. package/dist/chunks/group-chat-2HHAJN46.js +20 -0
  44. package/dist/chunks/{host-YMBXWFWX.js → host-4CBHGOHT.js} +3 -3
  45. package/dist/chunks/{host-A7J6GDUP.js → host-ATKVNZAT.js} +3 -3
  46. package/dist/chunks/{host-3F5UM5GN.js → host-BQH22NTQ.js} +3 -3
  47. package/dist/chunks/{host-YAQAPYNP.js → host-X2CSLFM6.js} +3 -3
  48. package/dist/chunks/{host-VGPVP7YF.js → host-YTODKMSL.js} +3 -3
  49. package/dist/chunks/{hrm-TLHKC545.js → hrm-FFM4UJFS.js} +4 -4
  50. package/dist/chunks/{im-YOUCFMUK.js → im-VEHKDQPB.js} +8 -8
  51. package/dist/chunks/{invoice-WNBS2B4C.js → invoice-LVIKSIIF.js} +3 -3
  52. package/dist/chunks/{jiuchuanhui-XABWS5RN.js → jiuchuanhui-X6DINO5P.js} +2 -2
  53. package/dist/chunks/{lazy-dispatch-NLZ5UQQI.js → lazy-dispatch-KSWTN5L6.js} +4 -4
  54. package/dist/chunks/{mail-LRYMBFNL.js → mail-VDKRGUD3.js} +9 -4
  55. package/dist/chunks/{meeting-ESXL6MFI.js → meeting-CLC6HP3Z.js} +12 -10
  56. package/dist/chunks/{okr-EOV65SSF.js → okr-CHG4OO3U.js} +2 -2
  57. package/dist/chunks/{plan-YFPVKW6Y.js → plan-XWR75667.js} +2 -2
  58. package/dist/chunks/{project-MDVZUYQW.js → project-5BXOOKMG.js} +40 -23
  59. package/dist/chunks/recruit-stage-DGMFNNDE.js +4507 -0
  60. package/dist/chunks/{registry-VT5Y2HLA.js → registry-7FFOXIAW.js} +4 -4
  61. package/dist/chunks/{registry-QCLZEDAP.js → registry-BKBZPBAJ.js} +10 -8
  62. package/dist/chunks/{registry-YX4CSEMD.js → registry-RHMW6ANW.js} +2 -2
  63. package/dist/chunks/{registry-NYPYMZXG.js → registry-Z43434VG.js} +1 -1
  64. package/dist/chunks/{room-recommend-L3MWH4JW.js → room-recommend-62H7ZQQ6.js} +4 -4
  65. package/dist/chunks/{schedule-UASAVDVD.js → schedule-FNXKH3DQ.js} +4 -4
  66. package/dist/chunks/{workflow-KDGIUCNW.js → workflow-ADHKCAJK.js} +4 -4
  67. package/dist/index.js +33 -28
  68. package/dist/internal/e10/auth/commands.js +110 -56
  69. package/dist/internal/e10/auth/messages.js +6 -0
  70. package/dist/internal/e10/auth/session.js +28 -1
  71. package/dist/internal/e10/auth/xiaoe.js +315 -48
  72. package/dist/internal/e10/auth-recovery.js +36 -5
  73. package/dist/internal/e10/client.js +13 -0
  74. package/dist/internal/e10/context.js +61 -9
  75. package/dist/internal/e10/index.js +1 -1
  76. package/dist/internal/e10/network-error.js +93 -0
  77. package/dist/internal/e10/request-runtime.js +15 -0
  78. package/dist/shortcuts/calendar/operations/read.js +31 -22
  79. package/dist/shortcuts/calendar/operations/write.js +45 -1
  80. package/dist/shortcuts/cowork/operations/discuss-write.js +5 -1
  81. package/dist/shortcuts/cowork/operations/item-write.js +5 -3
  82. package/dist/shortcuts/cowork/operations/member-write.js +3 -1
  83. package/dist/shortcuts/cowork/operations/permission-write.js +5 -1
  84. package/dist/shortcuts/cowork/operations/shared.js +7 -0
  85. package/dist/shortcuts/ehr/operations/attend-write.js +43 -1
  86. package/dist/shortcuts/ehr/operations/hr-contact.js +7 -4
  87. package/dist/shortcuts/ehr/operations/hr-report.js +13 -7
  88. package/dist/shortcuts/ehr/operations/recruit-candidate-import.js +134 -59
  89. package/dist/shortcuts/ehr/operations/recruit-write.js +262 -17
  90. package/dist/shortcuts/ehr/operations/recruit.js +10 -4
  91. package/dist/shortcuts/ehr/operations/shared.js +47 -0
  92. package/dist/shortcuts/hrm/operations/org.js +118 -0
  93. package/dist/shortcuts/index.js +5 -0
  94. package/dist/shortcuts/mail/operations/mail-send.js +8 -2
  95. package/dist/shortcuts/meeting/operations/eb/catalog.js +9 -2
  96. package/dist/shortcuts/meeting/operations/eb/create-flow.js +461 -127
  97. package/dist/shortcuts/meeting/operations/eb/crm-search.js +87 -5
  98. package/dist/shortcuts/meeting/operations/eb/factory.js +33 -0
  99. package/dist/shortcuts/meeting/operations/eb/flow-memory.js +49 -0
  100. package/dist/shortcuts/meeting/operations/eb/group-chat.js +605 -0
  101. package/dist/shortcuts/meeting/operations/eb/index.js +2 -0
  102. package/dist/shortcuts/meeting/operations/eb/person-cache.js +96 -0
  103. package/dist/shortcuts/meeting/operations/eb/room-recommend.js +44 -6
  104. package/dist/shortcuts/meeting/operations/eb/room-summary.js +2 -0
  105. package/dist/shortcuts/meeting/operations/eb/usage-cache.js +99 -0
  106. package/dist/shortcuts/meeting/operations/from-group-chat.js +35 -12
  107. package/dist/shortcuts/project/operations/read.js +6 -25
  108. package/dist/shortcuts/project/operations/shared.js +22 -0
  109. package/dist/shortcuts/project/operations/write.js +28 -2
  110. package/dist/shortcuts/recruit-stage/context.js +119 -0
  111. package/dist/shortcuts/recruit-stage/continuation.js +73 -0
  112. package/dist/shortcuts/recruit-stage/errors.js +65 -0
  113. package/dist/shortcuts/recruit-stage/host.js +109 -0
  114. package/dist/shortcuts/recruit-stage/index.js +115 -0
  115. package/dist/shortcuts/recruit-stage/manifest.js +29 -0
  116. package/dist/shortcuts/recruit-stage/operations/interview-arrange.js +722 -0
  117. package/dist/shortcuts/recruit-stage/operations/interview-feedback.js +269 -0
  118. package/dist/shortcuts/recruit-stage/operations/jd-create.js +630 -0
  119. package/dist/shortcuts/recruit-stage/operations/list.js +431 -0
  120. package/dist/shortcuts/recruit-stage/operations/registry.js +38 -0
  121. package/dist/shortcuts/recruit-stage/operations/resume-import.js +1198 -0
  122. package/dist/shortcuts/recruit-stage/operations/search.js +158 -0
  123. package/dist/shortcuts/recruit-stage/operations/types.js +25 -0
  124. package/dist/shortcuts/recruit-stage/school-tiers.json +318 -0
  125. package/dist/shortcuts/recruit-stage/shared.js +608 -0
  126. package/dist/shortcuts/workflow/operations/form.js +21 -2
  127. package/dist/shortcuts/workflow/operations/todoSmartConvert/aigroupRules.js +52 -1
  128. package/dist/shortcuts/workflow/operations/todoSmartConvert/detailFieldRules.js +4 -2
  129. package/dist/shortcuts/workflow/operations/todoSmartConvert/summaryCache.js +19 -11
  130. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoDetailCache.js +17 -24
  131. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoDetailFetcher.js +14 -9
  132. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.collect.js +78 -10
  133. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.core.js +3 -1
  134. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.detail.js +17 -11
  135. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.group.js +16 -40
  136. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.groupSummary.js +3 -2
  137. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.js +52 -15
  138. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.pipeline.js +16 -1
  139. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.smartGroup.js +151 -63
  140. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.subGroup.js +56 -0
  141. package/dist/shortcuts/workflow/operations/todoSmartConvert/todoSmartConvert.summary.js +53 -16
  142. package/docs/e10-auth.md +22 -1
  143. package/docs/operation-manual.md +8 -0
  144. package/package.json +1 -1
  145. package/scripts/install-skill-to-xiaoe.mjs +105 -0
  146. package/scripts/mcp-meeting.mjs +234 -0
  147. package/scripts/package-skill.mjs +4 -2
  148. package/skill-template/business-info.json +24 -0
  149. package/skill-template/domains/recruit-stage.md +29 -0
  150. package/skills/weaver-e10-calendar/SKILL.md +2 -1
  151. package/skills/weaver-e10-calendar/references/calendar-write.md +54 -0
  152. package/skills/weaver-e10-cowork/SKILL.md +1 -1
  153. package/skills/weaver-e10-cowork/references/cowork-write.md +3 -1
  154. package/skills/weaver-e10-jucailin/SKILL.md +1 -1
  155. package/skills/weaver-e10-jucailin/references/attend-write.md +8 -0
  156. package/skills/weaver-e10-jucailin/references/hr-contact.md +8 -0
  157. package/skills/weaver-e10-jucailin/references/hr-report.md +8 -0
  158. package/skills/weaver-e10-jucailin/references/recruit-create.md +2 -2
  159. package/skills/weaver-e10-jucailin/references/recruit-read.md +1 -1
  160. package/skills/weaver-e10-jucailin/references/recruit-write.md +4 -3
  161. package/skills/weaver-e10-mail/SKILL.md +1 -1
  162. package/skills/weaver-e10-mail/references/mail-send.md +2 -0
  163. package/skills/weaver-e10-meeting/SKILL.md +119 -26
  164. package/skills/weaver-e10-meeting/references/meeting-minute-file.md +25 -11
  165. package/skills/weaver-e10-meeting.zip +0 -0
  166. package/skills/weaver-e10-recruit-stage/SKILL.md +226 -0
  167. package/skills/weaver-e10-recruit-stage/agents/openai.yaml +119 -0
  168. package/skills/weaver-e10-recruit-stage/lib/recruit-xiaoe-file.mjs +188 -0
  169. package/skills/weaver-e10-recruit-stage/references/recruit-arrange-interview.md +322 -0
  170. package/skills/weaver-e10-recruit-stage/references/recruit-capability-check.md +127 -0
  171. package/skills/weaver-e10-recruit-stage/references/recruit-check-install.md +65 -0
  172. package/skills/weaver-e10-recruit-stage/references/recruit-detail-process.md +63 -0
  173. package/skills/weaver-e10-recruit-stage/references/recruit-edit-interview-feedback.md +142 -0
  174. package/skills/weaver-e10-recruit-stage/references/recruit-jd-create.md +73 -0
  175. package/skills/weaver-e10-recruit-stage/references/recruit-jd-template.md +56 -0
  176. package/skills/weaver-e10-recruit-stage/references/recruit-list-candidate.md +101 -0
  177. package/skills/weaver-e10-recruit-stage/references/recruit-list-interview.md +148 -0
  178. package/skills/weaver-e10-recruit-stage/references/recruit-match-candidates.md +77 -0
  179. package/skills/weaver-e10-recruit-stage/references/recruit-output-links.md +59 -0
  180. package/skills/weaver-e10-recruit-stage/references/recruit-resolve-creator.md +69 -0
  181. package/skills/weaver-e10-recruit-stage/references/recruit-resolve-metadata.md +241 -0
  182. package/skills/weaver-e10-recruit-stage/references/recruit-resume-import.md +438 -0
  183. package/skills/weaver-e10-recruit-stage/references/recruit-resume-parse.md +128 -0
  184. package/skills/weaver-e10-recruit-stage/references/recruit-search-candidate.md +146 -0
  185. package/skills/weaver-e10-recruit-stage/references/recruit-urge-feedback.md +69 -0
  186. package/skills/weaver-e10-shared/SKILL.md +2 -2
  187. package/skills/weaver-e10-shared/references/e10-auth-and-session.md +4 -2
  188. package/skills/weaver-e10-shijingran/SKILL.md +3 -2
  189. package/skills/weaver-e10-shijingran/references/operations.md +3 -1
  190. package/skills/weaver-e10-shijingran/references/source-manifest.json +41 -40
  191. package/skills/weaver-e10-shijingran/references/write-operations.md +2 -0
  192. package/skills/weaver-e10-workflow/SKILL.md +7 -1
  193. package/skills/weaver-e10-workflow/aigroup/default.json +23 -9
  194. package/skills/weaver-e10-workflow/references/todo-smart-convert.md +37 -21
  195. package/skills/weaver-e10-workflow/tools/todo-summary.cjs +135 -43
  196. package/skills/weaver-e10-yepiaotong/SKILL.md +9 -10
  197. package/skills/weaver-e10-yepiaotong/references/invoice-agent-entry.md +6 -3
@@ -126,8 +126,97 @@ var orgDetail = {
126
126
  });
127
127
  }
128
128
  };
129
+ var orgLookup = {
130
+ name: "hrm.org.lookup",
131
+ resource: "org",
132
+ method: "org.lookup",
133
+ action: "hrm.org.lookup",
134
+ summary: "\u7EC4\u7EC7\u6A21\u7CCA\u67E5\u627E\uFF1A\u5173\u952E\u8BCD**\u4E0D\u7528\u5199\u5168**\uFF0C\u4E00\u6B21\u8FD4\u56DE\u6240\u6709\u8FD1\u4F3C\u7684\u90E8\u95E8/\u5206\u90E8\uFF08\u542B\u5B8C\u6574\u8DEF\u5F84\u3001\u6309\u76F8\u4F3C\u5EA6\u6392\u5E8F\uFF09",
135
+ risk: READ,
136
+ inputSchema: schemaOf({
137
+ keyword: { type: "string", minLength: 1, description: "\u90E8\u95E8/\u5206\u90E8\u540D\u79F0\u5173\u952E\u8BCD\uFF08\u53EF\u53EA\u5199\u4E00\u90E8\u5206\uFF0C\u5982\u300C\u4F1A\u8BAE\u7BA1\u7406\u300D\u300C\u7814\u53D1\u300D\uFF09" },
138
+ type: { type: "string", enum: ["department", "subcompany", "both"], description: "\u9ED8\u8BA4 both\uFF08\u90E8\u95E8+\u5206\u90E8\u90FD\u67E5\uFF09" },
139
+ limit: { type: "number", minimum: 1, maximum: 50, description: "\u6700\u591A\u8FD4\u56DE\u6761\u6570\uFF0C\u9ED8\u8BA4 10" }
140
+ }, { required: ["keyword"] }),
141
+ handler: async (args, { host }) => {
142
+ const keyword = String(args.keyword ?? "").trim();
143
+ if (!keyword) throw hrmValidationError("keyword_required", "keyword \u5FC5\u586B");
144
+ const scope = args.type === "department" || args.type === "subcompany" ? String(args.type) : "both";
145
+ const limit = Math.max(1, Math.min(50, Number(args.limit) || 10));
146
+ const fetchOrg = async (type, text2) => {
147
+ const body = {
148
+ ...browserBaseBody(),
149
+ virtualType: "ALL",
150
+ cmd: "list",
151
+ formDatas: { name: [{ nameCondition: { id: "in", content: "\u5305\u542B", disabled: false }, name: text2 }] },
152
+ quickSearchDatas: {},
153
+ type: "and",
154
+ stopDepartment: false,
155
+ current: 1,
156
+ pageSize: 200
157
+ };
158
+ const path = type === "subcompany" ? "/api/hrm/common/browser/data/subcompany" : "/api/hrm/common/browser/data/department";
159
+ const resp = await host.request({ method: "POST", path, body });
160
+ const rows2 = resp?.data?.data ?? [];
161
+ return rows2.map((r) => ({
162
+ id: String(r.id ?? ""),
163
+ name: String(r.name ?? ""),
164
+ type,
165
+ fullPath: String(r.fullPath ?? r.path ?? ""),
166
+ ...r.subcompanyName ? { subcompanyName: String(r.subcompanyName) } : {},
167
+ ...r.parentName ? { parentName: String(r.parentName) } : {}
168
+ })).filter((r) => r.id);
169
+ };
170
+ const types = scope === "both" ? ["department", "subcompany"] : [scope];
171
+ const collected = [];
172
+ let requests = 0;
173
+ const stripSuffix = (text2) => text2.replace(/(部门|事业部|中心|科室|组|部)$/u, "").trim();
174
+ for (const type of types) {
175
+ requests += 1;
176
+ collected.push(...await fetchOrg(type, keyword));
177
+ const stripped = stripSuffix(keyword);
178
+ if (collected.length === 0 && stripped !== "" && stripped !== keyword) {
179
+ const raws = await fetchOrg(type, stripped);
180
+ collected.push(...raws.map((row) => ({ ...row, stripped: true })));
181
+ requests += 1;
182
+ }
183
+ if (collected.length === 0) {
184
+ for (let len = Math.min(keyword.length, 6) - 1; len >= 2; len -= 1) {
185
+ const short = keyword.slice(0, len);
186
+ const raws = await fetchOrg(type, short);
187
+ requests += 1;
188
+ if (raws.length > 0) {
189
+ collected.push(...raws.map((row) => ({ ...row, shortened: short })));
190
+ break;
191
+ }
192
+ }
193
+ }
194
+ }
195
+ const scoreOf = (row) => {
196
+ const name = String(row.name);
197
+ const pathText = String(row.fullPath ?? "");
198
+ let score = 0;
199
+ if (name === keyword) score = 100;
200
+ else if (name.startsWith(keyword)) score = 85;
201
+ else if (name.includes(keyword)) score = 70;
202
+ else if (pathText.includes(keyword)) score = 50;
203
+ else score = 35;
204
+ if (row.type === "department") score += 5;
205
+ if (row.stripped) score -= 5;
206
+ if (row.shortened) score -= 15;
207
+ return score;
208
+ };
209
+ const rows = collected.map((row) => ({ ...row, score: scoreOf(row) })).sort((left, right) => Number(right.score) - Number(left.score) || String(left.name).localeCompare(String(right.name), "zh-Hans-CN")).slice(0, limit);
210
+ return hrmSuccess("hrm.org.lookup", {
211
+ rows,
212
+ total: rows.length,
213
+ ...rows.length === 0 ? { hint: `\u6CA1\u6709\u540D\u79F0\u542B\u300C${keyword}\u300D\u7684\u90E8\u95E8\u6216\u5206\u90E8\u3002\u6362\u66F4\u77ED\u7684\u5173\u952E\u8BCD\uFF08\u5982\u4E24\u4E2A\u5B57\uFF09\u518D\u8BD5\uFF0C\u6216\u7528 hrm.org.query \u6309 parent/subcompany \u9010\u7EA7\u627E\u3002` } : {}
214
+ }, { requests, keyword });
215
+ }
216
+ };
129
217
  var hrmOrgOperations = [
130
218
  orgQuery,
219
+ orgLookup,
131
220
  orgDetail
132
221
  ];
133
222
 
@@ -2,7 +2,7 @@ import { createRequire as __esbuildCreateRequire } from 'node:module';
2
2
  const require = __esbuildCreateRequire(import.meta.url);
3
3
  import {
4
4
  isEsbFlowUnavailable
5
- } from "./chunk-BJGXMFGD.js";
5
+ } from "./chunk-BBKDXQEC.js";
6
6
  import {
7
7
  esbValidationError
8
8
  } from "./chunk-GPMFD4RD.js";
@@ -4,6 +4,9 @@ import {
4
4
  CliError
5
5
  } from "./chunk-LUSPKZKY.js";
6
6
 
7
+ // src/shortcuts/meeting/operations/eb/factory.ts
8
+ import { createHash } from "node:crypto";
9
+
7
10
  // src/shortcuts/meeting/errors.ts
8
11
  var MeetingCliError = class extends CliError {
9
12
  type;
@@ -194,9 +197,6 @@ async function assertMeetingExists(id, host, operation) {
194
197
  }
195
198
  }
196
199
 
197
- // src/shortcuts/meeting/operations/eb/factory.ts
198
- import { createHash } from "node:crypto";
199
-
200
200
  // src/shortcuts/meeting/operations/eb/attendance-summary.ts
201
201
  function toText(value) {
202
202
  return value === void 0 || value === null ? "" : String(value).trim();
@@ -378,7 +378,9 @@ function summarizeRoomRows(rows) {
378
378
  allowMinNum: toText2(main.allow_minnum),
379
379
  allowMaxNum: toText2(main.allow_maxnum),
380
380
  place: toText2(main.place),
381
- equipments: toText2(main.equipments)
381
+ equipments: toText2(main.equipments),
382
+ // 会议室描述:列表接口本来就返回 `room_desc`(2026-11-02 核实),之前漏映射导致推荐时用不上
383
+ roomDesc: toText2(main.room_desc)
382
384
  };
383
385
  });
384
386
  return {
@@ -697,9 +699,12 @@ var EB_ENDPOINTS = [
697
699
  "hrmmember",
698
700
  "attend_user",
699
701
  "reporting_user",
700
- "topic_presenter",
701
- "request_id"
702
+ "topic_presenter"
702
703
  ],
704
+ // 群 id 走 body `datajson.mainTable` 精确匹配(2026-11-02 实测:按它查回 1 条,准)。
705
+ // ⛔ `request_id` 不能当筛选条件:接口文档里它**不是入参**,URL query 传了被忽略,
706
+ // 出参是「按显示名称」(返回流程标题,不是单号)—— 想按单号找会议,只能取列表再逐条 detail 比对。
707
+ mainTableParams: ["imchat_groupid"],
703
708
  summary: "EB \u7248\u4F1A\u8BAE\u5217\u8868\uFF08query_mtDetail_list + count\uFF09\uFF1AURL query \u4F20\u7B5B\u9009\u6761\u4EF6\uFF0Cbody \u5E26 datajson",
704
709
  notes: [
705
710
  "hrmmember \u7B49\u4EBA\u5458\u53C2\u6570\u5FC5\u987B\u4F20\u5458\u5DE5 id\uFF0C\u4E0D\u80FD\u4F20\u59D3\u540D\u6587\u672C\u3002",
@@ -837,7 +842,9 @@ var EB_ENDPOINTS = [
837
842
  interfacePk: "query_roomusage_list",
838
843
  countPk: "query_roomusage_count",
839
844
  queryParams: ["mt_id", "address", "enddatetime", "begindatetime"],
840
- summary: "EB \u7248\u4F1A\u8BAE\u5BA4\u5360\u7528\u5217\u8868\uFF08query_roomusage_list + count\uFF09"
845
+ dateFilter: true,
846
+ paramAliases: { roomId: "address", room_id: "address", day: "date" },
847
+ summary: "EB \u7248\u4F1A\u8BAE\u5BA4\u5360\u7528\u5217\u8868\uFF08query_roomusage_list + count\uFF09\u3002\u6309\u65E5\u671F\u8FC7\u6EE4\u4F20 date\uFF08yyyy-MM-dd\uFF09\u6216 begindatetime/enddatetime\uFF1B**\u4E0D\u4F20\u4EFB\u4F55\u65F6\u95F4\u6761\u4EF6 = \u8FD4\u56DE\u5168\u91CF\u5386\u53F2**\uFF0C\u4E0D\u662F\u63A5\u53E3\u4E0D\u652F\u6301\u8FC7\u6EE4"
841
848
  },
842
849
  {
843
850
  domain: "roomUsage",
@@ -1683,6 +1690,16 @@ function buildReadInputSchema(endpoint) {
1683
1690
  for (const param of endpoint.queryParams ?? []) {
1684
1691
  properties[param] = { type: "string", description: `EB \u7B5B\u9009\u53C2\u6570\uFF08URL \u5360\u4F4D\u7B26\u540D ${param}\uFF09` };
1685
1692
  }
1693
+ if (endpoint.dateFilter) {
1694
+ properties.date = {
1695
+ type: "string",
1696
+ pattern: "^\\d{4}-\\d{2}-\\d{2}$",
1697
+ description: "\u6309\u65E5\u671F\u8FC7\u6EE4\uFF08yyyy-MM-dd\uFF09\uFF1A\u7B49\u4EF7\u4E8E begindatetime=\u5F53\u5929 00:00 + enddatetime=\u5F53\u5929 23:59\u3002\u26D4 \u4E0D\u4F20 date \u4E14\u4E0D\u4F20\u8D77\u6B62\u65F6\u95F4 = \u8FD4\u56DE**\u5168\u91CF\u5386\u53F2**\uFF08\u4E0D\u662F\u63A5\u53E3\u4E0D\u652F\u6301\u6309\u65E5\u671F\u8FC7\u6EE4\uFF09"
1698
+ };
1699
+ }
1700
+ for (const [alias, target] of Object.entries(endpoint.paramAliases ?? {})) {
1701
+ properties[alias] = { type: "string", description: `\u5165\u53C2\u522B\u540D\uFF0C\u7B49\u4EF7\u4E8E ${target}` };
1702
+ }
1686
1703
  for (const param of endpoint.mainTableParams ?? []) {
1687
1704
  properties[param] = {
1688
1705
  type: "string",
@@ -1766,6 +1783,21 @@ function buildReadOperation(endpoint) {
1766
1783
  const value = args[param];
1767
1784
  if (value !== void 0 && value !== null && value !== "") query[param] = value;
1768
1785
  }
1786
+ for (const [alias, target] of Object.entries(endpoint.paramAliases ?? {})) {
1787
+ const value = args[alias];
1788
+ if (value === void 0 || value === null || value === "") continue;
1789
+ if (query[target] === void 0) {
1790
+ if (target === "date") continue;
1791
+ query[target] = value;
1792
+ }
1793
+ }
1794
+ if (endpoint.dateFilter) {
1795
+ const day = String(args.date ?? args.day ?? "").trim().slice(0, 10);
1796
+ if (/^\d{4}-\d{2}-\d{2}$/.test(day)) {
1797
+ if (query.begindatetime === void 0) query.begindatetime = `${day} 00:00`;
1798
+ if (query.enddatetime === void 0) query.enddatetime = `${day} 23:59`;
1799
+ }
1800
+ }
1769
1801
  if (endpoint.kind === "get") {
1770
1802
  const response2 = await env.host.request({
1771
1803
  method: "POST",
@@ -2251,7 +2283,7 @@ function buildWriteOperations(endpoint, preflight, afterWrite) {
2251
2283
  );
2252
2284
  }
2253
2285
  if (endpoint.interfacePk === "create_meeting") {
2254
- const { fetchEbAppSettings, assertEbCreatePathAllowed } = await import("./conflict-DRMDOL56.js");
2286
+ const { fetchEbAppSettings, assertEbCreatePathAllowed } = await import("./conflict-F2OMZRTO.js");
2255
2287
  assertEbCreatePathAllowed(await fetchEbAppSettings(env, applyName));
2256
2288
  }
2257
2289
  const pkQuery = writePkQuery(endpoint, payload);
@@ -2335,6 +2367,7 @@ export {
2335
2367
  queryBody,
2336
2368
  writeBody,
2337
2369
  extractEbRows,
2370
+ extractEbCount,
2338
2371
  normalizeEbWrite,
2339
2372
  buildEbOperations
2340
2373
  };
@@ -9,11 +9,11 @@ import {
9
9
  createE10RequestRuntime,
10
10
  isE10AuthenticationRequired,
11
11
  requireE10Session
12
- } from "./chunk-EZGFHJFW.js";
12
+ } from "./chunk-SA6VBIHY.js";
13
13
  import {
14
14
  E10_SESSION_EXPIRED_MESSAGE,
15
15
  getActiveProfile
16
- } from "./chunk-XXJOSZTQ.js";
16
+ } from "./chunk-FOAA27U5.js";
17
17
 
18
18
  // src/shortcuts/workflow/host.ts
19
19
  var DEFAULT_TIMEOUT_MS = 3e4;
@@ -14,11 +14,11 @@ import {
14
14
  createE10RequestRuntime,
15
15
  isE10SessionExpiredResponse,
16
16
  requireE10Session
17
- } from "./chunk-EZGFHJFW.js";
17
+ } from "./chunk-SA6VBIHY.js";
18
18
  import {
19
19
  E10_SESSION_EXPIRED_MESSAGE,
20
20
  getActiveProfile
21
- } from "./chunk-XXJOSZTQ.js";
21
+ } from "./chunk-FOAA27U5.js";
22
22
 
23
23
  // src/shortcuts/esb/host.ts
24
24
  var ESB_PATHS = {