@dsh-enhanced/assistant-growth-driver 0.1.65 → 0.1.67
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 +95 -16
- package/lib/config.d.ts +17 -2
- package/lib/config.d.ts.map +1 -1
- package/lib/config.js +25 -8
- package/lib/config.js.map +1 -1
- package/lib/growth-agent.d.ts +96 -9
- package/lib/growth-agent.d.ts.map +1 -1
- package/lib/growth-agent.js +492 -46
- package/lib/growth-agent.js.map +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +73 -29
- package/lib/index.js.map +1 -1
- package/lib/scanner-owner-runtime.d.ts +34 -0
- package/lib/scanner-owner-runtime.d.ts.map +1 -0
- package/lib/scanner-owner-runtime.js +99 -0
- package/lib/scanner-owner-runtime.js.map +1 -0
- package/lib/source-port.d.ts +24 -2
- package/lib/source-port.d.ts.map +1 -1
- package/lib/source-port.js +0 -1
- package/lib/source-port.js.map +1 -1
- package/lib/usage-runtime.d.ts +35 -4
- package/lib/usage-runtime.d.ts.map +1 -1
- package/lib/usage-runtime.js +391 -15
- package/lib/usage-runtime.js.map +1 -1
- package/lib/usage-store.d.ts +51 -4
- package/lib/usage-store.d.ts.map +1 -1
- package/lib/usage-store.js +172 -6
- package/lib/usage-store.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/work-item-source.d.ts +51 -0
- package/lib/work-item-source.d.ts.map +1 -0
- package/lib/work-item-source.js +105 -0
- package/lib/work-item-source.js.map +1 -0
- package/package.json +22 -20
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { type WorkItemGrowthAuthorityPins, type WorkItemSourceGrowthRunBinding } from '@dsh-enhanced/assistant-growth-contract';
|
|
2
|
+
import type { OwnerForegroundLearningTask, OwnerWorkItemEngineeringContextSource } from '@dsh-enhanced/assistant-delivery';
|
|
3
|
+
export type UsageStableOwner = Pick<OwnerForegroundLearningTask['owner'], 'authorityId' | 'authorityHash' | 'principalId' | 'principalRecordId' | 'principalVersion' | 'workspace' | 'agentPreset'>;
|
|
4
|
+
export declare const workItemStableOwner: (owner: UsageStableOwner) => UsageStableOwner;
|
|
5
|
+
export interface WorkItemUsageLocator {
|
|
6
|
+
protocol: 'assistant-growth/work-item-usage-locator/v1';
|
|
7
|
+
configDigest: string;
|
|
8
|
+
owner: UsageStableOwner;
|
|
9
|
+
itemId: string;
|
|
10
|
+
canonical: {
|
|
11
|
+
outcomeId: string;
|
|
12
|
+
version: number;
|
|
13
|
+
digest: string;
|
|
14
|
+
objectiveStatus: 'not-achieved';
|
|
15
|
+
};
|
|
16
|
+
createdAt: number;
|
|
17
|
+
expiresAt: number;
|
|
18
|
+
}
|
|
19
|
+
export declare function validateWorkItemUsageLocator(value: unknown): asserts value is WorkItemUsageLocator;
|
|
20
|
+
export interface WorkItemUsageSource extends OwnerWorkItemEngineeringContextSource {
|
|
21
|
+
protocol: 'assistant-delivery/work-item-engineering-context/v1';
|
|
22
|
+
parentReports: readonly Readonly<{
|
|
23
|
+
itemId: string;
|
|
24
|
+
revision: number;
|
|
25
|
+
text: string;
|
|
26
|
+
fullTextDigest: string;
|
|
27
|
+
fullBytes: number;
|
|
28
|
+
}>[];
|
|
29
|
+
}
|
|
30
|
+
export interface WorkItemCreationReadiness {
|
|
31
|
+
protocol: 'assistant-growth/work-item-creation-readiness/v1';
|
|
32
|
+
sourceProtocol: 'assistant-delivery/work-item-engineering-context/v1';
|
|
33
|
+
runProtocol: 'assistant-growth/source-run/v2';
|
|
34
|
+
workItemFailures: true;
|
|
35
|
+
pins: WorkItemGrowthAuthorityPins;
|
|
36
|
+
remaining: {
|
|
37
|
+
sourceSubmissions: number;
|
|
38
|
+
creates: number;
|
|
39
|
+
verifications: number;
|
|
40
|
+
adoptions: number;
|
|
41
|
+
};
|
|
42
|
+
available: boolean;
|
|
43
|
+
}
|
|
44
|
+
export declare const workItemTextDigest: (text: string) => string;
|
|
45
|
+
export declare function workItemAuthorityDeadline(pins: WorkItemGrowthAuthorityPins): number;
|
|
46
|
+
export declare function isWorkItemCreationReady(value: unknown, pins: WorkItemGrowthAuthorityPins, now?: number, admission?: boolean): value is WorkItemCreationReadiness;
|
|
47
|
+
/** New source data may contain exact NUL/non-NFC text, but never accessors, proxies or executable values. */
|
|
48
|
+
export declare function ownData<T>(input: T): T;
|
|
49
|
+
export declare function freezeWorkItemData<T>(input: T): T;
|
|
50
|
+
export declare function workItemRunSource(source: WorkItemUsageSource): WorkItemSourceGrowthRunBinding['source'];
|
|
51
|
+
//# sourceMappingURL=work-item-source.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"work-item-source.d.ts","sourceRoot":"","sources":["../src/work-item-source.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuC,KAAK,2BAA2B,EAAE,KAAK,8BAA8B,EAAE,MAAM,yCAAyC,CAAA;AACpK,OAAO,KAAK,EAAE,2BAA2B,EAAE,qCAAqC,EAAE,MAAM,kCAAkC,CAAA;AAE1H,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,eAAe,GAAG,aAAa,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,WAAW,GAAG,aAAa,CAAC,CAAA;AACnM,eAAO,MAAM,mBAAmB,GAAI,OAAO,gBAAgB,KAAG,gBAA8Q,CAAA;AAC5U,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,6CAA6C,CAAA;IACvD,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,gBAAgB,CAAA;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,cAAc,CAAA;KAAE,CAAA;IAClG,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AACD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,oBAAoB,CAgBlG;AACD,MAAM,WAAW,mBAAoB,SAAQ,qCAAqC;IAChF,QAAQ,EAAE,qDAAqD,CAAA;IAC/D,aAAa,EAAE,SAAS,QAAQ,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,CAAA;CAClI;AACD,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,kDAAkD,CAAA;IAC5D,cAAc,EAAE,qDAAqD,CAAA;IACrE,WAAW,EAAE,gCAAgC,CAAA;IAC7C,gBAAgB,EAAE,IAAI,CAAA;IACtB,IAAI,EAAE,2BAA2B,CAAA;IACjC,SAAS,EAAE;QAAE,iBAAiB,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAA;IACnG,SAAS,EAAE,OAAO,CAAA;CACnB;AACD,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,KAAG,MAAiE,CAAA;AACnH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,2BAA2B,GAAG,MAAM,CAEnF;AACD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,2BAA2B,EAAE,GAAG,SAAa,EAAE,SAAS,UAAO,GAAG,KAAK,IAAI,yBAAyB,CAYjK;AACD,6GAA6G;AAC7G,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAoBtC;AACD,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAMjD;AACD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,mBAAmB,GAAG,8BAA8B,CAAC,QAAQ,CAAC,CAavG"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { createHash } from 'node:crypto';
|
|
2
|
+
import { types as utilTypes } from 'node:util';
|
|
3
|
+
import { isAbsolute, resolve } from 'node:path';
|
|
4
|
+
import { acceptanceDigest } from '@dsh-enhanced/task-acceptance-contract';
|
|
5
|
+
import { validateWorkItemGrowthAuthorityPins } from '@dsh-enhanced/assistant-growth-contract';
|
|
6
|
+
export const workItemStableOwner = (owner) => ({ authorityId: owner.authorityId, authorityHash: owner.authorityHash, principalId: owner.principalId, principalRecordId: owner.principalRecordId, principalVersion: owner.principalVersion, workspace: owner.workspace, agentPreset: owner.agentPreset });
|
|
7
|
+
export function validateWorkItemUsageLocator(value) {
|
|
8
|
+
const locator = ownData(value);
|
|
9
|
+
if (Object.keys(locator).sort().join(',') !== 'canonical,configDigest,createdAt,expiresAt,itemId,owner,protocol'
|
|
10
|
+
|| locator.protocol !== 'assistant-growth/work-item-usage-locator/v1' || !/^[a-f0-9]{64}$/u.test(locator.configDigest)
|
|
11
|
+
|| typeof locator.itemId !== 'string' || !locator.itemId || locator.itemId.length > 500
|
|
12
|
+
|| Object.keys(locator.canonical).sort().join(',') !== 'digest,objectiveStatus,outcomeId,version'
|
|
13
|
+
|| locator.canonical.objectiveStatus !== 'not-achieved' || typeof locator.canonical.outcomeId !== 'string'
|
|
14
|
+
|| !locator.canonical.outcomeId || locator.canonical.outcomeId.length > 500 || !/^[a-f0-9]{64}$/u.test(locator.canonical.digest)
|
|
15
|
+
|| !Number.isSafeInteger(locator.canonical.version) || locator.canonical.version < 1
|
|
16
|
+
|| !Number.isSafeInteger(locator.createdAt) || locator.createdAt < 0 || !Number.isSafeInteger(locator.expiresAt)
|
|
17
|
+
|| locator.expiresAt <= locator.createdAt || locator.expiresAt > 8_640_000_000_000_000)
|
|
18
|
+
throw new Error('invalid work item usage locator');
|
|
19
|
+
const owner = locator.owner;
|
|
20
|
+
if (Object.keys(owner).sort().join(',') !== 'agentPreset,authorityHash,authorityId,principalId,principalRecordId,principalVersion,workspace'
|
|
21
|
+
|| !/^[a-f0-9]{64}$/u.test(owner.authorityHash) || !Number.isSafeInteger(owner.principalVersion) || owner.principalVersion < 1
|
|
22
|
+
|| [owner.authorityId, owner.principalId, owner.principalRecordId, owner.agentPreset].some(value => typeof value !== 'string' || !value || value.length > 500 || /\p{Cc}/u.test(value))
|
|
23
|
+
|| typeof owner.workspace !== 'string' || !isAbsolute(owner.workspace) || resolve(owner.workspace) !== owner.workspace || owner.workspace === '/')
|
|
24
|
+
throw new Error('invalid work item usage owner');
|
|
25
|
+
}
|
|
26
|
+
export const workItemTextDigest = (text) => createHash('sha256').update(text, 'utf8').digest('hex');
|
|
27
|
+
export function workItemAuthorityDeadline(pins) {
|
|
28
|
+
return Math.min(pins.sourceJobs.expiresAt, pins.creationGrant.expiresAt, pins.creationAcceptance.expiresAt, pins.adoption.expiresAt);
|
|
29
|
+
}
|
|
30
|
+
export function isWorkItemCreationReady(value, pins, now = Date.now(), admission = true) {
|
|
31
|
+
try {
|
|
32
|
+
const result = ownData(value);
|
|
33
|
+
if (Object.keys(result).sort().join(',') !== 'available,pins,protocol,remaining,runProtocol,sourceProtocol,workItemFailures'
|
|
34
|
+
|| result.protocol !== 'assistant-growth/work-item-creation-readiness/v1'
|
|
35
|
+
|| result.sourceProtocol !== 'assistant-delivery/work-item-engineering-context/v1'
|
|
36
|
+
|| result.runProtocol !== 'assistant-growth/source-run/v2' || result.workItemFailures !== true || typeof result.available !== 'boolean' || admission && result.available !== true)
|
|
37
|
+
return false;
|
|
38
|
+
validateWorkItemGrowthAuthorityPins(result.pins);
|
|
39
|
+
return acceptanceDigest(result.pins) === acceptanceDigest(pins) && workItemAuthorityDeadline(pins) > now
|
|
40
|
+
&& Object.keys(result.remaining).sort().join(',') === 'adoptions,creates,sourceSubmissions,verifications'
|
|
41
|
+
&& Object.values(result.remaining).every(count => Number.isSafeInteger(count) && count >= (admission ? 1 : 0));
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/** New source data may contain exact NUL/non-NFC text, but never accessors, proxies or executable values. */
|
|
48
|
+
export function ownData(input) {
|
|
49
|
+
const seen = new Set();
|
|
50
|
+
let nodes = 0;
|
|
51
|
+
const visit = (value, depth) => {
|
|
52
|
+
if (++nodes > 65_536 || depth > 64)
|
|
53
|
+
throw new Error('work item growth data exceeds bounds');
|
|
54
|
+
if (value === null || typeof value === 'boolean' || typeof value === 'number' && Number.isSafeInteger(value))
|
|
55
|
+
return;
|
|
56
|
+
if (typeof value === 'string' && value.isWellFormed() && Buffer.byteLength(value) <= 524_288)
|
|
57
|
+
return;
|
|
58
|
+
if (typeof value !== 'object' || utilTypes.isProxy(value) || seen.has(value)
|
|
59
|
+
|| ![Object.prototype, null, Array.prototype].includes(Object.getPrototypeOf(value)))
|
|
60
|
+
throw new Error('invalid work item growth data');
|
|
61
|
+
seen.add(value);
|
|
62
|
+
const descriptors = Object.getOwnPropertyDescriptors(value);
|
|
63
|
+
if (Array.isArray(value))
|
|
64
|
+
delete descriptors.length;
|
|
65
|
+
if (Reflect.ownKeys(descriptors).some(key => typeof key !== 'string')
|
|
66
|
+
|| Object.values(descriptors).some(field => !field.enumerable || !('value' in field)))
|
|
67
|
+
throw new Error('invalid work item growth own data');
|
|
68
|
+
for (const field of Object.values(descriptors))
|
|
69
|
+
visit(field.value, depth + 1);
|
|
70
|
+
seen.delete(value);
|
|
71
|
+
};
|
|
72
|
+
visit(input, 0);
|
|
73
|
+
const json = JSON.stringify(input);
|
|
74
|
+
if (Buffer.byteLength(json) > 1_048_576)
|
|
75
|
+
throw new Error('work item growth snapshot too large');
|
|
76
|
+
return JSON.parse(json);
|
|
77
|
+
}
|
|
78
|
+
export function freezeWorkItemData(input) {
|
|
79
|
+
const value = ownData(input);
|
|
80
|
+
const freeze = (item) => {
|
|
81
|
+
if (item && typeof item === 'object') {
|
|
82
|
+
for (const field of Object.values(item))
|
|
83
|
+
freeze(field);
|
|
84
|
+
Object.freeze(item);
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
freeze(value);
|
|
88
|
+
return value;
|
|
89
|
+
}
|
|
90
|
+
export function workItemRunSource(source) {
|
|
91
|
+
const task = source.task, projection = task.canonical.projection;
|
|
92
|
+
if (projection.subjectKind !== 'work-item' || projection.disposition !== 'upsert'
|
|
93
|
+
|| task.canonical.objective?.status !== 'not-achieved' || source.manifest.itemId !== task.proofIdentity.itemId
|
|
94
|
+
|| Buffer.byteLength(source.objective) !== source.manifest.objective.fullBytes || Buffer.byteLength(source.objective) > 16_384
|
|
95
|
+
|| workItemTextDigest(source.objective) !== source.manifest.objective.fullTextDigest)
|
|
96
|
+
throw new Error('work item engineering source changed');
|
|
97
|
+
return { protocol: 'assistant-growth/work-item-source/v1', itemId: task.proofIdentity.itemId,
|
|
98
|
+
outcomeId: task.canonical.objective.outcomeId, projection: { subjectKind: 'work-item', subjectRef: projection.subjectRef,
|
|
99
|
+
version: projection.version, digest: projection.digest, disposition: 'upsert',
|
|
100
|
+
...(projection.evidenceOutcomeId === undefined ? {} : { evidenceOutcomeId: projection.evidenceOutcomeId }) },
|
|
101
|
+
objectiveStatus: 'not-achieved', sourceDigest: task.sourceDigest, presentationDigest: task.presentationDigest,
|
|
102
|
+
context: { protocol: source.manifest.protocol, manifestDigest: source.manifest.manifestDigest,
|
|
103
|
+
objectiveDigest: source.manifest.objective.fullTextDigest, objectiveBytes: source.manifest.objective.fullBytes } };
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=work-item-source.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"work-item-source.js","sourceRoot":"","sources":["../src/work-item-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AACzE,OAAO,EAAE,mCAAmC,EAAyE,MAAM,yCAAyC,CAAA;AAIpK,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,KAAuB,EAAoB,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAA;AAU5U,MAAM,UAAU,4BAA4B,CAAC,KAAc;IACzD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAyB,CAAA;IACtD,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,kEAAkE;WAC3G,OAAO,CAAC,QAAQ,KAAK,6CAA6C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;WACnH,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG;WACpF,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,0CAA0C;WAC9F,OAAO,CAAC,SAAS,CAAC,eAAe,KAAK,cAAc,IAAI,OAAO,OAAO,CAAC,SAAS,CAAC,SAAS,KAAK,QAAQ;WACvG,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;WAC7H,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,OAAO,GAAG,CAAC;WACjF,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC;WAC7G,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,GAAG,qBAAqB;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;IAC5I,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;IAC3B,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,gGAAgG;WACvI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,gBAAgB,GAAG,CAAC;WAC3H,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;WACpL,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;AACvM,CAAC;AAcD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AACnH,MAAM,UAAU,yBAAyB,CAAC,IAAiC;IACzE,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;AACtI,CAAC;AACD,MAAM,UAAU,uBAAuB,CAAC,KAAc,EAAE,IAAiC,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,SAAS,GAAG,IAAI;IAC3H,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAA8B,CAAA;QAC1D,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,+EAA+E;eACvH,MAAM,CAAC,QAAQ,KAAK,kDAAkD;eACtE,MAAM,CAAC,cAAc,KAAK,qDAAqD;eAC/E,MAAM,CAAC,WAAW,KAAK,gCAAgC,IAAI,MAAM,CAAC,gBAAgB,KAAK,IAAI,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI;YAAE,OAAO,KAAK,CAAA;QACjM,mCAAmC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAChD,OAAO,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,gBAAgB,CAAC,IAAI,CAAC,IAAI,yBAAyB,CAAC,IAAI,CAAC,GAAG,GAAG;eACnG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,mDAAmD;eACtG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAClH,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,KAAK,CAAA;IAAC,CAAC;AAC1B,CAAC;AACD,6GAA6G;AAC7G,MAAM,UAAU,OAAO,CAAI,KAAQ;IACjC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAAC,IAAI,KAAK,GAAG,CAAC,CAAA;IAC7C,MAAM,KAAK,GAAG,CAAC,KAAc,EAAE,KAAa,EAAQ,EAAE;QACpD,IAAI,EAAE,KAAK,GAAG,MAAM,IAAI,KAAK,GAAG,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;QAC3F,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC;YAAE,OAAM;QACpH,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,YAAY,EAAE,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,OAAO;YAAE,OAAM;QACpG,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;eACvE,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;QACxI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACf,MAAM,WAAW,GAAG,MAAM,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAA;QAC3D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,WAAW,CAAC,MAAM,CAAA;QACnD,IAAI,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC;eAChE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;QAC7I,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;YAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;QAC7E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACpB,CAAC,CAAA;IACD,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IACf,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IAClC,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IAC/F,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAA;AAC9B,CAAC;AACD,MAAM,UAAU,kBAAkB,CAAI,KAAQ;IAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;IAC5B,MAAM,MAAM,GAAG,CAAC,IAAa,EAAQ,EAAE;QACrC,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAAC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;gBAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAAC,CAAC;IACvH,CAAC,CAAA;IACD,MAAM,CAAC,KAAK,CAAC,CAAC;IAAC,OAAO,KAAK,CAAA;AAC7B,CAAC;AACD,MAAM,UAAU,iBAAiB,CAAC,MAA2B;IAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAA;IAChE,IAAI,UAAU,CAAC,WAAW,KAAK,WAAW,IAAI,UAAU,CAAC,WAAW,KAAK,QAAQ;WAC5E,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,KAAK,cAAc,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,aAAa,CAAC,MAAM;WAC3G,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM;WAC3H,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAc;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;IAC/I,OAAO,EAAE,QAAQ,EAAE,sCAAsC,EAAE,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM;QAC1F,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU;YACtH,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ;YAC7E,GAAG,CAAC,UAAU,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAC,EAAE;QAC9G,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;QAC7G,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,cAAc;YAC3F,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,CAAA;AACxH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dsh-enhanced/assistant-growth-driver",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.67",
|
|
4
4
|
"description": "Bounded growth agent with durable reviews driven by owner-verified task feedback and frozen source models.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -44,24 +44,23 @@
|
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
46
|
"@deepseek-ai/schemastery": "3.18.5",
|
|
47
|
-
"@dsh-enhanced/assistant-growth-contract": "0.1.
|
|
48
|
-
"@dsh-enhanced/task-acceptance-contract": "0.1.
|
|
47
|
+
"@dsh-enhanced/assistant-growth-contract": "0.1.67",
|
|
48
|
+
"@dsh-enhanced/task-acceptance-contract": "0.1.67"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
51
|
"@deepseek-ai/cordis": "^4.0.1",
|
|
52
|
-
"@deepseek-ai/dsh-agent": "0.2.1-rc.2",
|
|
53
|
-
"@deepseek-ai/dsh-agent-preset-registry": "0.2.1-rc.2",
|
|
54
|
-
"@deepseek-ai/dsh-credentials": "0.2.1-rc.2",
|
|
55
|
-
"@deepseek-ai/dsh-llm": "0.2.1-rc.2",
|
|
56
|
-
"@deepseek-ai/dsh-session": "0.2.1-rc.2",
|
|
57
|
-
"@deepseek-ai/dsh-tools": "0.2.1-rc.2",
|
|
52
|
+
"@deepseek-ai/dsh-agent": ">=0.2.1-rc.2 <0.3.0",
|
|
53
|
+
"@deepseek-ai/dsh-agent-preset-registry": ">=0.2.1-rc.2 <0.3.0",
|
|
54
|
+
"@deepseek-ai/dsh-credentials": ">=0.2.1-rc.2 <0.3.0",
|
|
55
|
+
"@deepseek-ai/dsh-llm": ">=0.2.1-rc.2 <0.3.0",
|
|
56
|
+
"@deepseek-ai/dsh-session": ">=0.2.1-rc.2 <0.3.0",
|
|
57
|
+
"@deepseek-ai/dsh-tools": ">=0.2.1-rc.2 <0.3.0",
|
|
58
58
|
"@dsh-enhanced/assistant-automations": ">=0.1.33 <0.2.0",
|
|
59
59
|
"@dsh-enhanced/assistant-delivery": ">=0.1.33 <0.2.0",
|
|
60
60
|
"@dsh-enhanced/assistant-evaluation": ">=0.1.33 <0.2.0",
|
|
61
61
|
"@dsh-enhanced/assistant-goals": ">=0.1.25 <0.2.0",
|
|
62
62
|
"@dsh-enhanced/assistant-policy": ">=0.1.0 <0.2.0",
|
|
63
63
|
"@dsh-enhanced/assistant-skills": ">=0.1.33 <0.2.0",
|
|
64
|
-
"@dsh-enhanced/assistant-super-relay-budget": ">=0.1.0 <0.2.0",
|
|
65
64
|
"@dsh-enhanced/plugin-control-plane": ">=0.1.33 <0.2.0"
|
|
66
65
|
},
|
|
67
66
|
"peerDependenciesMeta": {
|
|
@@ -98,9 +97,6 @@
|
|
|
98
97
|
"@dsh-enhanced/assistant-skills": {
|
|
99
98
|
"optional": true
|
|
100
99
|
},
|
|
101
|
-
"@dsh-enhanced/assistant-super-relay-budget": {
|
|
102
|
-
"optional": true
|
|
103
|
-
},
|
|
104
100
|
"@dsh-enhanced/plugin-control-plane": {
|
|
105
101
|
"optional": true
|
|
106
102
|
},
|
|
@@ -113,6 +109,7 @@
|
|
|
113
109
|
},
|
|
114
110
|
"devDependencies": {
|
|
115
111
|
"@deepseek-ai/cordis": "4.0.5",
|
|
112
|
+
"@deepseek-ai/cordis-plugin-loader": "1.0.6",
|
|
116
113
|
"@deepseek-ai/dsh-agent": "0.2.1-rc.2",
|
|
117
114
|
"@deepseek-ai/dsh-agent-default-model": "0.2.1-rc.2",
|
|
118
115
|
"@deepseek-ai/dsh-agent-loop": "0.2.1-rc.2",
|
|
@@ -121,19 +118,24 @@
|
|
|
121
118
|
"@deepseek-ai/dsh-credentials": "0.2.1-rc.2",
|
|
122
119
|
"@deepseek-ai/dsh-llm": "0.2.1-rc.2",
|
|
123
120
|
"@deepseek-ai/dsh-session": "0.2.1-rc.2",
|
|
121
|
+
"@deepseek-ai/dsh-session-persistence-jsonl": "0.2.1-rc.2",
|
|
124
122
|
"@deepseek-ai/dsh-session-projection": "0.2.1-rc.2",
|
|
125
123
|
"@deepseek-ai/dsh-system-prompt": "0.2.1-rc.2",
|
|
126
124
|
"@deepseek-ai/dsh-tools": "0.2.1-rc.2",
|
|
127
125
|
"@types/node": "22.20.0",
|
|
128
126
|
"typescript": "6.0.3",
|
|
129
127
|
"vitest": "4.1.8",
|
|
130
|
-
"@dsh-enhanced/assistant-automations": "0.1.
|
|
131
|
-
"@dsh-enhanced/assistant-delivery": "0.1.
|
|
132
|
-
"@dsh-enhanced/assistant-evaluation": "0.1.
|
|
133
|
-
"@dsh-enhanced/assistant-goals": "0.1.
|
|
134
|
-
"@dsh-enhanced/assistant-
|
|
135
|
-
"@dsh-enhanced/assistant-
|
|
136
|
-
"@dsh-enhanced/assistant-
|
|
128
|
+
"@dsh-enhanced/assistant-automations": "0.1.67",
|
|
129
|
+
"@dsh-enhanced/assistant-delivery": "0.1.67",
|
|
130
|
+
"@dsh-enhanced/assistant-evaluation": "0.1.67",
|
|
131
|
+
"@dsh-enhanced/assistant-goals": "0.1.67",
|
|
132
|
+
"@dsh-enhanced/assistant-isolation": "0.1.67",
|
|
133
|
+
"@dsh-enhanced/assistant-policy": "0.1.67",
|
|
134
|
+
"@dsh-enhanced/assistant-skills": "0.1.67",
|
|
135
|
+
"@dsh-enhanced/assistant-verifier": "0.1.67",
|
|
136
|
+
"@dsh-enhanced/assistant-work-items": "0.1.67",
|
|
137
|
+
"@dsh-enhanced/lark-channel": "0.1.67",
|
|
138
|
+
"@dsh-enhanced/plugin-control-plane": "0.1.67"
|
|
137
139
|
},
|
|
138
140
|
"scripts": {
|
|
139
141
|
"build": "tsc -p tsconfig.build.json",
|