@happyvertical/smrt-ingestion 0.57.26 → 0.57.28
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/FEEDBACK.md +7 -0
- package/PROPOSALS.md +69 -3
- package/README.md +4 -1
- package/REVIEW.md +50 -11
- package/agents/execution.md +4 -2
- package/dist/argument-issues.d.ts +29 -0
- package/dist/argument-issues.d.ts.map +1 -0
- package/dist/chunks/{execution-BzVQax0n.js → execution-Dv3G0d62.js} +102 -12
- package/dist/chunks/execution-Dv3G0d62.js.map +1 -0
- package/dist/chunks/{feedback-D3UTF8fm.js → feedback-PLOZth0a.js} +3 -3
- package/dist/chunks/{feedback-D3UTF8fm.js.map → feedback-PLOZth0a.js.map} +1 -1
- package/dist/chunks/{reviewer-instruction-CEc3AOuU.js → reviewer-instruction-zn11aVA5.js} +2 -2
- package/dist/chunks/{reviewer-instruction-CEc3AOuU.js.map → reviewer-instruction-zn11aVA5.js.map} +1 -1
- package/dist/execution.d.ts +8 -5
- package/dist/execution.d.ts.map +1 -1
- package/dist/execution.js +1 -1
- package/dist/manifest.json +1 -1
- package/dist/models.js +1 -1
- package/dist/models.js.map +1 -1
- package/dist/proposal-dto.d.ts +14 -0
- package/dist/proposal-dto.d.ts.map +1 -1
- package/dist/proposal-errors.d.ts +8 -1
- package/dist/proposal-errors.d.ts.map +1 -1
- package/dist/proposal-validation.d.ts +19 -8
- package/dist/proposal-validation.d.ts.map +1 -1
- package/dist/proposals.d.ts +1 -1
- package/dist/proposals.d.ts.map +1 -1
- package/dist/proposals.js +50 -49
- package/dist/proposals.js.map +1 -1
- package/dist/review-dto.d.ts +26 -2
- package/dist/review-dto.d.ts.map +1 -1
- package/dist/review-host.d.ts.map +1 -1
- package/dist/server.d.ts +2 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +4 -4
- package/dist/server.js.map +1 -1
- package/dist/smrt-knowledge.json +21 -21
- package/dist/svelte/components/ReviewView.svelte +67 -8
- package/dist/svelte/components/ReviewView.svelte.d.ts.map +1 -1
- package/dist/svelte/i18n.d.ts +2 -0
- package/dist/svelte/i18n.d.ts.map +1 -1
- package/dist/svelte/i18n.js +2 -0
- package/dist/svelte/index.d.ts +1 -1
- package/dist/svelte/index.d.ts.map +1 -1
- package/dist/svelte/view-utils.d.ts +5 -1
- package/dist/svelte/view-utils.d.ts.map +1 -1
- package/dist/svelte/view-utils.js +5 -1
- package/package.json +13 -13
- package/dist/chunks/execution-BzVQax0n.js.map +0 -1
|
@@ -172,6 +172,8 @@ $effect(() => {
|
|
|
172
172
|
startHandler = '';
|
|
173
173
|
startArgs = '';
|
|
174
174
|
startReason = '';
|
|
175
|
+
startRejected = false;
|
|
176
|
+
startIssues = [];
|
|
175
177
|
splits = {};
|
|
176
178
|
resolveReason = '';
|
|
177
179
|
});
|
|
@@ -575,6 +577,10 @@ let startHandler = $state(''),
|
|
|
575
577
|
startArgs = $state(''),
|
|
576
578
|
startReason = $state(''),
|
|
577
579
|
startInvalid = $state(false),
|
|
580
|
+
// The handler refused the reviewer's arguments: the form and draft stay;
|
|
581
|
+
// `startIssues` holds the bounded, value-free field paths when known.
|
|
582
|
+
startRejected = $state(false),
|
|
583
|
+
startIssues = $state<string[]>([]),
|
|
578
584
|
resolveReason = $state('');
|
|
579
585
|
const startEntry = $derived.by((): ProposalCatalogEntry | undefined =>
|
|
580
586
|
view?.catalog?.find(
|
|
@@ -593,6 +599,8 @@ const startMissing = $derived.by((): string[] => {
|
|
|
593
599
|
});
|
|
594
600
|
function draftStart() {
|
|
595
601
|
startInvalid = false;
|
|
602
|
+
startRejected = false;
|
|
603
|
+
startIssues = [];
|
|
596
604
|
const entry = view?.catalog?.find(
|
|
597
605
|
(candidate) => `${candidate.id}@${candidate.version}` === startHandler,
|
|
598
606
|
);
|
|
@@ -608,16 +616,38 @@ function draftStart() {
|
|
|
608
616
|
)
|
|
609
617
|
: '';
|
|
610
618
|
}
|
|
611
|
-
|
|
619
|
+
/**
|
|
620
|
+
* Distinct schema-owned field paths of a typed refusal; never values. A root
|
|
621
|
+
* path `/name` shows as the bare (unescaped) name, like `missingFields`;
|
|
622
|
+
* nested paths stay escaped pointers and `/` (the whole object) stays `/`.
|
|
623
|
+
*/
|
|
624
|
+
function refusedFields(issues: unknown): string[] {
|
|
625
|
+
if (!Array.isArray(issues)) return [];
|
|
626
|
+
const paths = new Set<string>();
|
|
627
|
+
for (const issue of issues.slice(0, 20)) {
|
|
628
|
+
const path = (issue as { path?: unknown } | null)?.path;
|
|
629
|
+
if (typeof path !== 'string' || !path || path.length > 160) continue;
|
|
630
|
+
paths.add(
|
|
631
|
+
/^\/[^/]+$/.test(path)
|
|
632
|
+
? path.slice(1).replace(/~1/g, '/').replace(/~0/g, '~')
|
|
633
|
+
: path,
|
|
634
|
+
);
|
|
635
|
+
}
|
|
636
|
+
return [...paths];
|
|
637
|
+
}
|
|
638
|
+
async function startAction() {
|
|
612
639
|
const entry = startEntry;
|
|
613
|
-
if (!entry || !view?.analysis || !host.startAction) return;
|
|
640
|
+
if (!entry || !view?.analysis || !host.startAction || pending) return;
|
|
614
641
|
let args: Record<string, unknown>;
|
|
642
|
+
startRejected = false;
|
|
643
|
+
startIssues = [];
|
|
615
644
|
try {
|
|
616
645
|
args = argumentsObject(startArgs);
|
|
617
646
|
} catch {
|
|
618
647
|
startInvalid = true;
|
|
619
648
|
return;
|
|
620
649
|
}
|
|
650
|
+
startInvalid = false;
|
|
621
651
|
const input = {
|
|
622
652
|
itemId,
|
|
623
653
|
handlerId: entry.id,
|
|
@@ -627,12 +657,40 @@ function startAction() {
|
|
|
627
657
|
...(startReason ? { reason: startReason } : {}),
|
|
628
658
|
};
|
|
629
659
|
const start = host.startAction;
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
660
|
+
// Like `preview`: only the handler's refusal of the arguments (a resolved
|
|
661
|
+
// `{ rejected: 'invalid' }` or a thrown `HandlerArgumentsInvalidError`)
|
|
662
|
+
// keeps the view, form and draft inline. Anything else fails closed.
|
|
663
|
+
const ticket = ++epoch;
|
|
664
|
+
clearTimeout(poll);
|
|
665
|
+
pending = true;
|
|
666
|
+
error = false;
|
|
667
|
+
let refusal: unknown;
|
|
668
|
+
try {
|
|
669
|
+
const outcome = await start(input);
|
|
670
|
+
if (!alive || ticket !== epoch) return;
|
|
671
|
+
if (outcome?.rejected === 'invalid') refusal = outcome;
|
|
672
|
+
} catch (caught) {
|
|
673
|
+
if (!alive || ticket !== epoch) return;
|
|
674
|
+
if (
|
|
675
|
+
(caught as { name?: unknown } | null)?.name !==
|
|
676
|
+
'HandlerArgumentsInvalidError'
|
|
677
|
+
) {
|
|
678
|
+
deny();
|
|
679
|
+
return;
|
|
680
|
+
}
|
|
681
|
+
refusal = caught;
|
|
682
|
+
}
|
|
683
|
+
if (refusal) {
|
|
684
|
+
startRejected = true;
|
|
685
|
+
startIssues = refusedFields((refusal as { issues?: unknown }).issues);
|
|
686
|
+
pending = false;
|
|
687
|
+
schedulePoll(ticket);
|
|
688
|
+
return;
|
|
689
|
+
}
|
|
690
|
+
startHandler = '';
|
|
691
|
+
startArgs = '';
|
|
692
|
+
startReason = '';
|
|
693
|
+
await load();
|
|
636
694
|
}
|
|
637
695
|
function resolve() {
|
|
638
696
|
if (!host.resolve) return;
|
|
@@ -801,6 +859,7 @@ onMount(() => {
|
|
|
801
859
|
<Input aria-label={t(M['ingestion.reason'])} bind:value={startReason} />
|
|
802
860
|
<p>{t(M['ingestion.startHelp'])}</p>
|
|
803
861
|
{#if startInvalid}<p role="alert">{t(M['ingestion.invalid'])}</p>{/if}
|
|
862
|
+
{#if startRejected}<div role="alert" data-testid="start-rejected"><p>{t(M['ingestion.startRejected'])}</p>{#if startIssues.length}<p>{t(M['ingestion.refusedFields'])}</p><ul>{#each startIssues as field (field)}<li><code>{field}</code></li>{/each}</ul>{/if}</div>{/if}
|
|
804
863
|
<Button disabled={pending || !view.analysis} onclick={startAction}>{t(M['ingestion.start'])}</Button>
|
|
805
864
|
{/if}
|
|
806
865
|
</fieldset>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReviewView.svelte.d.ts","sourceRoot":"","sources":["../../../src/svelte/components/ReviewView.svelte.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAa5E,OAAqB,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAIzE,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,gBAAgB,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8FAA8F;IAC9F,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,CACP,IAAI,EAAE,cAAc,GAAG,SAAS,EAChC,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,MAAM,KACX,IAAI,CAAC;IACV,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,mFAAmF;IACnF,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;CACpE;
|
|
1
|
+
{"version":3,"file":"ReviewView.svelte.d.ts","sourceRoot":"","sources":["../../../src/svelte/components/ReviewView.svelte.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAa5E,OAAqB,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAIzE,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,gBAAgB,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8FAA8F;IAC9F,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,CACP,IAAI,EAAE,cAAc,GAAG,SAAS,EAChC,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,MAAM,KACX,IAAI,CAAC;IACV,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,mFAAmF;IACnF,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;CACpE;AAg1BD,QAAA,MAAM,UAAU,2CAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
|
package/dist/svelte/i18n.d.ts
CHANGED
|
@@ -45,6 +45,8 @@ export declare const M: {
|
|
|
45
45
|
readonly 'ingestion.args': "ingestion.args";
|
|
46
46
|
readonly 'ingestion.suggestionArgs': "ingestion.suggestionArgs";
|
|
47
47
|
readonly 'ingestion.previewRejected': "ingestion.previewRejected";
|
|
48
|
+
readonly 'ingestion.startRejected': "ingestion.startRejected";
|
|
49
|
+
readonly 'ingestion.refusedFields': "ingestion.refusedFields";
|
|
48
50
|
readonly 'ingestion.completeSuggestion': "ingestion.completeSuggestion";
|
|
49
51
|
readonly 'ingestion.effects': "ingestion.effects";
|
|
50
52
|
readonly 'ingestion.approve': "ingestion.approve";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/svelte/i18n.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,CAAC
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/svelte/i18n.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkJZ,CAAC"}
|
package/dist/svelte/i18n.js
CHANGED
|
@@ -46,6 +46,8 @@ export const M = defineMessages({
|
|
|
46
46
|
'ingestion.args': 'Exact arguments (JSON)',
|
|
47
47
|
'ingestion.suggestionArgs': 'Suggested arguments (JSON)',
|
|
48
48
|
'ingestion.previewRejected': 'These arguments did not pass the handler validation. Correct them and prepare review again.',
|
|
49
|
+
'ingestion.startRejected': 'These arguments did not pass the handler validation. Correct them and start the action again.',
|
|
50
|
+
'ingestion.refusedFields': 'Fields to check',
|
|
49
51
|
'ingestion.completeSuggestion': 'This suggestion needs review. Complete or confirm its arguments, then prepare review.',
|
|
50
52
|
'ingestion.effects': 'Proposed effects',
|
|
51
53
|
'ingestion.approve': 'Approve',
|
package/dist/svelte/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { Assignment, EvidenceView, InboxEntry, InboxEvidence, InboxState, IntakeReviewHost, ItemReviewView, LogicalSplitInput, PreviewRejection, ReviewAction, ReviewerInstruction, ReviewerInstructionInput, ReviewerInstructionView, ReviewPage, } from '../review-dto.js';
|
|
1
|
+
export type { Assignment, EvidenceView, HandlerArgumentIssue, InboxEntry, InboxEvidence, InboxState, IntakeReviewHost, ItemReviewView, LogicalSplitInput, PreviewRejection, ReviewAction, ReviewerInstruction, ReviewerInstructionInput, ReviewerInstructionView, ReviewPage, } from '../review-dto.js';
|
|
2
2
|
export { default as EvidenceViewer } from './components/EvidenceViewer.svelte';
|
|
3
3
|
export { default as IntakeInbox } from './components/IntakeInbox.svelte';
|
|
4
4
|
export { default as IntakeReview } from './components/IntakeReview.svelte';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/svelte/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,UAAU,EACV,YAAY,EACZ,UAAU,EACV,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,UAAU,GACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qCAAqC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/svelte/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,UAAU,EACV,YAAY,EACZ,oBAAoB,EACpB,UAAU,EACV,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,UAAU,GACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qCAAqC,CAAC"}
|
|
@@ -12,7 +12,11 @@ export declare function missingArguments(entry: ProposalCatalogEntry, args: Reco
|
|
|
12
12
|
/** Only host-authorized same-origin HTTP URLs may reach original media elements. */
|
|
13
13
|
export declare function evidenceUrl(value?: string, origin?: string): string | undefined;
|
|
14
14
|
export declare function argumentsObject(value: string): Record<string, unknown>;
|
|
15
|
-
/**
|
|
15
|
+
/**
|
|
16
|
+
* Required top-level handler arguments missing from a JSON draft; unparsable
|
|
17
|
+
* drafts report none. Nested misses (JSON Pointer `missingFields`) are left to
|
|
18
|
+
* the server's revalidation, which refuses with `HandlerArgumentsInvalidError`.
|
|
19
|
+
*/
|
|
16
20
|
export declare function missingRequired(schema: Record<string, unknown>, draft: string): string[];
|
|
17
21
|
export declare function pageGroups(value: string): number[][];
|
|
18
22
|
/** Project useful extraction content; never present internal configuration/provenance JSON. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-utils.d.ts","sourceRoot":"","sources":["../../src/svelte/view-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE/E;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,oBAAoB,EAC3B,WAAW,EAAE,SAAS,mBAAmB,EAAE,EAC3C,WAAW,EAAE,SAAS,MAAM,EAAE,GAC7B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkBzB;AACD,gEAAgE;AAChE,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,oBAAoB,EAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,MAAM,EAAE,CAQV;AACD,oFAAoF;AACpF,wBAAgB,WAAW,CACzB,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,GAAG,SAAS,CAmBpB;AACD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKtE;AACD
|
|
1
|
+
{"version":3,"file":"view-utils.d.ts","sourceRoot":"","sources":["../../src/svelte/view-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE/E;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,oBAAoB,EAC3B,WAAW,EAAE,SAAS,mBAAmB,EAAE,EAC3C,WAAW,EAAE,SAAS,MAAM,EAAE,GAC7B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkBzB;AACD,gEAAgE;AAChE,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,oBAAoB,EAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,MAAM,EAAE,CAQV;AACD,oFAAoF;AACpF,wBAAgB,WAAW,CACzB,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,GAAG,SAAS,CAmBpB;AACD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKtE;AACD;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,KAAK,EAAE,MAAM,GACZ,MAAM,EAAE,CAWV;AACD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,CAcpD;AAED,+FAA+F;AAC/F,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC,CAsED;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO,CAQxE;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,CAAC;AAEzC,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,YAAY,CAU3D;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,YAAY,CAyC7D;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAK5D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAkB3D;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAiB1E"}
|
|
@@ -52,7 +52,11 @@ export function argumentsObject(value) {
|
|
|
52
52
|
throw new Error('Invalid arguments');
|
|
53
53
|
return result;
|
|
54
54
|
}
|
|
55
|
-
/**
|
|
55
|
+
/**
|
|
56
|
+
* Required top-level handler arguments missing from a JSON draft; unparsable
|
|
57
|
+
* drafts report none. Nested misses (JSON Pointer `missingFields`) are left to
|
|
58
|
+
* the server's revalidation, which refuses with `HandlerArgumentsInvalidError`.
|
|
59
|
+
*/
|
|
56
60
|
export function missingRequired(schema, draft) {
|
|
57
61
|
if (!Array.isArray(schema.required))
|
|
58
62
|
return [];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@happyvertical/smrt-ingestion",
|
|
3
|
-
"version": "0.57.
|
|
3
|
+
"version": "0.57.28",
|
|
4
4
|
"description": "Durable tenant-scoped intake and evidence foundations",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -50,32 +50,32 @@
|
|
|
50
50
|
}
|
|
51
51
|
},
|
|
52
52
|
"dependencies": {
|
|
53
|
-
"@happyvertical/smrt-core": "0.57.
|
|
54
|
-
"@happyvertical/smrt-types": "0.57.
|
|
55
|
-
"@happyvertical/smrt-tenancy": "0.57.
|
|
56
|
-
"@happyvertical/smrt-assets": "0.57.
|
|
57
|
-
"@happyvertical/smrt-jobs": "0.57.
|
|
53
|
+
"@happyvertical/smrt-core": "0.57.28",
|
|
54
|
+
"@happyvertical/smrt-types": "0.57.28",
|
|
55
|
+
"@happyvertical/smrt-tenancy": "0.57.28",
|
|
56
|
+
"@happyvertical/smrt-assets": "0.57.28",
|
|
57
|
+
"@happyvertical/smrt-jobs": "0.57.28",
|
|
58
58
|
"@happyvertical/sql": "^0.106.0",
|
|
59
59
|
"@happyvertical/pdf": "^0.65.9",
|
|
60
60
|
"@happyvertical/ocr": "^0.62.1",
|
|
61
61
|
"@happyvertical/speech": "^0.106.0",
|
|
62
62
|
"@happyvertical/ai": "^0.106.0",
|
|
63
63
|
"sharp": "^0.35.5",
|
|
64
|
-
"@happyvertical/smrt-agents": "0.57.
|
|
65
|
-
"@happyvertical/smrt-playbooks": "0.57.
|
|
64
|
+
"@happyvertical/smrt-agents": "0.57.28",
|
|
65
|
+
"@happyvertical/smrt-playbooks": "0.57.28",
|
|
66
66
|
"ajv": "8.20.0",
|
|
67
|
-
"@happyvertical/smrt-ui": "0.57.
|
|
67
|
+
"@happyvertical/smrt-ui": "0.57.28"
|
|
68
68
|
},
|
|
69
69
|
"devDependencies": {
|
|
70
|
-
"@happyvertical/smrt-vitest": "0.57.
|
|
70
|
+
"@happyvertical/smrt-vitest": "0.57.28",
|
|
71
71
|
"@types/node": "24.13.6",
|
|
72
72
|
"typescript": "6.0.3",
|
|
73
73
|
"vite": "8.1.6",
|
|
74
74
|
"vitest": "4.1.10",
|
|
75
|
-
"@happyvertical/smrt-content": "0.57.
|
|
76
|
-
"@happyvertical/smrt-messages": "0.57.
|
|
75
|
+
"@happyvertical/smrt-content": "0.57.28",
|
|
76
|
+
"@happyvertical/smrt-messages": "0.57.28",
|
|
77
77
|
"@happyvertical/email": "^0.106.0",
|
|
78
|
-
"@happyvertical/smrt-users": "0.57.
|
|
78
|
+
"@happyvertical/smrt-users": "0.57.28",
|
|
79
79
|
"@sveltejs/package": "^2.5.8",
|
|
80
80
|
"@sveltejs/vite-plugin-svelte": "^7.3.0",
|
|
81
81
|
"svelte": "^5.57.1",
|