@gobing-ai/knowledge-kit 0.0.17 → 0.0.19
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/.claude-plugin/marketplace.json +1 -1
- package/README.md +74 -0
- package/dist/index.js +108 -107
- package/package.json +19 -1
- package/plugins/generations/content-gen/dist/index.js +42 -94
- package/plugins/generations/core-facts-gen/dist/index.js +51 -100
- package/plugins/generations/daily-article-gen/dist/index.js +57 -99
- package/plugins/generations/daily-article-gen/src/index.ts +12 -4
- package/plugins/generations/dailynews-gen/dist/index.js +57 -102
- package/plugins/generations/dailynews-gen/src/script-builder.ts +9 -1
- package/plugins/generations/episode-plan-gen/dist/index.js +120 -113
- package/plugins/generations/episode-plan-gen/src/index.ts +102 -22
- package/plugins/generations/image-gen/dist/index.js +63 -115
- package/plugins/generations/news-report-gen/dist/index.js +117 -99
- package/plugins/generations/news-report-gen/src/index.ts +117 -1
- package/plugins/generations/omni-voice-gen/src/omni_voice_gen/pipeline.py +1 -1
- package/plugins/generations/omni-voice-gen/src/omni_voice_gen/voicescript.py +8 -0
- package/plugins/generations/voice-gen/dist/index.js +161 -120
- package/plugins/generations/voice-gen/src/concat.ts +34 -0
- package/plugins/generations/voice-gen/src/index.ts +14 -4
- package/plugins/generations/voice-gen/src/voicebox-server.ts +91 -0
- package/plugins/generations/voice-gen/src/voicescript.ts +8 -0
- package/plugins/ingestions/aihot-ingest/dist/index.js +47 -97
- package/plugins/ingestions/horizon-ingest/dist/index.js +47 -96
- package/plugins/ingestions/karakeep-local/dist/index.js +217 -266
- package/plugins/ingestions/last30days-ingest/dist/index.js +42 -91
- package/plugins/ingestions/web-search/dist/index.js +68 -117
- package/plugins/kk/commands/workflow-run.md +10 -6
- package/plugins/kk/plugin.json +1 -1
- package/plugins/kk/scripts/kk-workflow-stages.ts +376 -70
- package/plugins/kk/skills/publish/SKILL.md +80 -0
- package/plugins/kk/workflows/kk-daily-ai-voice.yaml +136 -224
- package/plugins/kk/workflows/leftover-publish-fanout-example.yaml +53 -0
- package/plugins/publishings/emdash-pub/dist/index.js +42 -91
- package/plugins/publishings/infoq-pub/dist/index.js +21994 -0
- package/plugins/publishings/infoq-pub/package.json +17 -0
- package/plugins/publishings/infoq-pub/plugin.json +7 -0
- package/plugins/publishings/infoq-pub/src/index.ts +123 -0
- package/plugins/publishings/infoq-pub/tsconfig.json +4 -0
- package/plugins/publishings/juejin-pub/dist/index.js +21994 -0
- package/plugins/publishings/juejin-pub/package.json +17 -0
- package/plugins/publishings/juejin-pub/plugin.json +7 -0
- package/plugins/publishings/juejin-pub/src/index.ts +123 -0
- package/plugins/publishings/juejin-pub/tsconfig.json +4 -0
- package/plugins/publishings/medium-pub/dist/index.js +22041 -0
- package/plugins/publishings/medium-pub/package.json +17 -0
- package/plugins/publishings/medium-pub/plugin.json +7 -0
- package/plugins/publishings/medium-pub/src/index.ts +215 -0
- package/plugins/publishings/medium-pub/tsconfig.json +4 -0
- package/plugins/publishings/podcast-pub/dist/index.js +183 -123
- package/plugins/publishings/podcast-pub/src/index.ts +47 -3
- package/plugins/publishings/podcast-pub/src/show-notes.ts +153 -34
- package/plugins/publishings/qiita-pub/dist/index.js +42 -91
- package/plugins/publishings/substack-pub/dist/index.js +21994 -0
- package/plugins/publishings/substack-pub/package.json +17 -0
- package/plugins/publishings/substack-pub/plugin.json +7 -0
- package/plugins/publishings/substack-pub/src/index.ts +123 -0
- package/plugins/publishings/substack-pub/tsconfig.json +4 -0
- package/plugins/publishings/surfdash-pub/dist/index.js +172 -103
- package/plugins/publishings/surfdash-pub/src/index.ts +32 -2
- package/plugins/publishings/wechatmp-pub/dist/index.js +22119 -0
- package/plugins/publishings/wechatmp-pub/package.json +17 -0
- package/plugins/publishings/wechatmp-pub/plugin.json +7 -0
- package/plugins/publishings/wechatmp-pub/src/index.ts +304 -0
- package/plugins/publishings/wechatmp-pub/tsconfig.json +4 -0
- package/plugins/publishings/x-pub/dist/index.js +22110 -0
- package/plugins/publishings/x-pub/package.json +17 -0
- package/plugins/publishings/x-pub/plugin.json +7 -0
- package/plugins/publishings/x-pub/src/index.ts +222 -0
- package/plugins/publishings/x-pub/tsconfig.json +4 -0
- package/plugins/publishings/xhs-pub/dist/index.js +21994 -0
- package/plugins/publishings/xhs-pub/package.json +17 -0
- package/plugins/publishings/xhs-pub/plugin.json +7 -0
- package/plugins/publishings/xhs-pub/src/index.ts +123 -0
- package/plugins/publishings/xhs-pub/tsconfig.json +4 -0
- package/plugins/publishings/zenn-pub/dist/index.js +42 -91
|
@@ -153,6 +153,8 @@ export interface VoiceSegment {
|
|
|
153
153
|
engine?: string;
|
|
154
154
|
language?: string;
|
|
155
155
|
gap_ms?: number;
|
|
156
|
+
/** Playback rate multiplier (0.5–2.0); undefined/1 = generator default (VOICEBOX envs don't carry speed — local atempo). */
|
|
157
|
+
speed?: number;
|
|
156
158
|
max_chunk_chars?: number;
|
|
157
159
|
crossfade_ms?: number;
|
|
158
160
|
personality?: boolean;
|
|
@@ -541,6 +543,12 @@ export function validateVoiceScript(script: VoiceScript): void {
|
|
|
541
543
|
}
|
|
542
544
|
}
|
|
543
545
|
|
|
546
|
+
if (segment.speed !== undefined) {
|
|
547
|
+
if (typeof segment.speed !== 'number' || segment.speed < 0.5 || segment.speed > 2.0) {
|
|
548
|
+
throw new Error('speed must be between 0.5 and 2.0');
|
|
549
|
+
}
|
|
550
|
+
}
|
|
551
|
+
|
|
544
552
|
if (segment.seed !== undefined) {
|
|
545
553
|
if (typeof segment.seed !== 'number' || !Number.isInteger(segment.seed) || segment.seed < 0) {
|
|
546
554
|
throw new Error('seed must be a non-negative integer');
|
|
@@ -14642,72 +14642,6 @@ var init_zod = __esm(() => {
|
|
|
14642
14642
|
init_external();
|
|
14643
14643
|
});
|
|
14644
14644
|
|
|
14645
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/errors.js
|
|
14646
|
-
var ErrorCode;
|
|
14647
|
-
var init_errors3 = __esm(() => {
|
|
14648
|
-
ErrorCode = {
|
|
14649
|
-
NotFound: "NOT_FOUND",
|
|
14650
|
-
Validation: "VALIDATION",
|
|
14651
|
-
Conflict: "CONFLICT",
|
|
14652
|
-
Internal: "INTERNAL"
|
|
14653
|
-
};
|
|
14654
|
-
});
|
|
14655
|
-
|
|
14656
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/api-response.js
|
|
14657
|
-
var API_ERROR_CODES, ERROR_CODE_TO_HTTP, CLIENT_SAFE_CODES;
|
|
14658
|
-
var init_api_response = __esm(() => {
|
|
14659
|
-
init_errors3();
|
|
14660
|
-
API_ERROR_CODES = {
|
|
14661
|
-
SUCCESS: 0,
|
|
14662
|
-
NOT_FOUND: 404,
|
|
14663
|
-
VALIDATION_ERROR: 422,
|
|
14664
|
-
BAD_REQUEST: 400,
|
|
14665
|
-
UNAUTHORIZED: 401,
|
|
14666
|
-
FORBIDDEN: 403,
|
|
14667
|
-
CONFLICT: 409,
|
|
14668
|
-
INTERNAL_ERROR: 500
|
|
14669
|
-
};
|
|
14670
|
-
ERROR_CODE_TO_HTTP = {
|
|
14671
|
-
[ErrorCode.NotFound]: API_ERROR_CODES.NOT_FOUND,
|
|
14672
|
-
[ErrorCode.Validation]: API_ERROR_CODES.VALIDATION_ERROR,
|
|
14673
|
-
[ErrorCode.Conflict]: API_ERROR_CODES.CONFLICT,
|
|
14674
|
-
[ErrorCode.Internal]: API_ERROR_CODES.INTERNAL_ERROR
|
|
14675
|
-
};
|
|
14676
|
-
CLIENT_SAFE_CODES = new Set([ErrorCode.NotFound, ErrorCode.Validation, ErrorCode.Conflict]);
|
|
14677
|
-
});
|
|
14678
|
-
|
|
14679
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/cursor.js
|
|
14680
|
-
var init_cursor = () => {};
|
|
14681
|
-
|
|
14682
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/event-severity.js
|
|
14683
|
-
var init_event_severity = () => {};
|
|
14684
|
-
|
|
14685
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/output.js
|
|
14686
|
-
function processStream(name) {
|
|
14687
|
-
const proc = globalThis.process;
|
|
14688
|
-
const stream = proc?.[name];
|
|
14689
|
-
if (stream === undefined) {
|
|
14690
|
-
throw new Error(`No ${name} target available: set one via setDefaultOutputTargets or pass an explicit target`);
|
|
14691
|
-
}
|
|
14692
|
-
return stream;
|
|
14693
|
-
}
|
|
14694
|
-
function writeLine(message, target) {
|
|
14695
|
-
target.write(`${message}
|
|
14696
|
-
`);
|
|
14697
|
-
}
|
|
14698
|
-
function echoError(message, target = defaultStderrTarget ?? processStream("stderr")) {
|
|
14699
|
-
writeLine(message, target);
|
|
14700
|
-
}
|
|
14701
|
-
var defaultStderrTarget;
|
|
14702
|
-
|
|
14703
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/index.js
|
|
14704
|
-
var init_dist = __esm(() => {
|
|
14705
|
-
init_api_response();
|
|
14706
|
-
init_cursor();
|
|
14707
|
-
init_errors3();
|
|
14708
|
-
init_event_severity();
|
|
14709
|
-
});
|
|
14710
|
-
|
|
14711
14645
|
// ../../node_modules/.bun/yaml@2.9.0/node_modules/yaml/dist/nodes/identity.js
|
|
14712
14646
|
var require_identity = __commonJS((exports) => {
|
|
14713
14647
|
var ALIAS = Symbol.for("yaml.alias");
|
|
@@ -17612,15 +17546,15 @@ var require_timestamp = __commonJS((exports) => {
|
|
|
17612
17546
|
throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");
|
|
17613
17547
|
const [, year, month, day, hour, minute, second] = match.map(Number);
|
|
17614
17548
|
const millisec = match[7] ? Number((match[7] + "00").substr(1, 3)) : 0;
|
|
17615
|
-
let
|
|
17549
|
+
let date5 = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec);
|
|
17616
17550
|
const tz = match[8];
|
|
17617
17551
|
if (tz && tz !== "Z") {
|
|
17618
17552
|
let d = parseSexagesimal(tz, false);
|
|
17619
17553
|
if (Math.abs(d) < 30)
|
|
17620
17554
|
d *= 60;
|
|
17621
|
-
|
|
17555
|
+
date5 -= 60000 * d;
|
|
17622
17556
|
}
|
|
17623
|
-
return new Date(
|
|
17557
|
+
return new Date(date5);
|
|
17624
17558
|
},
|
|
17625
17559
|
stringify: ({ value }) => value?.toISOString().replace(/(T00:00:00)?\.000Z$/, "") ?? ""
|
|
17626
17560
|
};
|
|
@@ -19480,7 +19414,7 @@ var require_composer = __commonJS((exports) => {
|
|
|
19480
19414
|
var node_process = __require("process");
|
|
19481
19415
|
var directives = require_directives();
|
|
19482
19416
|
var Document = require_Document();
|
|
19483
|
-
var
|
|
19417
|
+
var errors3 = require_errors();
|
|
19484
19418
|
var identity = require_identity();
|
|
19485
19419
|
var composeDoc = require_compose_doc();
|
|
19486
19420
|
var resolveEnd = require_resolve_end();
|
|
@@ -19531,9 +19465,9 @@ var require_composer = __commonJS((exports) => {
|
|
|
19531
19465
|
this.onError = (source, code, message, warning) => {
|
|
19532
19466
|
const pos = getErrorPos(source);
|
|
19533
19467
|
if (warning)
|
|
19534
|
-
this.warnings.push(new
|
|
19468
|
+
this.warnings.push(new errors3.YAMLWarning(pos, code, message));
|
|
19535
19469
|
else
|
|
19536
|
-
this.errors.push(new
|
|
19470
|
+
this.errors.push(new errors3.YAMLParseError(pos, code, message));
|
|
19537
19471
|
};
|
|
19538
19472
|
this.directives = new directives.Directives({ version: options.version || "1.2" });
|
|
19539
19473
|
this.options = options;
|
|
@@ -19619,7 +19553,7 @@ ${cb}` : comment;
|
|
|
19619
19553
|
break;
|
|
19620
19554
|
case "error": {
|
|
19621
19555
|
const msg = token.source ? `${token.message}: ${JSON.stringify(token.source)}` : token.message;
|
|
19622
|
-
const error51 = new
|
|
19556
|
+
const error51 = new errors3.YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", msg);
|
|
19623
19557
|
if (this.atDirectives || !this.doc)
|
|
19624
19558
|
this.errors.push(error51);
|
|
19625
19559
|
else
|
|
@@ -19629,7 +19563,7 @@ ${cb}` : comment;
|
|
|
19629
19563
|
case "doc-end": {
|
|
19630
19564
|
if (!this.doc) {
|
|
19631
19565
|
const msg = "Unexpected doc-end without preceding document";
|
|
19632
|
-
this.errors.push(new
|
|
19566
|
+
this.errors.push(new errors3.YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", msg));
|
|
19633
19567
|
break;
|
|
19634
19568
|
}
|
|
19635
19569
|
this.doc.directives.docEnd = true;
|
|
@@ -19644,7 +19578,7 @@ ${end.comment}` : end.comment;
|
|
|
19644
19578
|
break;
|
|
19645
19579
|
}
|
|
19646
19580
|
default:
|
|
19647
|
-
this.errors.push(new
|
|
19581
|
+
this.errors.push(new errors3.YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", `Unsupported token ${token.type}`));
|
|
19648
19582
|
}
|
|
19649
19583
|
}
|
|
19650
19584
|
*end(forceDoc = false, endOffset = -1) {
|
|
@@ -19670,7 +19604,7 @@ ${end.comment}` : end.comment;
|
|
|
19670
19604
|
var require_cst_scalar = __commonJS((exports) => {
|
|
19671
19605
|
var resolveBlockScalar = require_resolve_block_scalar();
|
|
19672
19606
|
var resolveFlowScalar = require_resolve_flow_scalar();
|
|
19673
|
-
var
|
|
19607
|
+
var errors3 = require_errors();
|
|
19674
19608
|
var stringifyString = require_stringifyString();
|
|
19675
19609
|
function resolveAsScalar(token, strict = true, onError) {
|
|
19676
19610
|
if (token) {
|
|
@@ -19679,7 +19613,7 @@ var require_cst_scalar = __commonJS((exports) => {
|
|
|
19679
19613
|
if (onError)
|
|
19680
19614
|
onError(offset, code, message);
|
|
19681
19615
|
else
|
|
19682
|
-
throw new
|
|
19616
|
+
throw new errors3.YAMLParseError([offset, offset + 1], code, message);
|
|
19683
19617
|
};
|
|
19684
19618
|
switch (token.type) {
|
|
19685
19619
|
case "scalar":
|
|
@@ -21559,7 +21493,7 @@ var require_parser = __commonJS((exports) => {
|
|
|
21559
21493
|
var require_public_api = __commonJS((exports) => {
|
|
21560
21494
|
var composer = require_composer();
|
|
21561
21495
|
var Document = require_Document();
|
|
21562
|
-
var
|
|
21496
|
+
var errors3 = require_errors();
|
|
21563
21497
|
var log = require_log();
|
|
21564
21498
|
var identity = require_identity();
|
|
21565
21499
|
var lineCounter = require_line_counter();
|
|
@@ -21576,8 +21510,8 @@ var require_public_api = __commonJS((exports) => {
|
|
|
21576
21510
|
const docs = Array.from(composer$1.compose(parser$1.parse(source)));
|
|
21577
21511
|
if (prettyErrors && lineCounter2)
|
|
21578
21512
|
for (const doc2 of docs) {
|
|
21579
|
-
doc2.errors.forEach(
|
|
21580
|
-
doc2.warnings.forEach(
|
|
21513
|
+
doc2.errors.forEach(errors3.prettifyError(source, lineCounter2));
|
|
21514
|
+
doc2.warnings.forEach(errors3.prettifyError(source, lineCounter2));
|
|
21581
21515
|
}
|
|
21582
21516
|
if (docs.length > 0)
|
|
21583
21517
|
return docs;
|
|
@@ -21592,13 +21526,13 @@ var require_public_api = __commonJS((exports) => {
|
|
|
21592
21526
|
if (!doc2)
|
|
21593
21527
|
doc2 = _doc;
|
|
21594
21528
|
else if (doc2.options.logLevel !== "silent") {
|
|
21595
|
-
doc2.errors.push(new
|
|
21529
|
+
doc2.errors.push(new errors3.YAMLParseError(_doc.range.slice(0, 2), "MULTIPLE_DOCS", "Source contains multiple documents; please use YAML.parseAllDocuments()"));
|
|
21596
21530
|
break;
|
|
21597
21531
|
}
|
|
21598
21532
|
}
|
|
21599
21533
|
if (prettyErrors && lineCounter2) {
|
|
21600
|
-
doc2.errors.forEach(
|
|
21601
|
-
doc2.warnings.forEach(
|
|
21534
|
+
doc2.errors.forEach(errors3.prettifyError(source, lineCounter2));
|
|
21535
|
+
doc2.warnings.forEach(errors3.prettifyError(source, lineCounter2));
|
|
21602
21536
|
}
|
|
21603
21537
|
return doc2;
|
|
21604
21538
|
}
|
|
@@ -21650,12 +21584,12 @@ var require_public_api = __commonJS((exports) => {
|
|
|
21650
21584
|
});
|
|
21651
21585
|
|
|
21652
21586
|
// ../../node_modules/.bun/yaml@2.9.0/node_modules/yaml/dist/index.js
|
|
21653
|
-
var composer, Document, Schema,
|
|
21654
|
-
var
|
|
21587
|
+
var composer, Document, Schema, errors3, Alias, identity, Pair, Scalar, YAMLMap, YAMLSeq, cst, lexer, lineCounter, parser, publicApi, visit, $Composer, $Document, $Schema, $YAMLError, $YAMLParseError, $YAMLWarning, $Alias, $isAlias, $isCollection, $isDocument, $isMap, $isNode, $isPair, $isScalar, $isSeq, $Pair, $Scalar, $YAMLMap, $YAMLSeq, $Lexer, $LineCounter, $Parser, $parse, $parseAllDocuments, $parseDocument, $stringify, $visit, $visitAsync;
|
|
21588
|
+
var init_dist = __esm(() => {
|
|
21655
21589
|
composer = require_composer();
|
|
21656
21590
|
Document = require_Document();
|
|
21657
21591
|
Schema = require_Schema();
|
|
21658
|
-
|
|
21592
|
+
errors3 = require_errors();
|
|
21659
21593
|
Alias = require_Alias();
|
|
21660
21594
|
identity = require_identity();
|
|
21661
21595
|
Pair = require_Pair();
|
|
@@ -21671,9 +21605,9 @@ var init_dist2 = __esm(() => {
|
|
|
21671
21605
|
$Composer = composer.Composer;
|
|
21672
21606
|
$Document = Document.Document;
|
|
21673
21607
|
$Schema = Schema.Schema;
|
|
21674
|
-
$YAMLError =
|
|
21675
|
-
$YAMLParseError =
|
|
21676
|
-
$YAMLWarning =
|
|
21608
|
+
$YAMLError = errors3.YAMLError;
|
|
21609
|
+
$YAMLParseError = errors3.YAMLParseError;
|
|
21610
|
+
$YAMLWarning = errors3.YAMLWarning;
|
|
21677
21611
|
$Alias = Alias.Alias;
|
|
21678
21612
|
$isAlias = identity.isAlias;
|
|
21679
21613
|
$isCollection = identity.isCollection;
|
|
@@ -21701,7 +21635,7 @@ var init_dist2 = __esm(() => {
|
|
|
21701
21635
|
// ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.39/node_modules/@gobing-ai/ts-runtime/dist/config.js
|
|
21702
21636
|
var configSchema;
|
|
21703
21637
|
var init_config = __esm(() => {
|
|
21704
|
-
|
|
21638
|
+
init_dist();
|
|
21705
21639
|
init_zod();
|
|
21706
21640
|
configSchema = exports_external.object({
|
|
21707
21641
|
app: exports_external.object({
|
|
@@ -21952,14 +21886,30 @@ function getProcessPid() {
|
|
|
21952
21886
|
function uniqueToken() {
|
|
21953
21887
|
return `${Date.now()}.${crypto.randomUUID()}`;
|
|
21954
21888
|
}
|
|
21889
|
+
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.67/node_modules/@gobing-ai/ts-utils/dist/output.js
|
|
21890
|
+
var defaultStderrTarget;
|
|
21891
|
+
function processStream(name) {
|
|
21892
|
+
const proc = globalThis.process;
|
|
21893
|
+
const stream = proc?.[name];
|
|
21894
|
+
if (stream === undefined) {
|
|
21895
|
+
throw new Error(`No ${name} target available: set one via setDefaultOutputTargets or pass an explicit target`);
|
|
21896
|
+
}
|
|
21897
|
+
return stream;
|
|
21898
|
+
}
|
|
21899
|
+
function writeLine(message, target) {
|
|
21900
|
+
target.write(`${message}
|
|
21901
|
+
`);
|
|
21902
|
+
}
|
|
21903
|
+
function echoError(message, target = defaultStderrTarget ?? processStream("stderr")) {
|
|
21904
|
+
writeLine(message, target);
|
|
21905
|
+
}
|
|
21906
|
+
|
|
21955
21907
|
// ../../packages/kk-core/src/render-md.ts
|
|
21956
21908
|
if (false) {}
|
|
21957
21909
|
// ../../plugins/ingestions/aihot-ingest/src/index.ts
|
|
21958
|
-
init_dist();
|
|
21959
21910
|
init_zod();
|
|
21960
21911
|
|
|
21961
21912
|
// ../../plugins/ingestions/aihot-ingest/src/client.ts
|
|
21962
|
-
init_dist();
|
|
21963
21913
|
init_zod();
|
|
21964
21914
|
var AIHOT_BASE_URL = "https://aihot.virxact.com";
|
|
21965
21915
|
var DEFAULT_AIHOT_USER_AGENT = "aihot-ingest/1.0.0";
|
|
@@ -22259,7 +22209,7 @@ async function processApiSource(options, fs, depsOverride) {
|
|
|
22259
22209
|
effectiveCursor = CursorStateSchema.parse(await readJsonFile(options.stateFile, fs)).cursor;
|
|
22260
22210
|
}
|
|
22261
22211
|
let items;
|
|
22262
|
-
let
|
|
22212
|
+
let cursor;
|
|
22263
22213
|
let asOf;
|
|
22264
22214
|
if (effectiveCursor) {
|
|
22265
22215
|
const changes = await client2.fetchChanges({
|
|
@@ -22267,26 +22217,26 @@ async function processApiSource(options, fs, depsOverride) {
|
|
|
22267
22217
|
limit: options.limit
|
|
22268
22218
|
});
|
|
22269
22219
|
items = changes.changes.flatMap((change) => change.op === "upsert" ? [change.item] : []);
|
|
22270
|
-
|
|
22220
|
+
cursor = changes.cursor;
|
|
22271
22221
|
} else {
|
|
22272
22222
|
const snapshot = await client2.fetchSnapshot({
|
|
22273
22223
|
limit: options.limit
|
|
22274
22224
|
});
|
|
22275
22225
|
items = snapshot.items;
|
|
22276
|
-
|
|
22226
|
+
cursor = snapshot.cursor;
|
|
22277
22227
|
asOf = snapshot.asOf;
|
|
22278
22228
|
}
|
|
22279
22229
|
const docs = DocListSchema.parse(mapAihotItemsToDocs(items));
|
|
22280
22230
|
await writeOutput(fs, options, docs);
|
|
22281
22231
|
if (options.stateFile) {
|
|
22282
22232
|
await writeState(fs, options.stateFile, {
|
|
22283
|
-
cursor
|
|
22233
|
+
cursor,
|
|
22284
22234
|
asOf,
|
|
22285
22235
|
lastSyncAt: new Date().toISOString(),
|
|
22286
22236
|
itemCount: docs.length
|
|
22287
22237
|
});
|
|
22288
22238
|
}
|
|
22289
|
-
return { docs, cursor
|
|
22239
|
+
return { docs, cursor, asOf };
|
|
22290
22240
|
}
|
|
22291
22241
|
async function processRssSource(options, fs, rssFetchLike) {
|
|
22292
22242
|
const feedUrl = process.env.AIHOT_FEED_URL?.trim() || AIHOT_FEED_URL_DEFAULT;
|
|
@@ -14642,72 +14642,6 @@ var init_zod = __esm(() => {
|
|
|
14642
14642
|
init_external();
|
|
14643
14643
|
});
|
|
14644
14644
|
|
|
14645
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/errors.js
|
|
14646
|
-
var ErrorCode;
|
|
14647
|
-
var init_errors3 = __esm(() => {
|
|
14648
|
-
ErrorCode = {
|
|
14649
|
-
NotFound: "NOT_FOUND",
|
|
14650
|
-
Validation: "VALIDATION",
|
|
14651
|
-
Conflict: "CONFLICT",
|
|
14652
|
-
Internal: "INTERNAL"
|
|
14653
|
-
};
|
|
14654
|
-
});
|
|
14655
|
-
|
|
14656
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/api-response.js
|
|
14657
|
-
var API_ERROR_CODES, ERROR_CODE_TO_HTTP, CLIENT_SAFE_CODES;
|
|
14658
|
-
var init_api_response = __esm(() => {
|
|
14659
|
-
init_errors3();
|
|
14660
|
-
API_ERROR_CODES = {
|
|
14661
|
-
SUCCESS: 0,
|
|
14662
|
-
NOT_FOUND: 404,
|
|
14663
|
-
VALIDATION_ERROR: 422,
|
|
14664
|
-
BAD_REQUEST: 400,
|
|
14665
|
-
UNAUTHORIZED: 401,
|
|
14666
|
-
FORBIDDEN: 403,
|
|
14667
|
-
CONFLICT: 409,
|
|
14668
|
-
INTERNAL_ERROR: 500
|
|
14669
|
-
};
|
|
14670
|
-
ERROR_CODE_TO_HTTP = {
|
|
14671
|
-
[ErrorCode.NotFound]: API_ERROR_CODES.NOT_FOUND,
|
|
14672
|
-
[ErrorCode.Validation]: API_ERROR_CODES.VALIDATION_ERROR,
|
|
14673
|
-
[ErrorCode.Conflict]: API_ERROR_CODES.CONFLICT,
|
|
14674
|
-
[ErrorCode.Internal]: API_ERROR_CODES.INTERNAL_ERROR
|
|
14675
|
-
};
|
|
14676
|
-
CLIENT_SAFE_CODES = new Set([ErrorCode.NotFound, ErrorCode.Validation, ErrorCode.Conflict]);
|
|
14677
|
-
});
|
|
14678
|
-
|
|
14679
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/cursor.js
|
|
14680
|
-
var init_cursor = () => {};
|
|
14681
|
-
|
|
14682
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/event-severity.js
|
|
14683
|
-
var init_event_severity = () => {};
|
|
14684
|
-
|
|
14685
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/output.js
|
|
14686
|
-
function processStream(name) {
|
|
14687
|
-
const proc = globalThis.process;
|
|
14688
|
-
const stream = proc?.[name];
|
|
14689
|
-
if (stream === undefined) {
|
|
14690
|
-
throw new Error(`No ${name} target available: set one via setDefaultOutputTargets or pass an explicit target`);
|
|
14691
|
-
}
|
|
14692
|
-
return stream;
|
|
14693
|
-
}
|
|
14694
|
-
function writeLine(message, target) {
|
|
14695
|
-
target.write(`${message}
|
|
14696
|
-
`);
|
|
14697
|
-
}
|
|
14698
|
-
function echoError(message, target = defaultStderrTarget ?? processStream("stderr")) {
|
|
14699
|
-
writeLine(message, target);
|
|
14700
|
-
}
|
|
14701
|
-
var defaultStderrTarget;
|
|
14702
|
-
|
|
14703
|
-
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.39/node_modules/@gobing-ai/ts-utils/dist/index.js
|
|
14704
|
-
var init_dist = __esm(() => {
|
|
14705
|
-
init_api_response();
|
|
14706
|
-
init_cursor();
|
|
14707
|
-
init_errors3();
|
|
14708
|
-
init_event_severity();
|
|
14709
|
-
});
|
|
14710
|
-
|
|
14711
14645
|
// ../../node_modules/.bun/yaml@2.9.0/node_modules/yaml/dist/nodes/identity.js
|
|
14712
14646
|
var require_identity = __commonJS((exports) => {
|
|
14713
14647
|
var ALIAS = Symbol.for("yaml.alias");
|
|
@@ -17612,15 +17546,15 @@ var require_timestamp = __commonJS((exports) => {
|
|
|
17612
17546
|
throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");
|
|
17613
17547
|
const [, year, month, day, hour, minute, second] = match.map(Number);
|
|
17614
17548
|
const millisec = match[7] ? Number((match[7] + "00").substr(1, 3)) : 0;
|
|
17615
|
-
let
|
|
17549
|
+
let date5 = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec);
|
|
17616
17550
|
const tz = match[8];
|
|
17617
17551
|
if (tz && tz !== "Z") {
|
|
17618
17552
|
let d = parseSexagesimal(tz, false);
|
|
17619
17553
|
if (Math.abs(d) < 30)
|
|
17620
17554
|
d *= 60;
|
|
17621
|
-
|
|
17555
|
+
date5 -= 60000 * d;
|
|
17622
17556
|
}
|
|
17623
|
-
return new Date(
|
|
17557
|
+
return new Date(date5);
|
|
17624
17558
|
},
|
|
17625
17559
|
stringify: ({ value }) => value?.toISOString().replace(/(T00:00:00)?\.000Z$/, "") ?? ""
|
|
17626
17560
|
};
|
|
@@ -19480,7 +19414,7 @@ var require_composer = __commonJS((exports) => {
|
|
|
19480
19414
|
var node_process = __require("process");
|
|
19481
19415
|
var directives = require_directives();
|
|
19482
19416
|
var Document = require_Document();
|
|
19483
|
-
var
|
|
19417
|
+
var errors3 = require_errors();
|
|
19484
19418
|
var identity = require_identity();
|
|
19485
19419
|
var composeDoc = require_compose_doc();
|
|
19486
19420
|
var resolveEnd = require_resolve_end();
|
|
@@ -19531,9 +19465,9 @@ var require_composer = __commonJS((exports) => {
|
|
|
19531
19465
|
this.onError = (source, code, message, warning) => {
|
|
19532
19466
|
const pos = getErrorPos(source);
|
|
19533
19467
|
if (warning)
|
|
19534
|
-
this.warnings.push(new
|
|
19468
|
+
this.warnings.push(new errors3.YAMLWarning(pos, code, message));
|
|
19535
19469
|
else
|
|
19536
|
-
this.errors.push(new
|
|
19470
|
+
this.errors.push(new errors3.YAMLParseError(pos, code, message));
|
|
19537
19471
|
};
|
|
19538
19472
|
this.directives = new directives.Directives({ version: options.version || "1.2" });
|
|
19539
19473
|
this.options = options;
|
|
@@ -19619,7 +19553,7 @@ ${cb}` : comment;
|
|
|
19619
19553
|
break;
|
|
19620
19554
|
case "error": {
|
|
19621
19555
|
const msg = token.source ? `${token.message}: ${JSON.stringify(token.source)}` : token.message;
|
|
19622
|
-
const error51 = new
|
|
19556
|
+
const error51 = new errors3.YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", msg);
|
|
19623
19557
|
if (this.atDirectives || !this.doc)
|
|
19624
19558
|
this.errors.push(error51);
|
|
19625
19559
|
else
|
|
@@ -19629,7 +19563,7 @@ ${cb}` : comment;
|
|
|
19629
19563
|
case "doc-end": {
|
|
19630
19564
|
if (!this.doc) {
|
|
19631
19565
|
const msg = "Unexpected doc-end without preceding document";
|
|
19632
|
-
this.errors.push(new
|
|
19566
|
+
this.errors.push(new errors3.YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", msg));
|
|
19633
19567
|
break;
|
|
19634
19568
|
}
|
|
19635
19569
|
this.doc.directives.docEnd = true;
|
|
@@ -19644,7 +19578,7 @@ ${end.comment}` : end.comment;
|
|
|
19644
19578
|
break;
|
|
19645
19579
|
}
|
|
19646
19580
|
default:
|
|
19647
|
-
this.errors.push(new
|
|
19581
|
+
this.errors.push(new errors3.YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", `Unsupported token ${token.type}`));
|
|
19648
19582
|
}
|
|
19649
19583
|
}
|
|
19650
19584
|
*end(forceDoc = false, endOffset = -1) {
|
|
@@ -19670,7 +19604,7 @@ ${end.comment}` : end.comment;
|
|
|
19670
19604
|
var require_cst_scalar = __commonJS((exports) => {
|
|
19671
19605
|
var resolveBlockScalar = require_resolve_block_scalar();
|
|
19672
19606
|
var resolveFlowScalar = require_resolve_flow_scalar();
|
|
19673
|
-
var
|
|
19607
|
+
var errors3 = require_errors();
|
|
19674
19608
|
var stringifyString = require_stringifyString();
|
|
19675
19609
|
function resolveAsScalar(token, strict = true, onError) {
|
|
19676
19610
|
if (token) {
|
|
@@ -19679,7 +19613,7 @@ var require_cst_scalar = __commonJS((exports) => {
|
|
|
19679
19613
|
if (onError)
|
|
19680
19614
|
onError(offset, code, message);
|
|
19681
19615
|
else
|
|
19682
|
-
throw new
|
|
19616
|
+
throw new errors3.YAMLParseError([offset, offset + 1], code, message);
|
|
19683
19617
|
};
|
|
19684
19618
|
switch (token.type) {
|
|
19685
19619
|
case "scalar":
|
|
@@ -21559,7 +21493,7 @@ var require_parser = __commonJS((exports) => {
|
|
|
21559
21493
|
var require_public_api = __commonJS((exports) => {
|
|
21560
21494
|
var composer = require_composer();
|
|
21561
21495
|
var Document = require_Document();
|
|
21562
|
-
var
|
|
21496
|
+
var errors3 = require_errors();
|
|
21563
21497
|
var log = require_log();
|
|
21564
21498
|
var identity = require_identity();
|
|
21565
21499
|
var lineCounter = require_line_counter();
|
|
@@ -21576,8 +21510,8 @@ var require_public_api = __commonJS((exports) => {
|
|
|
21576
21510
|
const docs = Array.from(composer$1.compose(parser$1.parse(source)));
|
|
21577
21511
|
if (prettyErrors && lineCounter2)
|
|
21578
21512
|
for (const doc2 of docs) {
|
|
21579
|
-
doc2.errors.forEach(
|
|
21580
|
-
doc2.warnings.forEach(
|
|
21513
|
+
doc2.errors.forEach(errors3.prettifyError(source, lineCounter2));
|
|
21514
|
+
doc2.warnings.forEach(errors3.prettifyError(source, lineCounter2));
|
|
21581
21515
|
}
|
|
21582
21516
|
if (docs.length > 0)
|
|
21583
21517
|
return docs;
|
|
@@ -21592,13 +21526,13 @@ var require_public_api = __commonJS((exports) => {
|
|
|
21592
21526
|
if (!doc2)
|
|
21593
21527
|
doc2 = _doc;
|
|
21594
21528
|
else if (doc2.options.logLevel !== "silent") {
|
|
21595
|
-
doc2.errors.push(new
|
|
21529
|
+
doc2.errors.push(new errors3.YAMLParseError(_doc.range.slice(0, 2), "MULTIPLE_DOCS", "Source contains multiple documents; please use YAML.parseAllDocuments()"));
|
|
21596
21530
|
break;
|
|
21597
21531
|
}
|
|
21598
21532
|
}
|
|
21599
21533
|
if (prettyErrors && lineCounter2) {
|
|
21600
|
-
doc2.errors.forEach(
|
|
21601
|
-
doc2.warnings.forEach(
|
|
21534
|
+
doc2.errors.forEach(errors3.prettifyError(source, lineCounter2));
|
|
21535
|
+
doc2.warnings.forEach(errors3.prettifyError(source, lineCounter2));
|
|
21602
21536
|
}
|
|
21603
21537
|
return doc2;
|
|
21604
21538
|
}
|
|
@@ -21650,12 +21584,12 @@ var require_public_api = __commonJS((exports) => {
|
|
|
21650
21584
|
});
|
|
21651
21585
|
|
|
21652
21586
|
// ../../node_modules/.bun/yaml@2.9.0/node_modules/yaml/dist/index.js
|
|
21653
|
-
var composer, Document, Schema,
|
|
21654
|
-
var
|
|
21587
|
+
var composer, Document, Schema, errors3, Alias, identity, Pair, Scalar, YAMLMap, YAMLSeq, cst, lexer, lineCounter, parser, publicApi, visit, $Composer, $Document, $Schema, $YAMLError, $YAMLParseError, $YAMLWarning, $Alias, $isAlias, $isCollection, $isDocument, $isMap, $isNode, $isPair, $isScalar, $isSeq, $Pair, $Scalar, $YAMLMap, $YAMLSeq, $Lexer, $LineCounter, $Parser, $parse, $parseAllDocuments, $parseDocument, $stringify, $visit, $visitAsync;
|
|
21588
|
+
var init_dist = __esm(() => {
|
|
21655
21589
|
composer = require_composer();
|
|
21656
21590
|
Document = require_Document();
|
|
21657
21591
|
Schema = require_Schema();
|
|
21658
|
-
|
|
21592
|
+
errors3 = require_errors();
|
|
21659
21593
|
Alias = require_Alias();
|
|
21660
21594
|
identity = require_identity();
|
|
21661
21595
|
Pair = require_Pair();
|
|
@@ -21671,9 +21605,9 @@ var init_dist2 = __esm(() => {
|
|
|
21671
21605
|
$Composer = composer.Composer;
|
|
21672
21606
|
$Document = Document.Document;
|
|
21673
21607
|
$Schema = Schema.Schema;
|
|
21674
|
-
$YAMLError =
|
|
21675
|
-
$YAMLParseError =
|
|
21676
|
-
$YAMLWarning =
|
|
21608
|
+
$YAMLError = errors3.YAMLError;
|
|
21609
|
+
$YAMLParseError = errors3.YAMLParseError;
|
|
21610
|
+
$YAMLWarning = errors3.YAMLWarning;
|
|
21677
21611
|
$Alias = Alias.Alias;
|
|
21678
21612
|
$isAlias = identity.isAlias;
|
|
21679
21613
|
$isCollection = identity.isCollection;
|
|
@@ -21701,7 +21635,7 @@ var init_dist2 = __esm(() => {
|
|
|
21701
21635
|
// ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.39/node_modules/@gobing-ai/ts-runtime/dist/config.js
|
|
21702
21636
|
var configSchema;
|
|
21703
21637
|
var init_config = __esm(() => {
|
|
21704
|
-
|
|
21638
|
+
init_dist();
|
|
21705
21639
|
init_zod();
|
|
21706
21640
|
configSchema = exports_external.object({
|
|
21707
21641
|
app: exports_external.object({
|
|
@@ -21953,10 +21887,27 @@ function getProcessPid() {
|
|
|
21953
21887
|
function uniqueToken() {
|
|
21954
21888
|
return `${Date.now()}.${crypto.randomUUID()}`;
|
|
21955
21889
|
}
|
|
21890
|
+
// ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.67/node_modules/@gobing-ai/ts-utils/dist/output.js
|
|
21891
|
+
var defaultStderrTarget;
|
|
21892
|
+
function processStream(name) {
|
|
21893
|
+
const proc = globalThis.process;
|
|
21894
|
+
const stream = proc?.[name];
|
|
21895
|
+
if (stream === undefined) {
|
|
21896
|
+
throw new Error(`No ${name} target available: set one via setDefaultOutputTargets or pass an explicit target`);
|
|
21897
|
+
}
|
|
21898
|
+
return stream;
|
|
21899
|
+
}
|
|
21900
|
+
function writeLine(message, target) {
|
|
21901
|
+
target.write(`${message}
|
|
21902
|
+
`);
|
|
21903
|
+
}
|
|
21904
|
+
function echoError(message, target = defaultStderrTarget ?? processStream("stderr")) {
|
|
21905
|
+
writeLine(message, target);
|
|
21906
|
+
}
|
|
21907
|
+
|
|
21956
21908
|
// ../../packages/kk-core/src/render-md.ts
|
|
21957
21909
|
if (false) {}
|
|
21958
21910
|
// ../../plugins/ingestions/horizon-ingest/src/index.ts
|
|
21959
|
-
init_dist();
|
|
21960
21911
|
init_zod();
|
|
21961
21912
|
var InputConfigSchema = exports_external.object({
|
|
21962
21913
|
data_dir: exports_external.string().trim().min(1).optional(),
|
|
@@ -21997,7 +21948,7 @@ function splitItemBlocks(markdown) {
|
|
|
21997
21948
|
}
|
|
21998
21949
|
return items;
|
|
21999
21950
|
}
|
|
22000
|
-
function itemToDoc(item,
|
|
21951
|
+
function itemToDoc(item, date5, lang) {
|
|
22001
21952
|
const lines = item.block.split(`
|
|
22002
21953
|
`);
|
|
22003
21954
|
const bodyParts = [];
|
|
@@ -22033,7 +21984,7 @@ function itemToDoc(item, date6, lang) {
|
|
|
22033
21984
|
bodyParts.push(line);
|
|
22034
21985
|
}
|
|
22035
21986
|
const doc2 = {
|
|
22036
|
-
id: `horizon:${
|
|
21987
|
+
id: `horizon:${date5}-${item.anchorProfile}-${item.anchorN}`,
|
|
22037
21988
|
title: item.title,
|
|
22038
21989
|
body: bodyParts.join(`
|
|
22039
21990
|
`).trim(),
|
|
@@ -22041,7 +21992,7 @@ function itemToDoc(item, date6, lang) {
|
|
|
22041
21992
|
mediaType: "text/markdown",
|
|
22042
21993
|
metadata: {
|
|
22043
21994
|
lang,
|
|
22044
|
-
date:
|
|
21995
|
+
date: date5,
|
|
22045
21996
|
profile: item.anchorProfile,
|
|
22046
21997
|
score: item.score,
|
|
22047
21998
|
source: sourceLine.split(" \xB7 ")[0] ?? "",
|
|
@@ -22052,8 +22003,8 @@ function itemToDoc(item, date6, lang) {
|
|
|
22052
22003
|
};
|
|
22053
22004
|
return doc2;
|
|
22054
22005
|
}
|
|
22055
|
-
function digestToDocs(markdown,
|
|
22056
|
-
return DocListSchema.parse(splitItemBlocks(markdown).map((item) => itemToDoc(item,
|
|
22006
|
+
function digestToDocs(markdown, date5, lang) {
|
|
22007
|
+
return DocListSchema.parse(splitItemBlocks(markdown).map((item) => itemToDoc(item, date5, lang)));
|
|
22057
22008
|
}
|
|
22058
22009
|
async function processIngestionIO(options, config3, runner = defaultRunner, now = new Date) {
|
|
22059
22010
|
const fs = createNodeFileSystem();
|