@dsh-enhanced/assistant-evolution 0.1.6 → 0.1.12
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/README.md +70 -17
- package/cordis.patch.yml +4 -1
- package/lib/guidance.d.ts +2 -0
- package/lib/guidance.d.ts.map +1 -1
- package/lib/guidance.js +7 -1
- package/lib/guidance.js.map +1 -1
- package/lib/index.d.ts +2 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -2
- package/lib/index.js.map +1 -1
- package/lib/review.d.ts +1 -1
- package/lib/review.d.ts.map +1 -1
- package/lib/review.js +22 -0
- package/lib/review.js.map +1 -1
- package/lib/service.d.ts +236 -12
- package/lib/service.d.ts.map +1 -1
- package/lib/service.js +947 -42
- package/lib/service.js.map +1 -1
- package/lib/sqlite.d.ts +1 -1
- package/lib/sqlite.d.ts.map +1 -1
- package/lib/sqlite.js +508 -7
- package/lib/sqlite.js.map +1 -1
- package/lib/store.d.ts +136 -3
- package/lib/store.d.ts.map +1 -1
- package/lib/store.js +1672 -108
- package/lib/store.js.map +1 -1
- package/lib/tools.d.ts.map +1 -1
- package/lib/tools.js +222 -1
- package/lib/tools.js.map +1 -1
- package/lib/types.d.ts +211 -11
- package/lib/types.d.ts.map +1 -1
- package/lib/types.js +2 -0
- package/lib/types.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.d.ts.map +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +14 -4
package/lib/store.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { EpisodeInput,
|
|
1
|
+
import type { EpisodeInput, EvolutionCreationInput, EvolutionMutation, EvolutionSettlementExpectation, GuidanceExposure, ProposalStatus, RuleCandidate, RuleInput, SituationStats, StoredEpisode, StoredEvolutionApplicationOutboxEntry, StoredEvolutionApplicationReceipt, StoredAutonomousRollback, StoredProposal, StoredRule, StoredSupervisedGrowthAnalystReview, StoredTaskLearningProjection, SupervisedGrowthAnalystContractVersion, TaskLearningProjectionInput, TaskLearningProjectionResult } from './types.js';
|
|
2
2
|
export type EvolutionStoreErrorCode = 'idempotency-conflict' | 'invalid-input' | 'invalid-state' | 'not-found' | 'version-conflict';
|
|
3
3
|
export declare class EvolutionStoreError extends Error {
|
|
4
4
|
readonly code: EvolutionStoreErrorCode;
|
|
@@ -11,7 +11,38 @@ export interface EvolutionStoreOptions {
|
|
|
11
11
|
maxGuidanceBytes?: number;
|
|
12
12
|
maxDetailBytes?: number;
|
|
13
13
|
}
|
|
14
|
+
/** Low-cardinality counters safe to expose through a local health seam. */
|
|
15
|
+
export interface EvolutionStoreHealth {
|
|
16
|
+
activeRules: number;
|
|
17
|
+
retiredRules: number;
|
|
18
|
+
pendingProposals: number;
|
|
19
|
+
conflictedProposals: number;
|
|
20
|
+
trustedEpisodes: number;
|
|
21
|
+
qualityEligibleEpisodes: number;
|
|
22
|
+
operationalEpisodes: number;
|
|
23
|
+
legacyQuarantinedEpisodes: number;
|
|
24
|
+
unattributedTrustedEpisodes: number;
|
|
25
|
+
unattributedQualityEligibleEpisodes: number;
|
|
26
|
+
lastTrustedEpisodeAt: number;
|
|
27
|
+
lastQualityEligibleEpisodeAt: number;
|
|
28
|
+
autonomousRollbacks: number;
|
|
29
|
+
taskLearningProjections: number;
|
|
30
|
+
retractedTaskLearningProjections: number;
|
|
31
|
+
taskLearningProjectionRevisions: number;
|
|
32
|
+
taskLearningProjectionIntegrityErrors: number;
|
|
33
|
+
}
|
|
14
34
|
declare function digest(value: unknown): string;
|
|
35
|
+
/**
|
|
36
|
+
* Stable analyst proposal identity. Deliberately do not add guidance, owner,
|
|
37
|
+
* execution, token, TTL, samples or timestamps: those are not the learned fact.
|
|
38
|
+
*/
|
|
39
|
+
export declare function supervisedGrowthAnalystProposalIdempotencyKey(input: {
|
|
40
|
+
scopeKey: string;
|
|
41
|
+
situation: string;
|
|
42
|
+
evidenceDigest: string;
|
|
43
|
+
evidenceTotal: number;
|
|
44
|
+
contractVersion: SupervisedGrowthAnalystContractVersion;
|
|
45
|
+
}): string;
|
|
15
46
|
/**
|
|
16
47
|
* Durable evidence and rule ledger.
|
|
17
48
|
*
|
|
@@ -25,12 +56,35 @@ export declare class EvolutionStore {
|
|
|
25
56
|
#private;
|
|
26
57
|
constructor(options: EvolutionStoreOptions);
|
|
27
58
|
close(): void;
|
|
59
|
+
/**
|
|
60
|
+
* Return aggregate operational state only. The query deliberately projects no
|
|
61
|
+
* situation, scope, guidance, detail, principal, path, or proposal body.
|
|
62
|
+
*/
|
|
63
|
+
health(): Readonly<EvolutionStoreHealth>;
|
|
28
64
|
/** Record one observed outcome. Idempotent on `idempotencyKey`. */
|
|
29
65
|
recordEpisode(input: EpisodeInput): StoredEpisode;
|
|
30
|
-
/**
|
|
66
|
+
/**
|
|
67
|
+
* Apply one authoritative Evaluation task revision. The current pointer,
|
|
68
|
+
* immutable revision audit, active learning vote and stale-proposal fence are
|
|
69
|
+
* committed under one SQLite writer lock.
|
|
70
|
+
*
|
|
71
|
+
* The first accepted revision may be greater than one because several old
|
|
72
|
+
* Evaluation outbox triggers all resolve to the latest canonical task. A
|
|
73
|
+
* lower revision is never acknowledged: it indicates an Evaluation rollback
|
|
74
|
+
* or a mismatched database restore and must remain visible to recovery.
|
|
75
|
+
*/
|
|
76
|
+
applyTaskLearningProjection(input: TaskLearningProjectionInput): TaskLearningProjectionResult;
|
|
77
|
+
getTaskLearningProjection(input: {
|
|
78
|
+
scopeKey: string;
|
|
79
|
+
subjectKind: 'automation-run' | 'outcome';
|
|
80
|
+
subjectRef: string;
|
|
81
|
+
}): StoredTaskLearningProjection | undefined;
|
|
82
|
+
/** Failure counts over the most recent explicitly quality-eligible episodes. */
|
|
31
83
|
stats(scopeKey: string, situation: string, window: number): SituationStats;
|
|
32
84
|
listRules(scopeKey: string, status?: 'active' | 'retired'): StoredRule[];
|
|
33
85
|
getRule(ruleId: string): StoredRule | undefined;
|
|
86
|
+
/** Principal whose exact approved adoption created this immutable rule. */
|
|
87
|
+
ruleApprovalPrincipal(ruleId: string): string | undefined;
|
|
34
88
|
activeRule(scopeKey: string, situation: string): StoredRule | undefined;
|
|
35
89
|
nextGeneration(scopeKey: string, situation: string): number;
|
|
36
90
|
/** Persist proof only after the corresponding guidance injection returned. */
|
|
@@ -42,6 +96,7 @@ export declare class EvolutionStore {
|
|
|
42
96
|
guidanceVersion: number;
|
|
43
97
|
}): GuidanceExposure;
|
|
44
98
|
hasGuidanceExposure(sessionId: string, scopeKey: string, ruleId: string, guidanceVersion: number): boolean;
|
|
99
|
+
countGuidanceExposures(sessionId: string, scopeKey: string): number;
|
|
45
100
|
/** Return only an unambiguous exact-situation receipt for one session. */
|
|
46
101
|
captureGuidanceExposure(sessionId: string, scopeKey: string, situation: string): GuidanceExposure | undefined;
|
|
47
102
|
/**
|
|
@@ -77,17 +132,95 @@ export declare class EvolutionStore {
|
|
|
77
132
|
retireFailureRate: number;
|
|
78
133
|
evidenceSampleLimit?: number;
|
|
79
134
|
}): RuleCandidate | undefined;
|
|
135
|
+
/**
|
|
136
|
+
* Freeze the one adoption candidate shown to an exact production analyst
|
|
137
|
+
* execution. Repeating review in the same occurrence returns the same opaque
|
|
138
|
+
* token; if its evidence changed, the old execution is fenced instead.
|
|
139
|
+
*/
|
|
140
|
+
registerSupervisedGrowthAnalystReview(input: {
|
|
141
|
+
scopeKey: string;
|
|
142
|
+
occurrenceId: string;
|
|
143
|
+
candidate: RuleCandidate;
|
|
144
|
+
evidenceWindow: number;
|
|
145
|
+
}): Readonly<{
|
|
146
|
+
review: StoredSupervisedGrowthAnalystReview;
|
|
147
|
+
proposalExists: boolean;
|
|
148
|
+
}>;
|
|
149
|
+
getSupervisedGrowthAnalystReview(reviewToken: string): StoredSupervisedGrowthAnalystReview | undefined;
|
|
150
|
+
/**
|
|
151
|
+
* Create or join the proposal for one evidence identity under the SQLite
|
|
152
|
+
* writer lock. The existing proposal is deliberately returned without
|
|
153
|
+
* comparing guidance: the first committed wording is the durable winner.
|
|
154
|
+
*/
|
|
155
|
+
createSupervisedGrowthAnalystProposal(input: {
|
|
156
|
+
reviewToken: string;
|
|
157
|
+
scopeKey: string;
|
|
158
|
+
occurrenceId: string;
|
|
159
|
+
requester: string;
|
|
160
|
+
principal: string;
|
|
161
|
+
mutation: Extract<EvolutionMutation, {
|
|
162
|
+
op: 'adopt';
|
|
163
|
+
}>;
|
|
164
|
+
expiresAt: number;
|
|
165
|
+
creationIntent: EvolutionCreationInput;
|
|
166
|
+
}): Readonly<{
|
|
167
|
+
proposal: StoredProposal;
|
|
168
|
+
replayed: boolean;
|
|
169
|
+
}>;
|
|
170
|
+
/**
|
|
171
|
+
* Retire one exact active guidance generation through the narrow autonomous
|
|
172
|
+
* rollback lane.
|
|
173
|
+
*
|
|
174
|
+
* Eligibility is recomputed after `BEGIN IMMEDIATE`, then the rule update,
|
|
175
|
+
* immutable evidence receipt and audit row commit together. The caller owns
|
|
176
|
+
* only the exact target and expected version; risk, reason and evidence are
|
|
177
|
+
* Host-derived. A replay of that exact tuple returns the durable winner.
|
|
178
|
+
*/
|
|
179
|
+
rollbackRule(options: {
|
|
180
|
+
scopeKey: string;
|
|
181
|
+
ruleId: string;
|
|
182
|
+
expectedVersion: number;
|
|
183
|
+
window: number;
|
|
184
|
+
minSample: number;
|
|
185
|
+
retireFailureRate: number;
|
|
186
|
+
evidenceSampleLimit?: number;
|
|
187
|
+
}): {
|
|
188
|
+
rollback: StoredAutonomousRollback;
|
|
189
|
+
rule: StoredRule;
|
|
190
|
+
replayed: boolean;
|
|
191
|
+
};
|
|
80
192
|
createProposal(input: {
|
|
81
193
|
idempotencyKey: string;
|
|
82
194
|
requester: string;
|
|
83
195
|
principal: string;
|
|
84
196
|
mutation: EvolutionMutation;
|
|
85
197
|
expiresAt: number;
|
|
86
|
-
creationIntent?:
|
|
198
|
+
creationIntent?: EvolutionCreationInput;
|
|
87
199
|
}): StoredProposal;
|
|
88
200
|
attachPolicy(proposalId: string, policyProposalId: string, expectation?: EvolutionSettlementExpectation): StoredProposal;
|
|
89
201
|
getProposal(proposalId: string): StoredProposal | undefined;
|
|
202
|
+
getProposalByIdempotencyKey(idempotencyKey: string): StoredProposal | undefined;
|
|
90
203
|
listPendingProposals(limit: number): StoredProposal[];
|
|
204
|
+
/**
|
|
205
|
+
* Recover cross-database creation intents that may already own a Policy card
|
|
206
|
+
* even when local evidence invalidation made the proposal terminal first.
|
|
207
|
+
*/
|
|
208
|
+
listUnattachedProposalIntents(limit: number): StoredProposal[];
|
|
209
|
+
/**
|
|
210
|
+
* Policy has authoritatively confirmed that an expired unattached intent did
|
|
211
|
+
* not create a proposal. Drop only that now-useless recovery payload so the
|
|
212
|
+
* terminal local conflict is not rediscovered forever.
|
|
213
|
+
*/
|
|
214
|
+
completeAbandonedProposalRecovery(proposalId: string): StoredProposal;
|
|
215
|
+
getEvolutionApplicationReceipt(localProposalId: string): StoredEvolutionApplicationReceipt | undefined;
|
|
216
|
+
/** Independent terminal-presentation outbox; it never scans pending proposals. */
|
|
217
|
+
listPendingEvolutionApplicationReceipts(limit: number): StoredEvolutionApplicationOutboxEntry[];
|
|
218
|
+
settleEvolutionApplicationPublication(input: {
|
|
219
|
+
localProposalId: string;
|
|
220
|
+
receiptDigest: string;
|
|
221
|
+
outcome: 'published' | 'retry';
|
|
222
|
+
error?: string;
|
|
223
|
+
}): StoredEvolutionApplicationOutboxEntry;
|
|
91
224
|
/** Move an inspected-but-still-pending row behind its peers, durably. */
|
|
92
225
|
deferPendingProposal(proposalId: string): void;
|
|
93
226
|
/**
|
package/lib/store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
|