@happyvertical/smrt-ingestion 0.55.5 → 0.55.7

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 (85) hide show
  1. package/AGENTS.md +13 -3
  2. package/FEEDBACK.md +117 -0
  3. package/PROPOSALS.md +173 -0
  4. package/README.md +14 -0
  5. package/REVIEW.md +136 -0
  6. package/agents/execution.md +132 -0
  7. package/dist/chunks/execution-CYjtj9_l.js +8031 -0
  8. package/dist/chunks/execution-CYjtj9_l.js.map +1 -0
  9. package/dist/chunks/execution-internal-DWteDHM2.js +7 -0
  10. package/dist/chunks/execution-internal-DWteDHM2.js.map +1 -0
  11. package/dist/chunks/feedback-B_NILilH.js +577 -0
  12. package/dist/chunks/feedback-B_NILilH.js.map +1 -0
  13. package/dist/chunks/proposal-errors-z24VKWnQ.js +301 -0
  14. package/dist/chunks/proposal-errors-z24VKWnQ.js.map +1 -0
  15. package/dist/dto.d.ts +3 -0
  16. package/dist/dto.d.ts.map +1 -1
  17. package/dist/execution-contracts.d.ts +3 -0
  18. package/dist/execution-contracts.d.ts.map +1 -1
  19. package/dist/execution-internal.d.ts +9 -0
  20. package/dist/execution-internal.d.ts.map +1 -0
  21. package/dist/execution.d.ts +23 -1
  22. package/dist/execution.d.ts.map +1 -1
  23. package/dist/execution.js +1 -7614
  24. package/dist/extraction.d.ts.map +1 -1
  25. package/dist/feedback-contracts.d.ts +40 -0
  26. package/dist/feedback-contracts.d.ts.map +1 -0
  27. package/dist/feedback-dto.d.ts +100 -0
  28. package/dist/feedback-dto.d.ts.map +1 -0
  29. package/dist/feedback-internal.d.ts +19 -0
  30. package/dist/feedback-internal.d.ts.map +1 -0
  31. package/dist/feedback.d.ts +53 -0
  32. package/dist/feedback.d.ts.map +1 -0
  33. package/dist/manifest.json +13 -1
  34. package/dist/models.js +1 -1
  35. package/dist/models.js.map +1 -1
  36. package/dist/proposal-contracts.d.ts +89 -0
  37. package/dist/proposal-contracts.d.ts.map +1 -0
  38. package/dist/proposal-dto.d.ts +124 -0
  39. package/dist/proposal-dto.d.ts.map +1 -0
  40. package/dist/proposal-errors.d.ts +5 -0
  41. package/dist/proposal-errors.d.ts.map +1 -0
  42. package/dist/proposal-sdk.d.ts +12 -0
  43. package/dist/proposal-sdk.d.ts.map +1 -0
  44. package/dist/proposal-validation.d.ts +188 -0
  45. package/dist/proposal-validation.d.ts.map +1 -0
  46. package/dist/proposals.d.ts +44 -0
  47. package/dist/proposals.d.ts.map +1 -0
  48. package/dist/proposals.js +964 -0
  49. package/dist/proposals.js.map +1 -0
  50. package/dist/review-dto.d.ts +115 -0
  51. package/dist/review-dto.d.ts.map +1 -0
  52. package/dist/server.d.ts +56 -0
  53. package/dist/server.d.ts.map +1 -1
  54. package/dist/server.js +263 -341
  55. package/dist/server.js.map +1 -1
  56. package/dist/smrt-knowledge.json +87 -12
  57. package/dist/svelte/components/ActionReview.svelte +232 -0
  58. package/dist/svelte/components/ActionReview.svelte.d.ts +15 -0
  59. package/dist/svelte/components/ActionReview.svelte.d.ts.map +1 -0
  60. package/dist/svelte/components/EvidenceViewer.svelte +31 -0
  61. package/dist/svelte/components/EvidenceViewer.svelte.d.ts +8 -0
  62. package/dist/svelte/components/EvidenceViewer.svelte.d.ts.map +1 -0
  63. package/dist/svelte/components/InboxView.svelte +119 -0
  64. package/dist/svelte/components/InboxView.svelte.d.ts +9 -0
  65. package/dist/svelte/components/InboxView.svelte.d.ts.map +1 -0
  66. package/dist/svelte/components/IntakeInbox.svelte +11 -0
  67. package/dist/svelte/components/IntakeInbox.svelte.d.ts +10 -0
  68. package/dist/svelte/components/IntakeInbox.svelte.d.ts.map +1 -0
  69. package/dist/svelte/components/IntakeReview.svelte +11 -0
  70. package/dist/svelte/components/IntakeReview.svelte.d.ts +10 -0
  71. package/dist/svelte/components/IntakeReview.svelte.d.ts.map +1 -0
  72. package/dist/svelte/components/ReviewView.svelte +243 -0
  73. package/dist/svelte/components/ReviewView.svelte.d.ts +9 -0
  74. package/dist/svelte/components/ReviewView.svelte.d.ts.map +1 -0
  75. package/dist/svelte/i18n.d.ts +72 -0
  76. package/dist/svelte/i18n.d.ts.map +1 -0
  77. package/dist/svelte/i18n.js +72 -0
  78. package/dist/svelte/index.d.ts +5 -0
  79. package/dist/svelte/index.d.ts.map +1 -0
  80. package/dist/svelte/index.js +3 -0
  81. package/dist/svelte/view-utils.d.ts +13 -0
  82. package/dist/svelte/view-utils.d.ts.map +1 -0
  83. package/dist/svelte/view-utils.js +96 -0
  84. package/package.json +53 -22
  85. package/dist/execution.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"extraction.d.ts","sourceRoot":"","sources":["../src/extraction.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAOnE,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEnE,mBAAmB,uBAAuB,CAAC;AAE3C,iFAAiF;AACjF,MAAM,WAAW,0BAA0B;IACzC,GAAG,CAAC,EAAE;QACJ,QAAQ,EAAE,WAAW,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;QACpD,QAAQ,EAAE,gBAAgB,CAAC;KAC5B,CAAC;IACF,GAAG,CAAC,EAAE;QAAE,QAAQ,EAAE,gBAAgB,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IACxE,MAAM,CAAC,EAAE;QAAE,QAAQ,EAAE,gBAAgB,CAAC;QAAC,OAAO,EAAE,qBAAqB,CAAA;KAAE,CAAC;IACxE,MAAM,CAAC,EAAE;QAAE,QAAQ,EAAE,gBAAgB,CAAC;QAAC,OAAO,EAAE,YAAY,CAAA;KAAE,CAAC;IAC/D,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC7B,gFAAgF;IAChF,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;yFACqF;IACrF,qBAAqB,EAAE,eAAe,CAAC;CACxC;AAED,oFAAoF;AACpF,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,0BAA0B,GACxC,iBAAiB,CAyJnB;AAuHD;+EAC+E;AAC/E,wBAAsB,eAAe,CACnC,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,IAAI,CACX,iBAAiB,EACjB,QAAQ,GAAG,uBAAuB,GAAG,QAAQ,CAC9C,GACA,OAAO,CAAC,OAAO,CAAC,CAuGlB;AAED,qFAAqF;AACrF,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EAAE,EAAE;;;;;;;;;;EAgCnB"}
1
+ {"version":3,"file":"extraction.d.ts","sourceRoot":"","sources":["../src/extraction.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAOnE,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEnE,mBAAmB,uBAAuB,CAAC;AAE3C,iFAAiF;AACjF,MAAM,WAAW,0BAA0B;IACzC,GAAG,CAAC,EAAE;QACJ,QAAQ,EAAE,WAAW,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;QACpD,QAAQ,EAAE,gBAAgB,CAAC;KAC5B,CAAC;IACF,GAAG,CAAC,EAAE;QAAE,QAAQ,EAAE,gBAAgB,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IACxE,MAAM,CAAC,EAAE;QAAE,QAAQ,EAAE,gBAAgB,CAAC;QAAC,OAAO,EAAE,qBAAqB,CAAA;KAAE,CAAC;IACxE,MAAM,CAAC,EAAE;QAAE,QAAQ,EAAE,gBAAgB,CAAC;QAAC,OAAO,EAAE,YAAY,CAAA;KAAE,CAAC;IAC/D,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC7B,gFAAgF;IAChF,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;yFACqF;IACrF,qBAAqB,EAAE,eAAe,CAAC;CACxC;AAED,oFAAoF;AACpF,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,0BAA0B,GACxC,iBAAiB,CAiKnB;AAuHD;+EAC+E;AAC/E,wBAAsB,eAAe,CACnC,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,IAAI,CACX,iBAAiB,EACjB,QAAQ,GAAG,uBAAuB,GAAG,QAAQ,CAC9C,GACA,OAAO,CAAC,OAAO,CAAC,CAuGlB;AAED,qFAAqF;AACrF,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EAAE,EAAE;;;;;;;;;;EAgCnB"}
@@ -0,0 +1,40 @@
1
+ import type { DatabaseInterface } from '@happyvertical/sql';
2
+ import type { RoutingRule } from './feedback-dto.js';
3
+ import type { IngestionScope } from './server.js';
4
+ export interface FeedbackConfiguration {
5
+ version: string;
6
+ maxExamples: number;
7
+ maxScan: number;
8
+ maxBytes: number;
9
+ minimumSimilarity: number;
10
+ /** Live permission, same executor; host serializes grant changes at this boundary. */
11
+ authorize(input: {
12
+ db: DatabaseInterface;
13
+ scope: Readonly<IngestionScope>;
14
+ itemId: string;
15
+ operation: 'capture' | 'retrieve' | 'suggest' | 'adopt';
16
+ }): Promise<boolean>;
17
+ policy?: {
18
+ /** Return current version and a human-readable routing preview; no mutation. */
19
+ preview(input: {
20
+ db: DatabaseInterface;
21
+ scope: Readonly<IngestionScope>;
22
+ rule: RoutingRule;
23
+ }): Promise<{
24
+ version: string;
25
+ preview: string;
26
+ }>;
27
+ /** Atomic same-executor CAS and audit. May store routing preferences only, never permissions or automation. */
28
+ adopt(input: {
29
+ db: DatabaseInterface;
30
+ scope: Readonly<IngestionScope>;
31
+ rule: RoutingRule;
32
+ expectedVersion: string;
33
+ requestId: string;
34
+ }): Promise<{
35
+ version: string;
36
+ auditId: string;
37
+ }>;
38
+ };
39
+ }
40
+ //# sourceMappingURL=feedback-contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback-contracts.d.ts","sourceRoot":"","sources":["../src/feedback-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sFAAsF;IACtF,SAAS,CAAC,KAAK,EAAE;QACf,EAAE,EAAE,iBAAiB,CAAC;QACtB,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;QAChC,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC;KACzD,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrB,MAAM,CAAC,EAAE;QACP,gFAAgF;QAChF,OAAO,CAAC,KAAK,EAAE;YACb,EAAE,EAAE,iBAAiB,CAAC;YACtB,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;YAChC,IAAI,EAAE,WAAW,CAAC;SACnB,GAAG,OAAO,CAAC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAClD,+GAA+G;QAC/G,KAAK,CAAC,KAAK,EAAE;YACX,EAAE,EAAE,iBAAiB,CAAC;YACtB,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;YAChC,IAAI,EAAE,WAAW,CAAC;YAClB,eAAe,EAAE,MAAM,CAAC;YACxB,SAAS,EAAE,MAAM,CAAC;SACnB,GAAG,OAAO,CAAC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACnD,CAAC;CACH"}
@@ -0,0 +1,100 @@
1
+ /** Browser-safe feedback contracts. All provenance is resolved by the server. */
2
+ import type { IntakeValues } from './execution-dto.js';
3
+ export interface FeedbackBinding {
4
+ itemId: string;
5
+ actionId: string;
6
+ expectedRevision: number;
7
+ expectedReviewVersion: number;
8
+ bindingHash: string;
9
+ }
10
+ export interface RecordFeedbackInput extends FeedbackBinding {
11
+ judgment: 'correct' | 'incorrect';
12
+ comment?: string;
13
+ requestId: string;
14
+ supersedesId?: string;
15
+ }
16
+ export interface ObserveFeedbackInput extends FeedbackBinding {
17
+ kind: 'action_decision' | 'downstream_outcome';
18
+ eventId: string;
19
+ }
20
+ export interface FeedbackExample {
21
+ feedbackId: string;
22
+ digest: string;
23
+ itemId: string;
24
+ actionId: string;
25
+ revision: number;
26
+ handlerId: string;
27
+ handlerVersion: string;
28
+ judgment: 'correct' | 'incorrect';
29
+ query: string;
30
+ args: IntakeValues;
31
+ model: {
32
+ provider: string;
33
+ model: string;
34
+ version: string;
35
+ };
36
+ promptVersion: string;
37
+ configurationVersion: string;
38
+ }
39
+ export interface FeedbackReceipt {
40
+ id: string;
41
+ digest: string;
42
+ kind: 'interpretation' | 'action_decision' | 'downstream_outcome';
43
+ }
44
+ export interface FeedbackReferences {
45
+ version: string;
46
+ configurationDigest: string;
47
+ examples: Array<{
48
+ feedbackId: string;
49
+ digest: string;
50
+ }>;
51
+ }
52
+ export interface FeedbackSelection {
53
+ version: string;
54
+ configurationDigest: string;
55
+ examples: FeedbackExample[];
56
+ }
57
+ export interface RoutingRule {
58
+ handlerId: string;
59
+ handlerVersion: string;
60
+ /** Routing only; never grants, executable instructions or automation settings. */
61
+ matchTerms: string[];
62
+ args: IntakeValues;
63
+ }
64
+ export interface RuleSuggestion {
65
+ id: string;
66
+ digest: string;
67
+ itemId: string;
68
+ rule: RoutingRule;
69
+ supportingFeedback: Array<{
70
+ id: string;
71
+ digest: string;
72
+ }>;
73
+ expectedPolicyVersion: string;
74
+ preview: string;
75
+ automaticActionEligible: false;
76
+ }
77
+ export interface SuggestRuleInput extends FeedbackBinding {
78
+ supportingFeedbackIds: string[];
79
+ requestId: string;
80
+ }
81
+ export interface ReadRuleInput extends FeedbackBinding {
82
+ suggestionId: string;
83
+ }
84
+ export interface AdoptRuleInput extends FeedbackBinding {
85
+ suggestionId: string;
86
+ expectedDigest: string;
87
+ expectedPolicyVersion: string;
88
+ requestId: string;
89
+ }
90
+ export interface RuleAdoption {
91
+ id: string;
92
+ policyVersion: string;
93
+ auditId: string;
94
+ automaticActionEligible: false;
95
+ }
96
+ export interface RetrieveFeedbackInput {
97
+ itemId: string;
98
+ query: string;
99
+ }
100
+ //# sourceMappingURL=feedback-dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback-dto.d.ts","sourceRoot":"","sources":["../src/feedback-dto.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { DatabaseInterface } from '@happyvertical/sql';
2
+ import type { HandlerContext } from './execution-contracts.js';
3
+ import type { IntakeValues, ProposalReview } from './execution-dto.js';
4
+ /** Owning execution boundary; not exported from any public entry point. */
5
+ export declare const feedbackActionTransaction: unique symbol;
6
+ export interface FeedbackActionContext {
7
+ db: DatabaseInterface;
8
+ context: HandlerContext;
9
+ review: ProposalReview;
10
+ itemId: string;
11
+ attemptId: string;
12
+ args: IntakeValues;
13
+ analysis: IntakeValues;
14
+ result: IntakeValues;
15
+ handlerId: string;
16
+ handlerVersion: string;
17
+ }
18
+ export declare const feedbackDiscoveryContext: unique symbol;
19
+ //# sourceMappingURL=feedback-internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback-internal.d.ts","sourceRoot":"","sources":["../src/feedback-internal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACvE,2EAA2E;AAC3E,eAAO,MAAM,yBAAyB,eAErC,CAAC;AACF,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,iBAAiB,CAAC;IACtB,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,YAAY,CAAC;IACnB,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,wBAAwB,eAEpC,CAAC"}
@@ -0,0 +1,53 @@
1
+ import type { DatabaseInterface } from '@happyvertical/sql';
2
+ import { IntakeExecutionService } from './execution.js';
3
+ import type { AdoptRuleInput, FeedbackReceipt, FeedbackReferences, FeedbackSelection, ObserveFeedbackInput, ReadRuleInput, RecordFeedbackInput, RuleAdoption, RuleSuggestion, SuggestRuleInput } from './feedback-dto.js';
4
+ import type { GenerationOutput } from './proposal-dto.js';
5
+ import type { IngestionOptions } from './server.js';
6
+ export declare function feedbackTerms(value: string): string[];
7
+ export declare function feedbackSimilarity(left: string, right: string): number;
8
+ export interface RetrieveFeedbackInput {
9
+ itemId: string;
10
+ query: string;
11
+ offered: GenerationOutput['offered'];
12
+ promptVersion: string;
13
+ configurationVersion: string;
14
+ model: {
15
+ provider: string;
16
+ model: string;
17
+ version: string;
18
+ };
19
+ providers?: string[];
20
+ }
21
+ /** Owning ingestion ledger. Generic LearningMemory's success/ancestor fallback semantics are deliberately not used. */
22
+ export declare class IntakeFeedbackService {
23
+ private readonly options;
24
+ private readonly execution;
25
+ private readonly config;
26
+ private readonly lineage;
27
+ private exampleChecks;
28
+ constructor(options: IngestionOptions, execution?: IntakeExecutionService);
29
+ private configurationDigest;
30
+ private scope;
31
+ private rows;
32
+ private authorize;
33
+ private checkBinding;
34
+ private insert;
35
+ private receipt;
36
+ private provenance;
37
+ /** Internal saved-action gate; the execution owner supplies its transaction. */
38
+ assertActionLineage(actionId: string, db: DatabaseInterface, proposalId: string): Promise<void>;
39
+ record(input: RecordFeedbackInput): Promise<FeedbackReceipt>;
40
+ /** Consume a durable owner event idempotently. Never derive correctness from these signals. */
41
+ observe(input: ObserveFeedbackInput): Promise<FeedbackReceipt>;
42
+ private example;
43
+ private receivingContext;
44
+ retrieve(input: RetrieveFeedbackInput, executor?: DatabaseInterface): Promise<FeedbackSelection>;
45
+ assertSelection(input: RetrieveFeedbackInput, selection: FeedbackReferences, executor?: DatabaseInterface): Promise<void>;
46
+ private support;
47
+ suggest(input: SuggestRuleInput): Promise<RuleSuggestion>;
48
+ private ruleDTO;
49
+ private rule;
50
+ readRule(input: ReadRuleInput): Promise<RuleSuggestion>;
51
+ adopt(input: AdoptRuleInput): Promise<RuleAdoption>;
52
+ }
53
+ //# sourceMappingURL=feedback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../src/feedback.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAEL,sBAAsB,EACvB,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EACV,cAAc,EAGd,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EAEnB,YAAY,EACZ,cAAc,EACd,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAM3B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AA2BpD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAIrD;AACD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAOtE;AACD,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AACD,uHAAuH;AACvH,qBAAa,qBAAqB;IAM9B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAL1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,aAAa,CAAK;gBAEP,OAAO,EAAE,gBAAgB,EAC1C,SAAS,CAAC,EAAE,sBAAsB;IAsBpC,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,KAAK;YAGC,IAAI;YAeJ,SAAS;IAcvB,OAAO,CAAC,YAAY;YAUN,MAAM;IAwCpB,OAAO,CAAC,OAAO;YAOD,UAAU;IA+ExB,gFAAgF;IAC1E,mBAAmB,CACvB,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,iBAAiB,EACrB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC;IAYV,MAAM,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC;IAyElE,+FAA+F;IACzF,OAAO,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;YAiEtD,OAAO;IAqFrB,OAAO,CAAC,gBAAgB;IA+ClB,QAAQ,CACZ,KAAK,EAAE,qBAAqB,EAC5B,QAAQ,CAAC,EAAE,iBAAiB,GAC3B,OAAO,CAAC,iBAAiB,CAAC;IA0DvB,eAAe,CACnB,KAAK,EAAE,qBAAqB,EAC5B,SAAS,EAAE,kBAAkB,EAC7B,QAAQ,CAAC,EAAE,iBAAiB,GAC3B,OAAO,CAAC,IAAI,CAAC;YA4DF,OAAO;IAyDf,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC;IA4D/D,OAAO,CAAC,OAAO;YAcD,IAAI;IA+BZ,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IA2BvD,KAAK,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;CAwF1D"}
@@ -2,13 +2,14 @@
2
2
  "version": "1.0.0",
3
3
  "timestamp": 0,
4
4
  "packageName": "@happyvertical/smrt-ingestion",
5
- "packageVersion": "0.55.5",
5
+ "packageVersion": "0.55.7",
6
6
  "objects": {
7
7
  "@happyvertical/smrt-ingestion:IntakeItem": {
8
8
  "name": "intakeitem",
9
9
  "className": "IntakeItem",
10
10
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakeItem",
11
11
  "collection": "intakeitems",
12
+ "description": "Durable IntakeItem record; mutations belong to the server service.",
12
13
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
13
14
  "packageName": "@happyvertical/smrt-ingestion",
14
15
  "fields": {
@@ -493,6 +494,7 @@
493
494
  "className": "IntakeEvidence",
494
495
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakeEvidence",
495
496
  "collection": "intakeevidences",
497
+ "description": "Durable IntakeEvidence record; mutations belong to the server service.",
496
498
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
497
499
  "packageName": "@happyvertical/smrt-ingestion",
498
500
  "fields": {
@@ -871,6 +873,7 @@
871
873
  "className": "IntakeAnalysis",
872
874
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakeAnalysis",
873
875
  "collection": "intakeanalysises",
876
+ "description": "Durable IntakeAnalysis record; mutations belong to the server service.",
874
877
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
875
878
  "packageName": "@happyvertical/smrt-ingestion",
876
879
  "fields": {
@@ -1211,6 +1214,7 @@
1211
1214
  "className": "IntakeAnalysisAttempt",
1212
1215
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakeAnalysisAttempt",
1213
1216
  "collection": "intakeanalysisattempts",
1217
+ "description": "Durable IntakeAnalysisAttempt record; mutations belong to the server service.",
1214
1218
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
1215
1219
  "packageName": "@happyvertical/smrt-ingestion",
1216
1220
  "fields": {
@@ -1597,6 +1601,7 @@
1597
1601
  "className": "IntakePlan",
1598
1602
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakePlan",
1599
1603
  "collection": "intakeplans",
1604
+ "description": "Durable IntakePlan record; mutations belong to the server service.",
1600
1605
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
1601
1606
  "packageName": "@happyvertical/smrt-ingestion",
1602
1607
  "fields": {
@@ -1865,6 +1870,7 @@
1865
1870
  "className": "IntakeAction",
1866
1871
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakeAction",
1867
1872
  "collection": "intakeactions",
1873
+ "description": "Durable IntakeAction record; mutations belong to the server service.",
1868
1874
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
1869
1875
  "packageName": "@happyvertical/smrt-ingestion",
1870
1876
  "fields": {
@@ -2213,6 +2219,7 @@
2213
2219
  "className": "IntakeProposal",
2214
2220
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakeProposal",
2215
2221
  "collection": "intakeproposals",
2222
+ "description": "Durable IntakeProposal record; mutations belong to the server service.",
2216
2223
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
2217
2224
  "packageName": "@happyvertical/smrt-ingestion",
2218
2225
  "fields": {
@@ -2555,6 +2562,7 @@
2555
2562
  "className": "IntakeReviewDecision",
2556
2563
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakeReviewDecision",
2557
2564
  "collection": "intakereviewdecisions",
2565
+ "description": "Durable IntakeReviewDecision record; mutations belong to the server service.",
2558
2566
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
2559
2567
  "packageName": "@happyvertical/smrt-ingestion",
2560
2568
  "fields": {
@@ -2883,6 +2891,7 @@
2883
2891
  "className": "IntakeExecution",
2884
2892
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakeExecution",
2885
2893
  "collection": "intakeexecutions",
2894
+ "description": "Durable IntakeExecution record; mutations belong to the server service.",
2886
2895
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
2887
2896
  "packageName": "@happyvertical/smrt-ingestion",
2888
2897
  "fields": {
@@ -3245,6 +3254,7 @@
3245
3254
  "className": "IntakeFeedback",
3246
3255
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakeFeedback",
3247
3256
  "collection": "intakefeedbacks",
3257
+ "description": "Durable IntakeFeedback record; mutations belong to the server service.",
3248
3258
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
3249
3259
  "packageName": "@happyvertical/smrt-ingestion",
3250
3260
  "fields": {
@@ -3520,6 +3530,7 @@
3520
3530
  "className": "IntakeDispatch",
3521
3531
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakeDispatch",
3522
3532
  "collection": "intakedispatches",
3533
+ "description": "Durable IntakeDispatch record; mutations belong to the server service.",
3523
3534
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
3524
3535
  "packageName": "@happyvertical/smrt-ingestion",
3525
3536
  "fields": {
@@ -3836,6 +3847,7 @@
3836
3847
  "className": "IntakeDeletion",
3837
3848
  "qualifiedName": "@happyvertical/smrt-ingestion:IntakeDeletion",
3838
3849
  "collection": "intakedeletions",
3850
+ "description": "Durable IntakeDeletion record; mutations belong to the server service.",
3839
3851
  "filePath": "/home/runner/work/smrt/smrt/packages/ingestion/src/models.ts",
3840
3852
  "packageName": "@happyvertical/smrt-ingestion",
3841
3853
  "fields": {