careerclaw-js 1.4.0 → 1.6.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.
package/CHANGELOG.md CHANGED
@@ -6,6 +6,27 @@ Versioning follows [Semantic Versioning](https://semver.org/).
6
6
 
7
7
  ---
8
8
 
9
+ ## [1.6.0](https://github.com/orestes-garcia-martinez/careerclaw-js/compare/careerclaw-js-v1.5.0...careerclaw-js-v1.6.0) (2026-04-01)
10
+
11
+
12
+ ### Features
13
+
14
+ * **matching:** add hybrid semantic matching via skill taxonomy ([#46](https://github.com/orestes-garcia-martinez/careerclaw-js/issues/46)) ([004283a](https://github.com/orestes-garcia-martinez/careerclaw-js/commit/004283af86f27ad0b105cbb5fa4ee196d4f99fc2))
15
+
16
+ ## [1.5.0](https://github.com/orestes-garcia-martinez/careerclaw-js/compare/careerclaw-js-v1.4.0...careerclaw-js-v1.5.0) (2026-03-30)
17
+
18
+
19
+ ### Features
20
+
21
+ * **models:** expose resume_intel on BriefingResult ([18fb459](https://github.com/orestes-garcia-martinez/careerclaw-js/commit/18fb459d6a394d47acbdda8fef4a4b470575594c))
22
+ * **models:** expose resume_intel on BriefingResult ([c475616](https://github.com/orestes-garcia-martinez/careerclaw-js/commit/c4756162aaf63c6fd3cc42748c8aa33e51462aba))
23
+
24
+
25
+ ### Documentation
26
+
27
+ * slim CLAUDE.md and move knowledge into on-demand skills ([ef4b0c8](https://github.com/orestes-garcia-martinez/careerclaw-js/commit/ef4b0c821df7488be670181f611b6920ccbd7b89))
28
+ * slim CLAUDE.md and move knowledge into on-demand skills ([8b20f9c](https://github.com/orestes-garcia-martinez/careerclaw-js/commit/8b20f9c6d0612ce9c1406bb97018eb0cba7e4283))
29
+
9
30
  ## [1.4.0](https://github.com/orestes-garcia-martinez/careerclaw-js/compare/careerclaw-js-v1.3.0...careerclaw-js-v1.4.0) (2026-03-28)
10
31
 
11
32
 
package/SKILL.md CHANGED
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: CareerClaw
3
- version: 1.4.0
3
+ version: 1.6.0
4
4
  description: >
5
5
  Run a job search briefing, find job matches, draft outreach emails,
6
6
  or track job applications. Triggers on: daily briefing, job search,
@@ -22,6 +22,7 @@ export interface BriefingOptions {
22
22
  fetchFn?: () => Promise<FetchResult>;
23
23
  repo?: TrackingRepository;
24
24
  resumeIntel?: ResumeIntelligence;
25
+ resumeText?: string;
25
26
  proKey?: string;
26
27
  enhanceFetchFn?: EnhanceOptions["fetchFn"];
27
28
  licenseFetchFn?: CheckLicenseOptions["fetchFn"];
@@ -37,6 +38,7 @@ export interface ContextBriefingOptions {
37
38
  fetchFn?: () => Promise<FetchResult>;
38
39
  repo?: TrackingRepository;
39
40
  resumeIntel?: ResumeIntelligence;
41
+ resumeText?: string;
40
42
  enhanceFetchFn?: EnhanceOptions["fetchFn"];
41
43
  /** 0-based indices into the matches array to generate cover letters for. */
42
44
  coverLetterMatchIndices?: number[];
@@ -1 +1 @@
1
- {"version":3,"file":"briefing.d.ts","sourceRoot":"","sources":["../src/briefing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EAET,WAAW,EACX,iBAAiB,EAEjB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAG9D,OAAO,EAAqC,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EAAgB,KAAK,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGnD,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IACrC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,cAAc,CAAC,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IACnC,sEAAsE;IACtE,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IACrC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,cAAc,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,4EAA4E;IAC5E,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IACnC,sEAAsE;IACtE,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;CACpC;AAcD,wBAAsB,WAAW,CAC/B,OAAO,EAAE,WAAW,EACpB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,cAAc,CAAC,CAWzB;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,sBAAsB,EAC/B,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,cAAc,CAAC,CAKzB;AA8KD,MAAM,WAAW,kBAAkB;IACjC,iEAAiE;IACjE,cAAc,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,0EAA0E;IAC1E,cAAc,CAAC,EAAE,iBAAiB,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,kBAAkB,EAC/B,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,WAAW,CAAC,CAkCtB;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,kBAAkB,GAC9B,iBAAiB,CAQnB"}
1
+ {"version":3,"file":"briefing.d.ts","sourceRoot":"","sources":["../src/briefing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EAET,WAAW,EACX,iBAAiB,EAEjB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAG9D,OAAO,EAAqC,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EAAgB,KAAK,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGnD,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IACrC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,cAAc,CAAC,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IACnC,sEAAsE;IACtE,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IACrC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,4EAA4E;IAC5E,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IACnC,sEAAsE;IACtE,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;CACpC;AAcD,wBAAsB,WAAW,CAC/B,OAAO,EAAE,WAAW,EACpB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,cAAc,CAAC,CAWzB;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,sBAAsB,EAC/B,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,cAAc,CAAC,CAKzB;AAyLD,MAAM,WAAW,kBAAkB;IACjC,iEAAiE;IACjE,cAAc,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,0EAA0E;IAC1E,cAAc,CAAC,EAAE,iBAAiB,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,kBAAkB,EAC/B,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,WAAW,CAAC,CAkCtB;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,kBAAkB,GAC9B,iBAAiB,CAQnB"}
package/dist/briefing.js CHANGED
@@ -13,12 +13,12 @@
13
13
  import { randomUUID } from "crypto";
14
14
  import { createRequire } from "module";
15
15
  import { fetchAllJobs } from "./sources.js";
16
- import { rankJobs } from "./matching/index.js";
16
+ import { rankJobs, rankJobsHybrid } from "./matching/index.js";
17
17
  import { draftOutreach, buildTemplateCoverLetter } from "./drafting.js";
18
18
  import { enhanceDraft, generateCoverLetter } from "./llm-enhance.js";
19
19
  import { checkLicense } from "./license.js";
20
20
  import { TrackingRepository } from "./tracking.js";
21
- import { DEFAULT_TOP_K, FREE_TOP_K, PRO_TOP_K } from "./config.js";
21
+ import { DEFAULT_TOP_K, FREE_TOP_K, PRO_TOP_K, SEMANTIC_MATCHING } from "./config.js";
22
22
  import { gapAnalysis } from "./gap.js";
23
23
  import { CAREERCLAW_FEATURES, hasCareerClawFeature, } from "./execution-context.js";
24
24
  export async function runBriefing(profile, options = {}) {
@@ -40,7 +40,7 @@ export async function runBriefingWithContext(profile, context, options = {}) {
40
40
  });
41
41
  }
42
42
  async function runBriefingInternal(profile, options, executionMode) {
43
- const { topK = DEFAULT_TOP_K, dryRun = false, fetchFn = fetchAllJobs, repo = new TrackingRepository({ dryRun }), resumeIntel, enhanceFetchFn, coverLetterMatchIndices = [], gapAnalysisMatchIndices = [], } = options;
43
+ const { topK = DEFAULT_TOP_K, dryRun = false, fetchFn = fetchAllJobs, repo = new TrackingRepository({ dryRun }), resumeIntel, resumeText, enhanceFetchFn, coverLetterMatchIndices = [], gapAnalysisMatchIndices = [], } = options;
44
44
  const isProActive = await resolvePremiumDraftAccess(executionMode, resumeIntel);
45
45
  // Enforce tier-aware topK ceiling — the engine must not trust the caller.
46
46
  // ClawOS checks the specific TOPK_EXTENDED feature (separate from draft access).
@@ -64,7 +64,15 @@ async function runBriefingInternal(profile, options, executionMode) {
64
64
  const fetchMs = Date.now() - fetchStart;
65
65
  const { jobs, counts: sourceCounts } = fetchResult;
66
66
  const rankStart = Date.now();
67
- const matches = jobs.length > 0 ? rankJobs(jobs, profile, clampedTopK) : [];
67
+ const matches = jobs.length === 0
68
+ ? []
69
+ : SEMANTIC_MATCHING.ENABLED
70
+ ? await rankJobsHybrid(jobs, profile, {
71
+ limit: clampedTopK,
72
+ ...(resumeText !== undefined ? { resumeText } : {}),
73
+ ...(resumeIntel !== undefined ? { resumeIntel } : {}),
74
+ })
75
+ : rankJobs(jobs, profile, clampedTopK);
68
76
  const rankMs = Date.now() - rankStart;
69
77
  const draftStart = Date.now();
70
78
  const drafts = await Promise.all(matches.map(async (scored) => {
@@ -135,6 +143,7 @@ async function runBriefingInternal(profile, options, executionMode) {
135
143
  run,
136
144
  matches,
137
145
  drafts,
146
+ resume_intel: resumeIntel ?? null,
138
147
  cover_letters: coverLetters,
139
148
  gap_analyses: gapAnalyses,
140
149
  tracking: {
@@ -1 +1 @@
1
- {"version":3,"file":"briefing.js","sourceRoot":"","sources":["../src/briefing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAYvC,OAAO,EAAE,YAAY,EAAoB,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAuB,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EAAE,YAAY,EAA4B,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,oBAAoB,GAErB,MAAM,wBAAwB,CAAC;AA2ChC,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAoB,EACpB,UAA2B,EAAE;IAE7B,OAAO,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE;QAC3C,IAAI,EAAE,YAAY;QAClB,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,GAAG,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS;YACtC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE;YAC5C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS;YACxC,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAAE;YAChD,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAoB,EACpB,OAA+B,EAC/B,UAAkC,EAAE;IAEpC,OAAO,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE;QAC3C,IAAI,EAAE,QAAQ;QACd,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,OAAoB,EACpB,OASC,EACD,aAAoC;IAEpC,MAAM,EACJ,IAAI,GAAG,aAAa,EACpB,MAAM,GAAG,KAAK,EACd,OAAO,GAAG,YAAY,EACtB,IAAI,GAAG,IAAI,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC,EACzC,WAAW,EACX,cAAc,EACd,uBAAuB,GAAG,EAAE,EAC5B,uBAAuB,GAAG,EAAE,GAC7B,GAAG,OAAO,CAAC;IAEZ,MAAM,WAAW,GAAG,MAAM,yBAAyB,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;IAEhF,0EAA0E;IAC1E,iFAAiF;IACjF,iFAAiF;IACjF,MAAM,eAAe,GACnB,aAAa,CAAC,IAAI,KAAK,QAAQ;QAC7B,CAAC,CAAC,oBAAoB,CAClB,aAAa,CAAC,OAAO,EACrB,mBAAmB,CAAC,aAAa,CAClC;QACH,CAAC,CAAC,WAAW,CAAC;IAClB,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;IACzD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAE5C,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACvC,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IAErC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC9B,IAAI,WAAwB,CAAC;IAC7B,IAAI,CAAC;QACH,WAAW,GAAG,MAAM,OAAO,EAAE,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,WAAW,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACrD,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC;IAExC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,WAAW,CAAC;IAEnD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAgB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IAEtC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAoB,MAAM,OAAO,CAAC,GAAG,CAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC3B,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC7E,IAAI,WAAW,IAAI,WAAW,EAAE,CAAC;YAC/B,OAAO,YAAY,CACjB,MAAM,CAAC,GAAG,EACV,OAAO,EACP,WAAW,EACX,QAAQ,EACR,MAAM,CAAC,YAAY,EACnB,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAChE,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CACH,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC;IAExC,yEAAyE;IACzE,MAAM,qBAAqB,GACzB,aAAa,CAAC,IAAI,KAAK,QAAQ;QAC7B,CAAC,CAAC,oBAAoB,CAClB,aAAa,CAAC,OAAO,EACrB,mBAAmB,CAAC,mBAAmB,CACxC;QACH,CAAC,CAAC,WAAW,CAAC;IAElB,qEAAqE;IACrE,+EAA+E;IAC/E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAC;IACtD,MAAM,WAAW,GAAwB,EAAE,CAAC;IAE5C,IAAI,qBAAqB,IAAI,WAAW,IAAI,uBAAuB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/E,KAAK,MAAM,GAAG,IAAI,uBAAuB,EAAE,CAAC;YAC1C,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,OAAO,CAAC,MAAM;gBAAE,SAAS;YAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,2BAA2B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YAC/D,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,MAAM,qBAAqB,GACzB,aAAa,CAAC,IAAI,KAAK,QAAQ;QAC7B,CAAC,CAAC,oBAAoB,CAClB,aAAa,CAAC,OAAO,EACrB,mBAAmB,CAAC,qBAAqB,CAC1C;QACH,CAAC,CAAC,WAAW,CAAC;IAElB,MAAM,YAAY,GAAkB,EAAE,CAAC;IAEvC,IAAI,qBAAqB,IAAI,WAAW,IAAI,uBAAuB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/E,KAAK,MAAM,GAAG,IAAI,uBAAuB,EAAE,CAAC;YAC1C,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,OAAO,CAAC,MAAM;gBAAE,SAAS;YAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAE,CAAC;YAC5B,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACzC,YAAY,CAAC,IAAI,CACf,MAAM,2BAA2B,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE;gBAC7D,cAAc;gBACd,GAAG,CAAC,cAAc,KAAK,SAAS,IAAI,EAAE,cAAc,EAAE,CAAC;aACxD,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAChC,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CACvC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EACzB,OAAO,CACR,CAAC;IAEF,MAAM,GAAG,GAAgB;QACvB,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,MAAM;QACf,YAAY,EAAE,IAAI,CAAC,MAAM;QACzB,WAAW,EAAE,IAAI,CAAC,MAAM;QACxB,YAAY,EAAE,OAAO,CAAC,MAAM;QAC5B,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE;YACP,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,MAAM;YACf,QAAQ,EAAE,OAAO;YACjB,UAAU,EAAE,IAAI;SACjB;QACD,OAAO;KACR,CAAC;IAEF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACpB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC;IAC5C,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAEnC,OAAO;QACL,GAAG;QACH,OAAO;QACP,MAAM;QACN,aAAa,EAAE,YAAY;QAC3B,YAAY,EAAE,WAAW;QACzB,QAAQ,EAAE;YACR,OAAO,EAAE,cAAc,CAAC,OAAO;YAC/B,eAAe,EAAE,cAAc,CAAC,eAAe;SAChD;QACD,OAAO,EAAE,MAAM;KAChB,CAAC;AACJ,CAAC;AAaD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,KAAgB,EAChB,OAAoB,EACpB,WAA+B,EAC/B,UAA8B,EAAE;IAEhC,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IACnD,MAAM,SAAS,GAAG,cAAc,IAAI,WAAW,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAExE,8DAA8D;IAC9D,MAAM,OAAO,GAAG,MAAM,mBAAmB,CACvC,KAAK,CAAC,GAAG,EACT,OAAO,EACP,WAAW,EACX,KAAK,CAAC,YAAY,EAClB,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAChE,CAAC;IAEF,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO;YACL,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM;YACxB,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,SAAS,CAAC,SAAS;YAChC,gBAAgB,EAAE;gBAChB,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ;gBACnD,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ;aAC9C;SACF,CAAC;IACJ,CAAC;IAED,+CAA+C;IAC/C,OAAO,wBAAwB,CAC7B,KAAK,CAAC,GAAG,EACT,OAAO,EACP,KAAK,CAAC,gBAAgB,EACtB,SAAS,CACV,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAgB,EAChB,WAA+B;IAE/B,MAAM,MAAM,GAAG,WAAW,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACnD,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM;QACxB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK;QACtB,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO;QAC1B,QAAQ,EAAE,MAAM;KACjB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,yBAAyB,CACtC,aAAoC,EACpC,WAAgC;IAEhC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,aAAa,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,CACL,aAAa,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK;YACpC,oBAAoB,CAClB,aAAa,CAAC,OAAO,EACrB,mBAAmB,CAAC,kBAAkB,CACvC,CACF,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;IAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,cAAc,GAAwB,EAAE,CAAC;IAC/C,IAAI,aAAa,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QAC/C,cAAc,CAAC,OAAO,GAAG,aAAa,CAAC,cAAc,CAAC;IACxD,CAAC;IACD,IAAI,aAAa,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACjD,cAAc,CAAC,SAAS,GAAG,aAAa,CAAC,gBAAgB,CAAC;IAC5D,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACjE,OAAO,aAAa,CAAC,KAAK,CAAC;AAC7B,CAAC;AAED,SAAS,kBAAkB;IACzB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,gBAAgB,CAAwB,CAAC;QAC7D,OAAO,GAAG,CAAC,OAAO,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"briefing.js","sourceRoot":"","sources":["../src/briefing.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -19,7 +19,7 @@ export declare const HTTP_TIMEOUT_MS = 15000;
19
19
  * User-Agent sent with all outbound requests.
20
20
  * Identifies the tool and provides a contact point per robots.txt convention.
21
21
  */
22
- export declare const USER_AGENT = "careerclaw-js/1.4.0 (https://github.com/orestes-garcia-martinez/careerclaw-js)";
22
+ export declare const USER_AGENT = "careerclaw-js/1.6.0 (https://github.com/orestes-garcia-martinez/careerclaw-js)";
23
23
  /** RemoteOK RSS feed — public, no auth required. */
24
24
  export declare const REMOTEOK_RSS_URL = "https://remoteok.com/remote-jobs.rss";
25
25
  /**
@@ -45,6 +45,44 @@ export declare const DEFAULT_TOP_K = 3;
45
45
  export declare const FREE_TOP_K = 3;
46
46
  /** Maximum topK for Pro tier users. */
47
47
  export declare const PRO_TOP_K = 10;
48
+ export declare const SEMANTIC_MATCHING: {
49
+ readonly ENABLED: boolean;
50
+ /**
51
+ * Blend of the enhanced lexical score and the taxonomy-based semantic score
52
+ * within the hybrid signal input.
53
+ *
54
+ * signalInput = lexical × LEXICAL + semantic × SEMANTIC
55
+ *
56
+ * Increase SEMANTIC if taxonomy coverage is broad and you trust concept
57
+ * resolution; decrease it if the taxonomy is thin and lexical overlap is
58
+ * the more reliable signal.
59
+ */
60
+ readonly WEIGHTS: {
61
+ readonly LEXICAL: 0.55;
62
+ readonly SEMANTIC: 0.45;
63
+ };
64
+ /**
65
+ * Blend of taxonomy concept matches vs. verbatim phrase matches within
66
+ * the semantic score itself.
67
+ *
68
+ * semanticScore = conceptScore × CONCEPT + phraseScore × PHRASE
69
+ *
70
+ * Concepts (taxonomy alias resolution) are high-precision but
71
+ * taxonomy-bounded — they only fire when both sides resolve to the same
72
+ * canonical key. Phrases (verbatim multi-gram matches) are the fallback
73
+ * for niche industry terms the taxonomy does not yet cover.
74
+ *
75
+ * Current 80/20 default is conservative: it favours the reliable concept
76
+ * signal while the taxonomy is still in Phase 1 (healthcare, finance,
77
+ * tech, trades). As taxonomy coverage grows thinner for niche domains,
78
+ * shifting toward 60/40 is a reasonable next step — validate against
79
+ * real match outcomes before changing.
80
+ */
81
+ readonly CONCEPT_PHRASE_WEIGHTS: {
82
+ readonly CONCEPT: 0.8;
83
+ readonly PHRASE: 0.2;
84
+ };
85
+ };
48
86
  /**
49
87
  * Provider-specific LLM keys for draft enhancement (recommended).
50
88
  * These take precedence over the legacy CAREERCLAW_LLM_KEY.
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAeH,eAAO,MAAM,cAAc,EAAE,MAGS,CAAC;AAEvC,eAAO,MAAM,YAAY,EAAE,MAA6C,CAAC;AACzE,eAAO,MAAM,aAAa,EAAE,MAA8C,CAAC;AAC3E,eAAO,MAAM,SAAS,EAAE,MAA2C,CAAC;AACpE,eAAO,MAAM,eAAe,EAAE,MAA2C,CAAC;AAC1E,eAAO,MAAM,eAAe,EAAE,MAA2C,CAAC;AAC1E,eAAO,MAAM,kBAAkB,EAAE,MAGhC,CAAC;AAMF,+DAA+D;AAC/D,eAAO,MAAM,eAAe,QAAS,CAAC;AAEtC;;;GAGG;AACH,eAAO,MAAM,UAAU,mFAC0D,CAAC;AAMlF,oDAAoD;AACpD,eAAO,MAAM,gBAAgB,yCAAyC,CAAC;AAEvE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAGjC,CAAC;AAEF,2DAA2D;AAC3D,eAAO,MAAM,WAAW,0CAA0C,CAAC;AAEnE,kEAAkE;AAClE,eAAO,MAAM,eAAe,MAAM,CAAC;AAMnC,uEAAuE;AACvE,eAAO,MAAM,aAAa,IAAI,CAAC;AAE/B,wCAAwC;AACxC,eAAO,MAAM,UAAU,IAAI,CAAC;AAE5B,uCAAuC;AACvC,eAAO,MAAM,SAAS,KAAK,CAAC;AAM5B;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,GAAG,SACD,CAAC;AAEzC,eAAO,MAAM,cAAc,EAAE,MAAM,GAAG,SACD,CAAC;AAEtC;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,GAAG,SAA6C,CAAC;AAEjF,qEAAqE;AACrE,eAAO,MAAM,YAAY,EAAE,MAC2B,CAAC;AAEvD,yEAAyE;AACzE,eAAO,MAAM,SAAS,EAAE,MAC2C,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,MAEiC,CAAC;AAE1D,8DAA8D;AAC9D,eAAO,MAAM,eAAe,EAAE,MAG7B,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,yBAAyB,EAAE,MAGvC,CAAC;AAMF,6FAA6F;AAC7F,eAAO,MAAM,OAAO,EAAE,MAAM,GAAG,SAA6C,CAAC;AAM7E;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,6BAA6B,CAAC;AAE7D,iDAAiD;AACjD,eAAO,MAAM,gBAAgB,4BAA4B,CAAC;AAE1D;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,QAA0B,CAAC;AAO5D,kFAAkF;AAClF,eAAO,MAAM,kBAAkB,QAC0B,CAAC;AAE1D,+EAA+E;AAC/E,eAAO,MAAM,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAeH,eAAO,MAAM,cAAc,EAAE,MAGS,CAAC;AAEvC,eAAO,MAAM,YAAY,EAAE,MAA6C,CAAC;AACzE,eAAO,MAAM,aAAa,EAAE,MAA8C,CAAC;AAC3E,eAAO,MAAM,SAAS,EAAE,MAA2C,CAAC;AACpE,eAAO,MAAM,eAAe,EAAE,MAA2C,CAAC;AAC1E,eAAO,MAAM,eAAe,EAAE,MAA2C,CAAC;AAC1E,eAAO,MAAM,kBAAkB,EAAE,MAGhC,CAAC;AAMF,+DAA+D;AAC/D,eAAO,MAAM,eAAe,QAAS,CAAC;AAEtC;;;GAGG;AACH,eAAO,MAAM,UAAU,mFAC0D,CAAC;AAMlF,oDAAoD;AACpD,eAAO,MAAM,gBAAgB,yCAAyC,CAAC;AAEvE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAGjC,CAAC;AAEF,2DAA2D;AAC3D,eAAO,MAAM,WAAW,0CAA0C,CAAC;AAEnE,kEAAkE;AAClE,eAAO,MAAM,eAAe,MAAM,CAAC;AAMnC,uEAAuE;AACvE,eAAO,MAAM,aAAa,IAAI,CAAC;AAE/B,wCAAwC;AACxC,eAAO,MAAM,UAAU,IAAI,CAAC;AAE5B,uCAAuC;AACvC,eAAO,MAAM,SAAS,KAAK,CAAC;AAM5B,eAAO,MAAM,iBAAiB;;IAG7B;;;;;;;;;OASG;;;;;IAMH;;;;;;;;;;;;;;;;OAgBG;;;;;CAKM,CAAC;AAMX;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,GAAG,SACD,CAAC;AAEzC,eAAO,MAAM,cAAc,EAAE,MAAM,GAAG,SACD,CAAC;AAEtC;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,GAAG,SAA6C,CAAC;AAEjF,qEAAqE;AACrE,eAAO,MAAM,YAAY,EAAE,MAC2B,CAAC;AAEvD,yEAAyE;AACzE,eAAO,MAAM,SAAS,EAAE,MAC2C,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,MAEiC,CAAC;AAE1D,8DAA8D;AAC9D,eAAO,MAAM,eAAe,EAAE,MAG7B,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,yBAAyB,EAAE,MAGvC,CAAC;AAMF,6FAA6F;AAC7F,eAAO,MAAM,OAAO,EAAE,MAAM,GAAG,SAA6C,CAAC;AAM7E;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,6BAA6B,CAAC;AAE7D,iDAAiD;AACjD,eAAO,MAAM,gBAAgB,4BAA4B,CAAC;AAE1D;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,QAA0B,CAAC;AAO5D,kFAAkF;AAClF,eAAO,MAAM,kBAAkB,QAC0B,CAAC;AAE1D,+EAA+E;AAC/E,eAAO,MAAM,cAAc,yBAAyB,CAAC"}
package/dist/config.js CHANGED
@@ -34,7 +34,7 @@ export const HTTP_TIMEOUT_MS = 15_000;
34
34
  * User-Agent sent with all outbound requests.
35
35
  * Identifies the tool and provides a contact point per robots.txt convention.
36
36
  */
37
- export const USER_AGENT = "careerclaw-js/1.4.0 (https://github.com/orestes-garcia-martinez/careerclaw-js)";
37
+ export const USER_AGENT = "careerclaw-js/1.6.0 (https://github.com/orestes-garcia-martinez/careerclaw-js)";
38
38
  // ---------------------------------------------------------------------------
39
39
  // Job sources
40
40
  // ---------------------------------------------------------------------------
@@ -67,6 +67,47 @@ export const FREE_TOP_K = 3;
67
67
  /** Maximum topK for Pro tier users. */
68
68
  export const PRO_TOP_K = 10;
69
69
  // ---------------------------------------------------------------------------
70
+ // Semantic matching
71
+ // ---------------------------------------------------------------------------
72
+ export const SEMANTIC_MATCHING = {
73
+ ENABLED: (process.env["CAREERCLAW_SEMANTIC_MATCHING"] ?? "true") !== "false",
74
+ /**
75
+ * Blend of the enhanced lexical score and the taxonomy-based semantic score
76
+ * within the hybrid signal input.
77
+ *
78
+ * signalInput = lexical × LEXICAL + semantic × SEMANTIC
79
+ *
80
+ * Increase SEMANTIC if taxonomy coverage is broad and you trust concept
81
+ * resolution; decrease it if the taxonomy is thin and lexical overlap is
82
+ * the more reliable signal.
83
+ */
84
+ WEIGHTS: {
85
+ LEXICAL: 0.55,
86
+ SEMANTIC: 0.45,
87
+ },
88
+ /**
89
+ * Blend of taxonomy concept matches vs. verbatim phrase matches within
90
+ * the semantic score itself.
91
+ *
92
+ * semanticScore = conceptScore × CONCEPT + phraseScore × PHRASE
93
+ *
94
+ * Concepts (taxonomy alias resolution) are high-precision but
95
+ * taxonomy-bounded — they only fire when both sides resolve to the same
96
+ * canonical key. Phrases (verbatim multi-gram matches) are the fallback
97
+ * for niche industry terms the taxonomy does not yet cover.
98
+ *
99
+ * Current 80/20 default is conservative: it favours the reliable concept
100
+ * signal while the taxonomy is still in Phase 1 (healthcare, finance,
101
+ * tech, trades). As taxonomy coverage grows thinner for niche domains,
102
+ * shifting toward 60/40 is a reasonable next step — validate against
103
+ * real match outcomes before changing.
104
+ */
105
+ CONCEPT_PHRASE_WEIGHTS: {
106
+ CONCEPT: 0.8,
107
+ PHRASE: 0.2,
108
+ },
109
+ };
110
+ // ---------------------------------------------------------------------------
70
111
  // LLM (Pro tier)
71
112
  // ---------------------------------------------------------------------------
72
113
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ export interface SkillNode {
2
+ aliases: string[];
3
+ related: string[];
4
+ credentials?: string[];
5
+ parent?: string;
6
+ }
7
+ /**
8
+ * Focused cross-industry taxonomy for Phase 1 semantic matching.
9
+ *
10
+ * This is intentionally curated rather than exhaustive. It should cover
11
+ * the highest-signal alias / credential / abbreviation patterns that cause
12
+ * obvious false negatives in job matching today.
13
+ */
14
+ export declare const SKILL_TAXONOMY: Record<string, SkillNode>;
15
+ export declare function normalizeSkill(skill: string): string;
16
+ export declare function getCanonicalSkill(skill: string): string | null;
17
+ export declare function getSkillAliases(skill: string): string[];
18
+ export declare function getRelatedSkills(skill: string): string[];
19
+ export declare function getCredentials(skill: string): string[];
20
+ export declare function expandSkills(skills: string[]): string[];
21
+ export declare function extractCanonicalSkillsFromText(text: string): string[];
22
+ export declare function expandCanonicalSkills(canonicalSkills: string[]): string[];
23
+ export declare function isKnownSkill(skill: string): boolean;
24
+ //# sourceMappingURL=skill-taxonomy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-taxonomy.d.ts","sourceRoot":"","sources":["../../src/core/skill-taxonomy.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAgPpD,CAAC;AAmBF,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOpD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG9D;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAIvD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAIxD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAItD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAiBvD;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAqBrE;AAED,wBAAgB,qBAAqB,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAiBzE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEnD"}