@dsh-enhanced/assistant-proactive 0.1.65 → 0.1.66
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 +4 -2
- package/lib/attention-tuning.d.ts +31 -0
- package/lib/attention-tuning.d.ts.map +1 -0
- package/lib/attention-tuning.js +45 -0
- package/lib/attention-tuning.js.map +1 -0
- package/lib/engine.d.ts +13 -1
- package/lib/engine.d.ts.map +1 -1
- package/lib/engine.js +81 -11
- package/lib/engine.js.map +1 -1
- package/lib/index.d.ts +8 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +29 -5
- package/lib/index.js.map +1 -1
- package/lib/reminder.d.ts +13 -2
- package/lib/reminder.d.ts.map +1 -1
- package/lib/reminder.js +23 -4
- package/lib/reminder.js.map +1 -1
- package/lib/types.d.ts +13 -1
- package/lib/types.d.ts.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +8 -8
package/README.md
CHANGED
|
@@ -65,7 +65,7 @@ profiles:
|
|
|
65
65
|
启用 Goals 事件等待后,主人目标上下文会列出当前可用策略的 ID、模式和每目标上限,供选择 `opportunity_profile`;不展示准备模型、供应商或预算标识。空策略配置不提供主动动作。列表只读且不授予等待、提醒、模型或执行权限;目标首次使用策略时仍按原逻辑冻结,执行时再次核验主人及权限。已认证主人可用 `proactive_status` 只读查看决定,无需对每次合法查询重复工具审批;`proactive_feedback` 仍需当前主人回合及原有审批。
|
|
66
66
|
|
|
67
67
|
- `execute`:达到条件后返回执行候选;Goals 再次核验当前目标和授权,才能恢复。
|
|
68
|
-
- `remind
|
|
68
|
+
- `remind`:向冻结的主人会话投递一条持久提醒,正文只含主人自己的目标摘录(最多 200 个字素)和固定说明,不含配置估值、净收益、来源/事件/机会 ID 或事件元数据;这些仍可经 `proactive_status` 查看。不调用模型,不执行目标。同一主人、目标和来源(`sourceId`)只提醒一次:后续事件若来源观测内容(Goals 传入的事件 `observation.digest`)、正文、目标 revision/definition 与来源配置都未变化,记为 `suppress`/`unchanged` 并不再投递,不占用提醒预算;同一来源的观测内容变化仍会提醒。未提供观测摘要的旧 Goals 不做此去重。去重记录与决定在同一事务内持久化,重启后保持;若决定后、交给 Delivery 前发送窗口已关闭(例如重试落入静默时段),该记录被撤销,下一同内容事件仍可提醒。Delivery 接受后又过期或失败不会撤销去重。目标 revision 或来源配置变化、或主人对上次提醒给出 `proactive_feedback`(接受;拒绝另受拒绝冷却约束)后,才可再次提醒。提醒以 attention 目的 `result` 投递(无工作项或结构化问题,不适用 `attention`);旧 Delivery 忽略该字段。要求 Delivery 支持 `enqueueOwnerNotification`、已配置主人路由,并为背景主体 `assistant-proactive/v1` 授予该会话消息的 `send` 权限。设置 `maxRemindersPerGoal` 为正数;重复处理同一决定复用相同投递键。Web 在原会话输入区显示“主动提醒”,重启后可继续读取;其他渠道通过已有适配器发送。
|
|
69
69
|
- `prepare`:默认只保存目标、事件标识与判断理由,供 `proactive_status` 查询;省略 `preparation` 时不生成模型草稿、不修改业务文件。显式配置 `preparation { provider, model, budgetId, maxOutputTokens, timeoutMs }` 后,才会排入持久准备队列并请求一次真实模型草稿。该草稿使用独立 Session、最多一次模型请求、`tools: []`、`maxToolCalls: 0`;准备运行只解析预设身份,不装载预设工具和 persona,原目标保持 `paused`;运行器禁止工具执行;提示要求只提供草稿、不声称完成或验收。模型文本本身不构成执行或验收证据。`proactive_status` 返回的草稿始终是 `verified: false` / `unverified-draft`,不是验收结果。目标继续等待后续事件,直到截止或主人控制。
|
|
70
70
|
- `proactive_feedback`:当前已认证主人可以接受或拒绝指定决定;拒绝为该目标/策略的后续决定设置持久冷却。反馈不会撤销已经执行的业务动作,也不会创建执行授权;对准备任务,拒绝会取消排队、请求在途运行停止并拒收迟到结果。
|
|
71
71
|
|
|
@@ -73,9 +73,11 @@ profiles:
|
|
|
73
73
|
|
|
74
74
|
静默时段按 IANA 时区计算,支持跨午夜。合并等待和静默结束依靠 Goals 的周期核对;重启后继续读取原记录。事件内容不提供权限,也不作为新的目标指令。提醒投递有效期不晚于目标等待期限或下一个静默时段开始;未及时发送的提醒会失效,不跨静默时段补发。发送前及 Web 读取时重查原主人、绑定代次、路由和当前发送权限。Web 接受表示通知已可供读取,不表示用户已阅读。
|
|
75
75
|
|
|
76
|
+
`remind` 策略可选读取 Evaluation 的注意力版本(WP22 切片 2):每次评估时按目标 scope 的 workspace/preset 与 cohort `owner-notification` / `assistant-proactive/v1` 调用 `currentAttentionTuning`,只接受界内、非默认、带 digest 的版本,并仅在本次评估叠加到冻结策略上(不写回冻结快照):提高 `interruptionCost` 与 `minimumUtility`、在已配置静默时段两侧延长(未配置静默时段则不变)、或以 `attention-muted` 静默消费提醒。决定记录 `attentionTuning: { version, digest }`;提醒文本与有效期使用叠加后的估值和静默时段。Evaluation 缺席、开关关闭、返回版本 0、抛错或格式不符时不叠加,行为与未调参完全一致。`prepare` 与 `execute` 策略不受影响。
|
|
77
|
+
|
|
76
78
|
## 权限与数据
|
|
77
79
|
|
|
78
|
-
- 文件系统:保存配置数据库及 SQLite WAL/SHM
|
|
80
|
+
- 文件系统:保存配置数据库及 SQLite WAL/SHM;其中含主人身份范围、目标文本、事件标识、判断、反馈,以及按目标与来源记录的最后一次提醒内容摘要及是否已交给 Delivery(`proactive_reminders`,旧库启动时自动增建,不改动既有表)。另保存 `databasePath + '.preparations'` 及 WAL/SHM,其中含准备请求、模型草稿、有限 usage、独立 Session ID、状态和原因。数据库要求私有普通文件及不可由组/其他用户写入的父目录;不读取事件正文或业务文件。
|
|
79
81
|
- 网络:本插件本身不直接联网;显式开启准备后,`assistant-automations` 通过宿主已配置的模型 provider 发送草稿请求,目标文本和草稿会进入该请求和本地准备账本。子进程、凭据、浏览器、安装脚本:本插件均不直接使用。
|
|
80
82
|
- 工具:注册 `proactive_status` 和 `proactive_feedback`,均要求真实 Agent、Delivery 主人身份及 Policy;反馈还要求当前主人请求。Policy 资源为 `goal:proactive-opportunities`,动作分别为 `inspect`、`feedback`;安装配套 Policy 后,仅严格匹配的只读 `proactive_status` 可按当前 owner 和 Policy 预授权,其他调用仍由宿主审批。
|
|
81
83
|
- 执行:未配置 `preparation` 时本插件不执行模型调用、不恢复目标;提醒通过 Delivery 的有类型接口持久入队。配置准备后还要求 Automations、Goals、Delivery 和 Policy 都可用,且 `background:assistant-proactive/v1` 对该 goal 的 `prepare` 被允许。真正业务操作及消息发送的权限由 Goals、Delivery 与具体工具负责。
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { OpportunityProfile } from './types.js';
|
|
2
|
+
/** Evaluation cohort for proactive reminders (WP22 slice 2). */
|
|
3
|
+
export declare const proactiveAttentionCohort: Readonly<{
|
|
4
|
+
lane: "owner-notification";
|
|
5
|
+
sourceId: "assistant-proactive/v1";
|
|
6
|
+
}>;
|
|
7
|
+
/** A verified, tighten-only overlay published by assistant-evaluation. */
|
|
8
|
+
export interface AttentionOverlay {
|
|
9
|
+
version: number;
|
|
10
|
+
digest: string;
|
|
11
|
+
parameters: {
|
|
12
|
+
interruptionCostDelta: number;
|
|
13
|
+
minimumUtilityDelta: number;
|
|
14
|
+
quietExtensionMinutes: number;
|
|
15
|
+
muted: boolean;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Accepts only a well-formed, non-default overlay inside the fixed bounds.
|
|
20
|
+
* Anything else (missing service, version 0, malformed) means no overlay, which
|
|
21
|
+
* is byte-for-byte the untuned behavior.
|
|
22
|
+
*/
|
|
23
|
+
export declare function attentionOverlay(value: unknown): AttentionOverlay | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Applies an overlay to a reminder profile. Every effect only makes a reminder
|
|
26
|
+
* less likely or later: higher interruption cost, higher utility threshold,
|
|
27
|
+
* a quiet window widened on both sides (capped below a full day), or muting.
|
|
28
|
+
* Non-remind profiles and profiles without quiet hours keep those fields.
|
|
29
|
+
*/
|
|
30
|
+
export declare function tuneProfile(profile: Readonly<OpportunityProfile>, overlay: AttentionOverlay | undefined): Readonly<OpportunityProfile>;
|
|
31
|
+
//# sourceMappingURL=attention-tuning.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attention-tuning.d.ts","sourceRoot":"","sources":["../src/attention-tuning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEpD,gEAAgE;AAChE,eAAO,MAAM,wBAAwB;;;EAAoF,CAAA;AAEzH,0EAA0E;AAC1E,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE;QAAE,qBAAqB,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAC;QAAC,qBAAqB,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAA;CAC1H;AAKD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB,GAAG,SAAS,CAW7E;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,gBAAgB,GAAG,SAAS,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAatI"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/** Evaluation cohort for proactive reminders (WP22 slice 2). */
|
|
2
|
+
export const proactiveAttentionCohort = Object.freeze({ lane: 'owner-notification', sourceId: 'assistant-proactive/v1' });
|
|
3
|
+
const bounded = (value, max, step) => Number.isSafeInteger(value) && value >= 0 && value <= max && value % step === 0;
|
|
4
|
+
/**
|
|
5
|
+
* Accepts only a well-formed, non-default overlay inside the fixed bounds.
|
|
6
|
+
* Anything else (missing service, version 0, malformed) means no overlay, which
|
|
7
|
+
* is byte-for-byte the untuned behavior.
|
|
8
|
+
*/
|
|
9
|
+
export function attentionOverlay(value) {
|
|
10
|
+
if (!value || typeof value !== 'object')
|
|
11
|
+
return undefined;
|
|
12
|
+
const input = value;
|
|
13
|
+
const parameters = input.parameters;
|
|
14
|
+
if (!Number.isSafeInteger(input.version) || input.version < 1 || typeof input.digest !== 'string'
|
|
15
|
+
|| !/^[0-9a-f]{64}$/.test(input.digest) || !parameters || typeof parameters !== 'object'
|
|
16
|
+
|| !bounded(parameters.interruptionCostDelta, 100, 10) || !bounded(parameters.minimumUtilityDelta, 100, 10)
|
|
17
|
+
|| !bounded(parameters.quietExtensionMinutes, 120, 30) || typeof parameters.muted !== 'boolean')
|
|
18
|
+
return undefined;
|
|
19
|
+
return Object.freeze({ version: input.version, digest: input.digest, parameters: Object.freeze({
|
|
20
|
+
interruptionCostDelta: parameters.interruptionCostDelta, minimumUtilityDelta: parameters.minimumUtilityDelta,
|
|
21
|
+
quietExtensionMinutes: parameters.quietExtensionMinutes, muted: parameters.muted
|
|
22
|
+
}) });
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Applies an overlay to a reminder profile. Every effect only makes a reminder
|
|
26
|
+
* less likely or later: higher interruption cost, higher utility threshold,
|
|
27
|
+
* a quiet window widened on both sides (capped below a full day), or muting.
|
|
28
|
+
* Non-remind profiles and profiles without quiet hours keep those fields.
|
|
29
|
+
*/
|
|
30
|
+
export function tuneProfile(profile, overlay) {
|
|
31
|
+
if (!overlay || profile.mode !== 'remind')
|
|
32
|
+
return profile;
|
|
33
|
+
const { interruptionCostDelta, minimumUtilityDelta, quietExtensionMinutes } = overlay.parameters;
|
|
34
|
+
let quietHours = profile.quietHours;
|
|
35
|
+
if (quietHours && quietExtensionMinutes > 0) {
|
|
36
|
+
const length = (quietHours.endMinute - quietHours.startMinute + 1440) % 1440;
|
|
37
|
+
const room = Math.max(0, 1439 - length);
|
|
38
|
+
const before = Math.min(quietExtensionMinutes, Math.floor(room / 2));
|
|
39
|
+
const after = Math.min(quietExtensionMinutes, room - before);
|
|
40
|
+
quietHours = { timezone: quietHours.timezone, startMinute: (quietHours.startMinute - before + 1440) % 1440, endMinute: (quietHours.endMinute + after) % 1440 };
|
|
41
|
+
}
|
|
42
|
+
return Object.freeze({ ...profile, interruptionCost: profile.interruptionCost + interruptionCostDelta,
|
|
43
|
+
minimumUtility: profile.minimumUtility + minimumUtilityDelta, ...(quietHours ? { quietHours: Object.freeze(quietHours) } : {}) });
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=attention-tuning.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attention-tuning.js","sourceRoot":"","sources":["../src/attention-tuning.ts"],"names":[],"mappings":"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"}
|
package/lib/engine.d.ts
CHANGED
|
@@ -7,11 +7,23 @@ export declare class OpportunityEngine {
|
|
|
7
7
|
constructor(path: string, profiles: readonly OpportunityProfile[], options?: {
|
|
8
8
|
now?: () => number;
|
|
9
9
|
});
|
|
10
|
-
|
|
10
|
+
/**
|
|
11
|
+
* `overlay` is an optional verified tighten-only Evaluation attention version.
|
|
12
|
+
* It is applied to the frozen goal profile for this evaluation only and is
|
|
13
|
+
* never persisted into the profile snapshot.
|
|
14
|
+
*/
|
|
15
|
+
evaluate(input: OpportunityInput, overlay?: unknown): OpportunityEvaluation;
|
|
11
16
|
feedback(id: string, scopeInput: OpportunityScope, feedback: 'accepted' | 'rejected'): OpportunityDecision;
|
|
12
17
|
list(scopeInput: OpportunityScope, goalId?: string): readonly OpportunityDecision[];
|
|
13
18
|
profileSnapshot(scope: OpportunityScope, goalId: string, profileId: string): Readonly<OpportunityProfile>;
|
|
14
19
|
closeWait(waitId: string, scope: OpportunityScope, reason: 'expired' | 'cancelled'): void;
|
|
20
|
+
/** Delivery accepted (queued) this decision's reminder; a later replay past its send window keeps the dedupe. */
|
|
21
|
+
confirmReminder(decision: Readonly<Pick<OpportunityDecision, 'id' | 'scope' | 'goalId' | 'sourceId'>>): void;
|
|
22
|
+
/**
|
|
23
|
+
* This decision's reminder was never accepted by Delivery and its send window has closed, so it must not
|
|
24
|
+
* count as seen. Only the unconfirmed row this decision wrote is removed; a newer reminder is left alone.
|
|
25
|
+
*/
|
|
26
|
+
releaseReminder(decision: Readonly<Pick<OpportunityDecision, 'id' | 'scope' | 'goalId' | 'sourceId'>>): void;
|
|
15
27
|
close(): void;
|
|
16
28
|
}
|
|
17
29
|
//# sourceMappingURL=engine.d.ts.map
|
package/lib/engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AASpI,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAa9C;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,kBAAkB,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAoBvF;AAgCD,kHAAkH;AAClH,qBAAa,iBAAiB;;gBAKhB,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,kBAAkB,EAAE,EAAE,OAAO,GAAE;QAAE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;KAAO;IAgBvG;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,qBAAqB;IAkC3E,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,UAAU,GAAG,UAAU,GAAG,mBAAmB;IAS1G,IAAI,CAAC,UAAU,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,mBAAmB,EAAE;IAKnF,eAAe,CAAC,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAC,kBAAkB,CAAC;IAKzG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,IAAI;IAQzF,iHAAiH;IACjH,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC,CAAC,GAAG,IAAI;IAG5G;;;OAGG;IACH,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC,CAAC,GAAG,IAAI;IAG5G,KAAK,IAAI,IAAI;CAkFd"}
|
package/lib/engine.js
CHANGED
|
@@ -2,6 +2,8 @@ import { closeSync, constants, lstatSync, mkdirSync, openSync, chmodSync } from
|
|
|
2
2
|
import { dirname, isAbsolute } from 'node:path';
|
|
3
3
|
import { randomUUID } from 'node:crypto';
|
|
4
4
|
import { DatabaseSync } from 'node:sqlite';
|
|
5
|
+
import { reminderContentDigest } from './reminder.js';
|
|
6
|
+
import { attentionOverlay, tuneProfile } from './attention-tuning.js';
|
|
5
7
|
const max = 1_000_000_000;
|
|
6
8
|
const integer = (value, limit = max) => typeof value === 'number' && Number.isSafeInteger(value) && value >= 0 && value <= limit;
|
|
7
9
|
const text = (value, limit = 4096) => typeof value === 'string' && value.length > 0 && value.length <= limit && !/[\s\p{Cc}]/u.test(value);
|
|
@@ -73,10 +75,15 @@ function scopeKey(scope) {
|
|
|
73
75
|
}
|
|
74
76
|
function validateInput(input) {
|
|
75
77
|
if (!input || typeof input !== 'object' || ![input.waitId, input.profileId, input.goalId, input.sessionId, input.definitionDigest, input.nativeGoalId, input.ownerRouteId, input.sourceDigest, input.sourceId, input.event.id, input.event.digest].every(value => text(value)) || !content(input.objective)
|
|
78
|
+
|| input.event.observationDigest !== undefined && (typeof input.event.observationDigest !== 'string' || !/^[a-f0-9]{64}$/u.test(input.event.observationDigest))
|
|
76
79
|
|| !integer(input.nativeRevision) || !integer(input.event.sequence) || !integer(input.event.occurredAt, Number.MAX_SAFE_INTEGER) || !integer(input.expiresAt, Number.MAX_SAFE_INTEGER))
|
|
77
80
|
fail();
|
|
78
81
|
scopeKey(input.scope);
|
|
79
82
|
}
|
|
83
|
+
function reminderContent(input) {
|
|
84
|
+
return { goalId: input.goalId, objective: input.objective, definitionDigest: input.definitionDigest, nativeGoalId: input.nativeGoalId, nativeRevision: input.nativeRevision,
|
|
85
|
+
sourceId: input.sourceId, sourceDigest: input.sourceDigest, eventDigest: input.event.digest, eventObservationDigest: input.event.observationDigest };
|
|
86
|
+
}
|
|
80
87
|
function utility(profile) { return Number(BigInt(profile.expectedBenefit) * BigInt(profile.successPpm) / 1000000n - BigInt(profile.executionCost) - BigInt(profile.interruptionCost) - BigInt(profile.possibleLoss)); }
|
|
81
88
|
function minuteAt(now, timezone) {
|
|
82
89
|
const parts = new Intl.DateTimeFormat('en-US', { timeZone: timezone, hour: '2-digit', minute: '2-digit', hourCycle: 'h23' }).formatToParts(new Date(now));
|
|
@@ -101,6 +108,7 @@ export class OpportunityEngine {
|
|
|
101
108
|
#db;
|
|
102
109
|
#profiles = new Map();
|
|
103
110
|
#now;
|
|
111
|
+
#overlay;
|
|
104
112
|
constructor(path, profiles, options = {}) {
|
|
105
113
|
if (!Array.isArray(profiles))
|
|
106
114
|
fail('assistant-proactive: profiles must be an array');
|
|
@@ -118,11 +126,21 @@ export class OpportunityEngine {
|
|
|
118
126
|
CREATE TABLE IF NOT EXISTS proactive_profiles(scope_json TEXT NOT NULL, goal_id TEXT NOT NULL, profile_id TEXT NOT NULL, profile_json TEXT NOT NULL, PRIMARY KEY(scope_json, goal_id, profile_id)) STRICT, WITHOUT ROWID;
|
|
119
127
|
CREATE TABLE IF NOT EXISTS proactive_decisions(id TEXT PRIMARY KEY, scope_json TEXT NOT NULL, goal_id TEXT NOT NULL, profile_id TEXT NOT NULL, payload_json TEXT NOT NULL) STRICT;
|
|
120
128
|
CREATE TABLE IF NOT EXISTS proactive_events(scope_json TEXT NOT NULL, goal_id TEXT NOT NULL, profile_id TEXT NOT NULL, source_id TEXT NOT NULL, event_sequence INTEGER NOT NULL, event_digest TEXT NOT NULL, decision_id TEXT NOT NULL REFERENCES proactive_decisions(id), PRIMARY KEY(scope_json, goal_id, profile_id, source_id, event_sequence, event_digest)) STRICT, WITHOUT ROWID;
|
|
121
|
-
CREATE INDEX IF NOT EXISTS proactive_decisions_goal ON proactive_decisions(scope_json, goal_id, profile_id)
|
|
129
|
+
CREATE INDEX IF NOT EXISTS proactive_decisions_goal ON proactive_decisions(scope_json, goal_id, profile_id);
|
|
130
|
+
CREATE TABLE IF NOT EXISTS proactive_reminders(scope_json TEXT NOT NULL, goal_id TEXT NOT NULL, source_id TEXT NOT NULL, content_digest TEXT NOT NULL, decision_id TEXT NOT NULL REFERENCES proactive_decisions(id), queued INTEGER NOT NULL DEFAULT 0 CHECK(queued IN (0, 1)), PRIMARY KEY(scope_json, goal_id, source_id)) STRICT, WITHOUT ROWID;`);
|
|
131
|
+
// Pre-release development databases may hold the table without `queued`; add it in place.
|
|
132
|
+
if (!this.#db.prepare('PRAGMA table_info(proactive_reminders)').all().some(column => column.name === 'queued'))
|
|
133
|
+
this.#db.exec('ALTER TABLE proactive_reminders ADD COLUMN queued INTEGER NOT NULL DEFAULT 0 CHECK(queued IN (0, 1))');
|
|
122
134
|
}
|
|
123
|
-
|
|
135
|
+
/**
|
|
136
|
+
* `overlay` is an optional verified tighten-only Evaluation attention version.
|
|
137
|
+
* It is applied to the frozen goal profile for this evaluation only and is
|
|
138
|
+
* never persisted into the profile snapshot.
|
|
139
|
+
*/
|
|
140
|
+
evaluate(input, overlay) {
|
|
124
141
|
this.#db.exec('BEGIN IMMEDIATE');
|
|
125
142
|
try {
|
|
143
|
+
this.#overlay = attentionOverlay(overlay);
|
|
126
144
|
const value = this.#evaluate(input);
|
|
127
145
|
this.#db.exec('COMMIT');
|
|
128
146
|
return value;
|
|
@@ -134,6 +152,9 @@ export class OpportunityEngine {
|
|
|
134
152
|
catch { }
|
|
135
153
|
throw error;
|
|
136
154
|
}
|
|
155
|
+
finally {
|
|
156
|
+
this.#overlay = undefined;
|
|
157
|
+
}
|
|
137
158
|
}
|
|
138
159
|
#evaluate(input) {
|
|
139
160
|
validateInput(input);
|
|
@@ -141,7 +162,7 @@ export class OpportunityEngine {
|
|
|
141
162
|
if (!integer(now, Number.MAX_SAFE_INTEGER))
|
|
142
163
|
fail('assistant-proactive: invalid clock');
|
|
143
164
|
const scope = scopeKey(input.scope);
|
|
144
|
-
const profile = this.#profile(scope, input.goalId, input.profileId);
|
|
165
|
+
const profile = tuneProfile(this.#profile(scope, input.goalId, input.profileId), this.#overlay);
|
|
145
166
|
const existing = this.#event(scope, input);
|
|
146
167
|
if (existing) {
|
|
147
168
|
if (!this.#sameIdentity(existing, input))
|
|
@@ -172,6 +193,8 @@ export class OpportunityEngine {
|
|
|
172
193
|
const counts = this.#counts(scope, input.goalId);
|
|
173
194
|
if (counts.ledger >= profile.maxDecisionsPerGoal || profile.mode === 'execute' && counts.executions >= profile.maxExecutionsPerGoal || profile.mode === 'remind' && counts.reminders >= profile.maxRemindersPerGoal)
|
|
174
195
|
return this.#budgetProjection(input, profile, now);
|
|
196
|
+
if (this.#muted(profile))
|
|
197
|
+
return this.#save(scope, input, profile, 'consume', 'suppress', 'attention-muted', now, now);
|
|
175
198
|
if (quiet(now, profile))
|
|
176
199
|
return this.#save(scope, input, profile, 'defer', 'suppress', 'quiet-hours', now, quietEndsAt(now, profile));
|
|
177
200
|
if (utility(profile) < profile.minimumUtility)
|
|
@@ -180,6 +203,8 @@ export class OpportunityEngine {
|
|
|
180
203
|
return this.#save(scope, input, profile, 'consume', 'suppress', 'cooldown', now, now);
|
|
181
204
|
if (profile.mergeWindowMs > 0)
|
|
182
205
|
return this.#save(scope, input, profile, 'defer', 'suppress', 'coalescing', now, now + profile.mergeWindowMs);
|
|
206
|
+
if (profile.mode === 'remind' && this.#unchangedReminder(scope, reminderContent(input)))
|
|
207
|
+
return this.#save(scope, input, profile, 'consume', 'suppress', 'unchanged', now, now);
|
|
183
208
|
return this.#save(scope, input, profile, profile.mode === 'execute' ? 'execute' : 'consume', profile.mode, profile.mode === 'execute' ? 'execution' : profile.mode === 'remind' ? 'reminder' : 'prepared', now, now);
|
|
184
209
|
}
|
|
185
210
|
feedback(id, scopeInput, feedback) {
|
|
@@ -232,7 +257,27 @@ export class OpportunityEngine {
|
|
|
232
257
|
throw error;
|
|
233
258
|
}
|
|
234
259
|
}
|
|
260
|
+
/** Delivery accepted (queued) this decision's reminder; a later replay past its send window keeps the dedupe. */
|
|
261
|
+
confirmReminder(decision) {
|
|
262
|
+
this.#db.prepare('UPDATE proactive_reminders SET queued = 1 WHERE scope_json = ? AND goal_id = ? AND source_id = ? AND decision_id = ?').run(scopeKey(decision.scope), decision.goalId, decision.sourceId, decision.id);
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* This decision's reminder was never accepted by Delivery and its send window has closed, so it must not
|
|
266
|
+
* count as seen. Only the unconfirmed row this decision wrote is removed; a newer reminder is left alone.
|
|
267
|
+
*/
|
|
268
|
+
releaseReminder(decision) {
|
|
269
|
+
this.#db.prepare('DELETE FROM proactive_reminders WHERE scope_json = ? AND goal_id = ? AND source_id = ? AND decision_id = ? AND queued = 0').run(scopeKey(decision.scope), decision.goalId, decision.sourceId, decision.id);
|
|
270
|
+
}
|
|
235
271
|
close() { this.#db.close(); }
|
|
272
|
+
#muted(profile) { return profile.mode === 'remind' && this.#overlay?.parameters.muted === true; }
|
|
273
|
+
/** Records which attention version shaped a decision; absent when no overlay applied. */
|
|
274
|
+
#attention(profile) {
|
|
275
|
+
return this.#overlay && profile.mode === 'remind' ? { attentionTuning: freeze({ version: this.#overlay.version, digest: this.#overlay.digest }) } : {};
|
|
276
|
+
}
|
|
277
|
+
#tag(existing, profile) {
|
|
278
|
+
const { attentionTuning: _previous, ...rest } = existing;
|
|
279
|
+
return { ...rest, ...this.#attention(profile) };
|
|
280
|
+
}
|
|
236
281
|
#profile(scope, goalId, profileId) {
|
|
237
282
|
const row = this.#db.prepare('SELECT profile_json FROM proactive_profiles WHERE scope_json = ? AND goal_id = ? AND profile_id = ?').get(scope, goalId, profileId);
|
|
238
283
|
if (row)
|
|
@@ -262,7 +307,7 @@ export class OpportunityEngine {
|
|
|
262
307
|
return { ledger: rows.length, executions: rows.filter(value => value.mode === 'execute').length, reminders: rows.filter(value => value.mode === 'remind').length };
|
|
263
308
|
}
|
|
264
309
|
#merge(scope, existing, input, now) {
|
|
265
|
-
const next = input.event.sequence > existing.eventSequence ? freeze({ ...existing, waitId: input.waitId, sessionId: input.sessionId, ownerRouteId: input.ownerRouteId, sourceId: input.sourceId, eventId: input.event.id, eventSequence: input.event.sequence, eventDigest: input.event.digest, sourceDigest: input.sourceDigest, objective: input.objective, definitionDigest: input.definitionDigest, nativeGoalId: input.nativeGoalId, nativeRevision: input.nativeRevision, updatedAt: now, observations: existing.observations + 1 }) : freeze({ ...existing, updatedAt: now, observations: existing.observations + 1 });
|
|
310
|
+
const next = input.event.sequence > existing.eventSequence ? freeze({ ...existing, waitId: input.waitId, sessionId: input.sessionId, ownerRouteId: input.ownerRouteId, sourceId: input.sourceId, eventId: input.event.id, eventSequence: input.event.sequence, eventDigest: input.event.digest, eventObservationDigest: input.event.observationDigest, sourceDigest: input.sourceDigest, objective: input.objective, definitionDigest: input.definitionDigest, nativeGoalId: input.nativeGoalId, nativeRevision: input.nativeRevision, updatedAt: now, observations: existing.observations + 1 }) : freeze({ ...existing, updatedAt: now, observations: existing.observations + 1 });
|
|
266
311
|
this.#put(next);
|
|
267
312
|
this.#link(scope, input, next.id);
|
|
268
313
|
return freeze({ disposition: 'defer', decision: next });
|
|
@@ -273,38 +318,63 @@ export class OpportunityEngine {
|
|
|
273
318
|
const rejected = this.#latestRejected(scope, input.goalId, profile.id);
|
|
274
319
|
if (rejected && rejected.id !== existing.id && now < rejected.updatedAt + profile.rejectionCooldownMs)
|
|
275
320
|
return this.#terminal(existing, 'consume', 'suppress', 'rejected-cooldown', now);
|
|
321
|
+
if (this.#muted(profile)) {
|
|
322
|
+
const muted = freeze({ ...this.#tag(existing, profile), state: 'decided', mode: 'suppress', reason: 'attention-muted', updatedAt: now });
|
|
323
|
+
this.#put(muted);
|
|
324
|
+
return freeze({ disposition: 'consume', decision: muted });
|
|
325
|
+
}
|
|
276
326
|
if (quiet(now, profile)) {
|
|
277
|
-
const delayed = freeze({ ...existing, reason: 'quiet-hours', updatedAt: now, eligibleAt: quietEndsAt(now, profile) });
|
|
327
|
+
const delayed = freeze({ ...this.#tag(existing, profile), reason: 'quiet-hours', updatedAt: now, eligibleAt: quietEndsAt(now, profile) });
|
|
278
328
|
this.#put(delayed);
|
|
279
329
|
return freeze({ disposition: 'defer', decision: delayed });
|
|
280
330
|
}
|
|
281
331
|
if (utility(profile) < profile.minimumUtility) {
|
|
282
|
-
const suppressed = freeze({ ...existing, state: 'decided', mode: 'suppress', reason: 'below-threshold', updatedAt: now });
|
|
332
|
+
const suppressed = freeze({ ...this.#tag(existing, profile), state: 'decided', mode: 'suppress', reason: 'below-threshold', updatedAt: now });
|
|
283
333
|
this.#put(suppressed);
|
|
284
334
|
return freeze({ disposition: 'consume', decision: suppressed });
|
|
285
335
|
}
|
|
286
336
|
const counts = this.#counts(scope, input.goalId);
|
|
287
337
|
const budget = counts.ledger > profile.maxDecisionsPerGoal || profile.mode === 'execute' && counts.executions >= profile.maxExecutionsPerGoal || profile.mode === 'remind' && counts.reminders >= profile.maxRemindersPerGoal;
|
|
288
|
-
|
|
289
|
-
const
|
|
290
|
-
const
|
|
338
|
+
// Compare the content of the latest coalesced observation, i.e. what this decision will actually report.
|
|
339
|
+
const observed = { ...this.#tag(existing, profile), ...(input.event.sequence > existing.eventSequence ? { eventId: input.event.id, eventSequence: input.event.sequence, eventDigest: input.event.digest, eventObservationDigest: input.event.observationDigest, observations: existing.observations + 1 } : {}) };
|
|
340
|
+
const unchanged = !budget && profile.mode === 'remind' && this.#unchangedReminder(scope, observed);
|
|
341
|
+
const mode = budget || unchanged ? 'suppress' : profile.mode;
|
|
342
|
+
const reason = budget ? 'budget' : unchanged ? 'unchanged' : profile.mode === 'execute' ? 'execution' : profile.mode === 'remind' ? 'reminder' : 'prepared';
|
|
343
|
+
const next = freeze({ ...observed, mode, state: 'decided', reason, utility: utility(profile), updatedAt: now });
|
|
291
344
|
this.#put(next);
|
|
292
345
|
this.#link(scope, input, next.id);
|
|
346
|
+
if (mode === 'remind')
|
|
347
|
+
this.#remember(scope, next);
|
|
293
348
|
return freeze({ disposition: mode === 'execute' ? 'execute' : 'consume', decision: next });
|
|
294
349
|
}
|
|
295
350
|
#save(scope, input, profile, disposition, mode, reason, now, eligibleAt) {
|
|
296
351
|
if (this.#counts(scope, input.goalId).ledger >= profile.maxDecisionsPerGoal)
|
|
297
352
|
return this.#budgetProjection(input, profile, now);
|
|
298
|
-
const decision = freeze({ id: `opportunity-${randomUUID()}`, waitId: input.waitId, profileId: profile.id, scope: input.scope, goalId: input.goalId, sessionId: input.sessionId, ownerRouteId: input.ownerRouteId, sourceId: input.sourceId, eventId: input.event.id, eventSequence: input.event.sequence, eventDigest: input.event.digest, sourceDigest: input.sourceDigest, objective: input.objective, definitionDigest: input.definitionDigest, nativeGoalId: input.nativeGoalId, nativeRevision: input.nativeRevision, mode, state: eligibleAt > now ? 'pending' : 'decided', reason, utility: utility(profile), firstObservedAt: now, updatedAt: now, eligibleAt, expiresAt: input.expiresAt, observations: 1 });
|
|
353
|
+
const decision = freeze({ id: `opportunity-${randomUUID()}`, waitId: input.waitId, profileId: profile.id, scope: input.scope, goalId: input.goalId, sessionId: input.sessionId, ownerRouteId: input.ownerRouteId, sourceId: input.sourceId, eventId: input.event.id, eventSequence: input.event.sequence, eventDigest: input.event.digest, eventObservationDigest: input.event.observationDigest, sourceDigest: input.sourceDigest, objective: input.objective, definitionDigest: input.definitionDigest, nativeGoalId: input.nativeGoalId, nativeRevision: input.nativeRevision, mode, state: eligibleAt > now ? 'pending' : 'decided', reason, utility: utility(profile), firstObservedAt: now, updatedAt: now, eligibleAt, expiresAt: input.expiresAt, observations: 1, ...this.#attention(profile) });
|
|
299
354
|
this.#put(decision);
|
|
300
355
|
this.#link(scope, input, decision.id);
|
|
356
|
+
if (mode === 'remind')
|
|
357
|
+
this.#remember(scope, decision);
|
|
301
358
|
return freeze({ disposition, decision });
|
|
302
359
|
}
|
|
360
|
+
/**
|
|
361
|
+
* One reminder per goal source until what the owner would read changes or the owner answers it. Durable in
|
|
362
|
+
* the same transaction as the decision, so a restart neither forgets nor re-sends an unchanged reminder.
|
|
363
|
+
*/
|
|
364
|
+
#unchangedReminder(scope, value) {
|
|
365
|
+
const row = this.#db.prepare('SELECT content_digest, decision_id FROM proactive_reminders WHERE scope_json = ? AND goal_id = ? AND source_id = ?').get(scope, value.goalId, value.sourceId);
|
|
366
|
+
if (!row || row.content_digest !== reminderContentDigest(value))
|
|
367
|
+
return false;
|
|
368
|
+
return this.#decision(row.decision_id)?.feedback === undefined;
|
|
369
|
+
}
|
|
370
|
+
#remember(scope, decision) {
|
|
371
|
+
this.#db.prepare('INSERT INTO proactive_reminders(scope_json, goal_id, source_id, content_digest, decision_id, queued) VALUES (?, ?, ?, ?, ?, 0) ON CONFLICT(scope_json, goal_id, source_id) DO UPDATE SET content_digest = excluded.content_digest, decision_id = excluded.decision_id, queued = 0').run(scope, decision.goalId, decision.sourceId, reminderContentDigest(decision), decision.id);
|
|
372
|
+
}
|
|
303
373
|
#put(decision) { this.#db.prepare('INSERT INTO proactive_decisions(id, scope_json, goal_id, profile_id, payload_json) VALUES (?, ?, ?, ?, ?) ON CONFLICT(id) DO UPDATE SET payload_json = excluded.payload_json').run(decision.id, scopeKey(decision.scope), decision.goalId, decision.profileId, JSON.stringify(decision)); }
|
|
304
374
|
#link(scope, input, id) { this.#db.prepare('INSERT OR IGNORE INTO proactive_events VALUES (?, ?, ?, ?, ?, ?, ?)').run(scope, input.goalId, input.profileId, input.sourceId, input.event.sequence, input.event.digest, id); }
|
|
305
375
|
#terminal(existing, disposition, mode, reason, now) { const next = freeze({ ...existing, mode, reason, state: 'decided', updatedAt: now }); if (existing.state === 'pending')
|
|
306
376
|
this.#put(next); return freeze({ disposition, decision: next }); }
|
|
307
|
-
#budgetProjection(input, profile, now) { return freeze({ disposition: 'consume', decision: freeze({ id: `opportunity-budget-${input.event.digest}`, waitId: input.waitId, profileId: profile.id, scope: input.scope, goalId: input.goalId, sessionId: input.sessionId, ownerRouteId: input.ownerRouteId, sourceId: input.sourceId, eventId: input.event.id, eventSequence: input.event.sequence, eventDigest: input.event.digest, sourceDigest: input.sourceDigest, objective: input.objective, definitionDigest: input.definitionDigest, nativeGoalId: input.nativeGoalId, nativeRevision: input.nativeRevision, mode: 'suppress', state: 'decided', reason: 'budget', utility: utility(profile), firstObservedAt: now, updatedAt: now, eligibleAt: now, expiresAt: input.expiresAt, observations: 0 }) }); }
|
|
377
|
+
#budgetProjection(input, profile, now) { return freeze({ disposition: 'consume', decision: freeze({ id: `opportunity-budget-${input.event.digest}`, waitId: input.waitId, profileId: profile.id, scope: input.scope, goalId: input.goalId, sessionId: input.sessionId, ownerRouteId: input.ownerRouteId, sourceId: input.sourceId, eventId: input.event.id, eventSequence: input.event.sequence, eventDigest: input.event.digest, eventObservationDigest: input.event.observationDigest, sourceDigest: input.sourceDigest, objective: input.objective, definitionDigest: input.definitionDigest, nativeGoalId: input.nativeGoalId, nativeRevision: input.nativeRevision, mode: 'suppress', state: 'decided', reason: 'budget', utility: utility(profile), firstObservedAt: now, updatedAt: now, eligibleAt: now, expiresAt: input.expiresAt, observations: 0 }) }); }
|
|
308
378
|
#sameIdentity(value, input) { return value.waitId === input.waitId && value.sessionId === input.sessionId && value.nativeGoalId === input.nativeGoalId && value.nativeRevision === input.nativeRevision && value.ownerRouteId === input.ownerRouteId && value.sourceId === input.sourceId && value.sourceDigest === input.sourceDigest && value.definitionDigest === input.definitionDigest && value.objective === input.objective && value.expiresAt === input.expiresAt && value.goalId === input.goalId && sameScope(value.scope, input.scope); }
|
|
309
379
|
}
|
|
310
380
|
function sameScope(left, right) { return scopeKey(left) === scopeKey(right); }
|
package/lib/engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -4,9 +4,11 @@ import { type ToolExecution } from '@deepseek-ai/dsh-tools';
|
|
|
4
4
|
import Schema from '@deepseek-ai/schemastery';
|
|
5
5
|
import { OpportunityEngine, validateProfile } from './engine.js';
|
|
6
6
|
import type { OpportunityInput, OpportunityProfile, OpportunityScope } from './types.js';
|
|
7
|
+
import { attentionOverlay, proactiveAttentionCohort, tuneProfile, type AttentionOverlay } from './attention-tuning.js';
|
|
7
8
|
import { version } from './version.js';
|
|
8
9
|
export declare const name = "dsh-enhanced-assistant-proactive";
|
|
9
|
-
export { version, OpportunityEngine, validateProfile };
|
|
10
|
+
export { version, OpportunityEngine, validateProfile, attentionOverlay, tuneProfile, proactiveAttentionCohort };
|
|
11
|
+
export type { AttentionOverlay };
|
|
10
12
|
export type * from './types.js';
|
|
11
13
|
export interface Config {
|
|
12
14
|
databasePath?: string;
|
|
@@ -61,6 +63,7 @@ export declare class AssistantProactiveService extends Service {
|
|
|
61
63
|
eventSequence: number;
|
|
62
64
|
eventDigest: string;
|
|
63
65
|
sourceDigest: string;
|
|
66
|
+
eventObservationDigest?: string | undefined;
|
|
64
67
|
objective: string;
|
|
65
68
|
definitionDigest: string;
|
|
66
69
|
nativeGoalId: string;
|
|
@@ -75,6 +78,10 @@ export declare class AssistantProactiveService extends Service {
|
|
|
75
78
|
expiresAt: number;
|
|
76
79
|
observations: number;
|
|
77
80
|
feedback?: "accepted" | "rejected";
|
|
81
|
+
attentionTuning?: {
|
|
82
|
+
version: number;
|
|
83
|
+
digest: string;
|
|
84
|
+
};
|
|
78
85
|
})[];
|
|
79
86
|
reconcilePreparations: () => Promise<void>;
|
|
80
87
|
feedback: (agent: Agent | undefined, id: string, feedback: "accepted" | "rejected") => import("./types.js").OpportunityDecision;
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACnD,OAAO,EAAc,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAGvE,OAAO,MAAM,MAAM,0BAA0B,CAAA;AAI7C,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACnD,OAAO,EAAc,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAGvE,OAAO,MAAM,MAAM,0BAA0B,CAAA;AAI7C,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAExF,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAGtH,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,eAAO,MAAM,IAAI,qCAAqC,CAAA;AACtD,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAA;AAC/G,YAAY,EAAE,gBAAgB,EAAE,CAAA;AAChC,mBAAmB,YAAY,CAAA;AAG/B,MAAM,WAAW,MAAM;IAAG,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAAE;AAElF,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,CAWhC,CAAA;AACF,OAAO,QAAQ,qBAAqB,CAAC;IAAE,UAAU,OAAO;QAAG,kBAAkB,EAAE,yBAAyB,CAAA;KAAE;CAAE;AAE5G,sFAAsF;AACtF,qBAAa,yBAA0B,SAAQ,OAAO;;IACpD,MAAM,CAAC,MAAM,iBAAS;gBAKV,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,MAAW;IAkC7C,aAAa,GAAI,WAAW,MAAM,KAAG,IAAI,CAIxC;IACD,iBAAiB,GAAI,OAAO,KAAK,GAAG,SAAS;;;;;;SAO5C;IACD,kBAAkB,GAAI,WAAW,aAAa,KAAG,OAAO,CAYvD;IACD,QAAQ,GAAI,OAAO,gBAAgB,gDAyBlC;IAkBD,SAAS,GAAI,QAAQ,MAAM,EAAE,OAAO,gBAAgB,EAAE,QAAQ,SAAS,GAAG,WAAW,KAAG,IAAI,CAI3F;IAkBD,OAAO,GAAI,OAAO,KAAK,GAAG,SAAS,EAAE,SAAS,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAMnD;IACD,qBAAqB,QAAO,OAAO,CAAC,IAAI,CAAC,CAA6B;IACtE,QAAQ,GAAI,OAAO,KAAK,GAAG,SAAS,EAAE,IAAI,MAAM,EAAE,UAAU,UAAU,GAAG,UAAU,8CAA0K;CAC9P;AACD,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,MAAW,GAAG,IAAI,CAA+C;;;;;;AAC7G,wBAAsC"}
|
package/lib/index.js
CHANGED
|
@@ -6,11 +6,12 @@ import { homedir } from 'node:os';
|
|
|
6
6
|
import { join } from 'node:path';
|
|
7
7
|
import { OpportunityEngine, validateProfile } from './engine.js';
|
|
8
8
|
import { reminderText, reminderExpiresAt } from './reminder.js';
|
|
9
|
+
import { attentionOverlay, proactiveAttentionCohort, tuneProfile } from './attention-tuning.js';
|
|
9
10
|
import { PreparationRuntime } from './preparation.js';
|
|
10
11
|
import { PreparationStore } from './preparation-store.js';
|
|
11
12
|
import { version } from './version.js';
|
|
12
13
|
export const name = 'dsh-enhanced-assistant-proactive';
|
|
13
|
-
export { version, OpportunityEngine, validateProfile };
|
|
14
|
+
export { version, OpportunityEngine, validateProfile, attentionOverlay, tuneProfile, proactiveAttentionCohort };
|
|
14
15
|
const integer = (max = 1_000_000_000) => Schema.number().step(1).min(0).max(max).required();
|
|
15
16
|
export const Config = Schema.object({
|
|
16
17
|
databasePath: Schema.string().default(join(homedir(), '.dsh', 'assistant-proactive.sqlite')),
|
|
@@ -108,16 +109,22 @@ export class AssistantProactiveService extends Service {
|
|
|
108
109
|
};
|
|
109
110
|
evaluate = (input) => {
|
|
110
111
|
this.assertProfile(input.profileId);
|
|
111
|
-
const
|
|
112
|
+
const overlay = this.#configuredProfileMode(input.profileId) === 'remind' ? this.#attentionOverlay(input.scope) : undefined;
|
|
113
|
+
const evaluation = this.#engine.evaluate(input, overlay);
|
|
112
114
|
const decision = evaluation.decision;
|
|
113
115
|
if (evaluation.disposition === 'consume' && decision.mode === 'remind' && decision.state === 'decided') {
|
|
114
116
|
const delivery = this.#notificationPort();
|
|
115
117
|
if (!delivery)
|
|
116
118
|
throw new Error('assistant-proactive: reminder delivery service unavailable');
|
|
117
|
-
const profile = this.#engine.profileSnapshot(decision.scope, decision.goalId, decision.profileId);
|
|
119
|
+
const profile = tuneProfile(this.#engine.profileSnapshot(decision.scope, decision.goalId, decision.profileId), overlay);
|
|
118
120
|
const expiresAt = reminderExpiresAt(decision, profile);
|
|
119
|
-
|
|
120
|
-
|
|
121
|
+
// An informational notice: no WorkItem or structured question exists, so `attention` would not apply.
|
|
122
|
+
if (Date.now() < expiresAt) {
|
|
123
|
+
delivery.enqueueOwnerNotification({ sourceId: 'assistant-proactive/v1', ownerRouteId: decision.ownerRouteId, scope: decision.scope, sessionId: decision.sessionId, idempotencyKey: `proactive-reminder:${decision.id}`, text: reminderText(decision), expiresAt, attention: { purpose: 'result' } });
|
|
124
|
+
this.#engine.confirmReminder(decision);
|
|
125
|
+
}
|
|
126
|
+
else
|
|
127
|
+
this.#engine.releaseReminder(decision); // never queued: a later unchanged event may still remind
|
|
121
128
|
}
|
|
122
129
|
if (evaluation.disposition === 'consume' && decision.mode === 'prepare' && decision.state === 'decided') {
|
|
123
130
|
const profile = this.#engine.profileSnapshot(decision.scope, decision.goalId, decision.profileId);
|
|
@@ -128,6 +135,23 @@ export class AssistantProactiveService extends Service {
|
|
|
128
135
|
}
|
|
129
136
|
return evaluation;
|
|
130
137
|
};
|
|
138
|
+
#configuredProfileMode(profileId) { return this.#profiles.get(profileId)?.mode; }
|
|
139
|
+
/**
|
|
140
|
+
* WP22: the current verified attention version for proactive reminders, read
|
|
141
|
+
* structurally from Evaluation. Absent service, switch off, errors, version 0
|
|
142
|
+
* or malformed values all mean no overlay (identical untuned behavior).
|
|
143
|
+
*/
|
|
144
|
+
#attentionOverlay(scope) {
|
|
145
|
+
const evaluation = this.ctx.get('assistantEvaluation');
|
|
146
|
+
if (typeof evaluation?.currentAttentionTuning !== 'function')
|
|
147
|
+
return undefined;
|
|
148
|
+
try {
|
|
149
|
+
return attentionOverlay(evaluation.currentAttentionTuning({ scope: { workspace: scope.workspace, preset: scope.preset }, cohort: { ...proactiveAttentionCohort } }));
|
|
150
|
+
}
|
|
151
|
+
catch {
|
|
152
|
+
return undefined;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
131
155
|
#notificationPort() {
|
|
132
156
|
const delivery = this.ctx.get('assistantDelivery');
|
|
133
157
|
return typeof delivery?.enqueueOwnerNotification === 'function' ? delivery : undefined;
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/reminder.d.ts
CHANGED
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
import type { OpportunityDecision, OpportunityProfile } from './types.js';
|
|
2
|
-
/**
|
|
3
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Owner-facing plain text. It carries only the owner's own objective plus fixed wording: no operator
|
|
4
|
+
* estimates, utility, source/event/decision identifiers or event content. Those stay in `proactive_status`.
|
|
5
|
+
*/
|
|
6
|
+
export declare function reminderText(decision: Readonly<Pick<OpportunityDecision, 'objective'>>): string;
|
|
7
|
+
/**
|
|
8
|
+
* Durable dedupe key for one goal source. It changes when the triggering observation's content, the text the
|
|
9
|
+
* owner would see, the goal revision/definition or the configured source changes; a new event that observes
|
|
10
|
+
* the same content does not. Without an observation digest (older Goals) the unique envelope digest is used,
|
|
11
|
+
* so such events are never treated as unchanged.
|
|
12
|
+
*/
|
|
13
|
+
export type ReminderContent = Pick<OpportunityDecision, 'objective' | 'definitionDigest' | 'nativeGoalId' | 'nativeRevision' | 'sourceId' | 'sourceDigest' | 'eventDigest' | 'eventObservationDigest'>;
|
|
14
|
+
export declare function reminderContentDigest(decision: Readonly<ReminderContent>): string;
|
|
4
15
|
/** A queued reminder expires at the next quiet interval; it cannot arrive during a later silent period. */
|
|
5
16
|
export declare function reminderExpiresAt(decision: Readonly<OpportunityDecision>, profile: Readonly<OpportunityProfile>): number;
|
|
6
17
|
//# sourceMappingURL=reminder.d.ts.map
|
package/lib/reminder.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reminder.d.ts","sourceRoot":"","sources":["../src/reminder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reminder.d.ts","sourceRoot":"","sources":["../src/reminder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAczE;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC,GAAG,MAAM,CAE/F;AAED;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,mBAAmB,EAAE,WAAW,GAAG,kBAAkB,GAAG,cAAc,GAAG,gBAAgB,GAAG,UAAU,GAAG,cAAc,GAAG,aAAa,GAAG,wBAAwB,CAAC,CAAA;AACtM,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,MAAM,CAIjF;AAED,2GAA2G;AAC3G,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAexH"}
|
package/lib/reminder.js
CHANGED
|
@@ -1,7 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { createHash } from 'node:crypto';
|
|
2
|
+
const graphemes = new Intl.Segmenter('und', { granularity: 'grapheme' });
|
|
3
|
+
const objectiveLimit = 200;
|
|
4
|
+
function excerpt(value) {
|
|
5
|
+
const parts = [];
|
|
6
|
+
for (const part of graphemes.segment(value.replace(/\s+/gu, ' ').trim())) {
|
|
7
|
+
if (parts.length === objectiveLimit)
|
|
8
|
+
return `${parts.join('')}…`;
|
|
9
|
+
parts.push(part.segment);
|
|
10
|
+
}
|
|
11
|
+
return parts.join('');
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Owner-facing plain text. It carries only the owner's own objective plus fixed wording: no operator
|
|
15
|
+
* estimates, utility, source/event/decision identifiers or event content. Those stay in `proactive_status`.
|
|
16
|
+
*/
|
|
17
|
+
export function reminderText(decision) {
|
|
18
|
+
return `主动提醒:目标有新的相关事件\n\n目标:${excerpt(decision.objective)}\n\n目标仍在等待。本次仅提醒,未执行目标任务。如需反馈,可在对话中让助手查看主动提醒,再接受或拒绝。`;
|
|
19
|
+
}
|
|
20
|
+
export function reminderContentDigest(decision) {
|
|
21
|
+
const observation = decision.eventObservationDigest === undefined ? ['envelope', decision.eventDigest] : ['observation', decision.eventObservationDigest];
|
|
22
|
+
return createHash('sha256').update(JSON.stringify(['assistant-proactive/reminder/v2', decision.sourceId, decision.sourceDigest,
|
|
23
|
+
decision.nativeGoalId, decision.nativeRevision, decision.definitionDigest, ...observation, reminderText(decision)])).digest('hex');
|
|
5
24
|
}
|
|
6
25
|
/** A queued reminder expires at the next quiet interval; it cannot arrive during a later silent period. */
|
|
7
26
|
export function reminderExpiresAt(decision, profile) {
|
package/lib/reminder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reminder.js","sourceRoot":"","sources":["../src/reminder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reminder.js","sourceRoot":"","sources":["../src/reminder.ts"],"names":[],"mappings":"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"}
|
package/lib/types.d.ts
CHANGED
|
@@ -50,15 +50,20 @@ export interface OpportunityInput {
|
|
|
50
50
|
ownerRouteId: string;
|
|
51
51
|
sourceDigest: string;
|
|
52
52
|
sourceId: string;
|
|
53
|
+
/**
|
|
54
|
+
* `digest` is the canonical envelope digest (unique per event). `observationDigest` is the source's
|
|
55
|
+
* content digest (`observation.digest`); optional for older Goals, which then never dedupe a reminder.
|
|
56
|
+
*/
|
|
53
57
|
event: {
|
|
54
58
|
id: string;
|
|
55
59
|
sequence: number;
|
|
56
60
|
digest: string;
|
|
57
61
|
occurredAt: number;
|
|
62
|
+
observationDigest?: string;
|
|
58
63
|
};
|
|
59
64
|
expiresAt: number;
|
|
60
65
|
}
|
|
61
|
-
export type OpportunityReason = 'cancelled' | 'coalescing' | 'quiet-hours' | 'cooldown' | 'rejected-cooldown' | 'below-threshold' | 'budget' | 'expired' | 'prepared' | 'reminder' | 'execution';
|
|
66
|
+
export type OpportunityReason = 'cancelled' | 'coalescing' | 'quiet-hours' | 'cooldown' | 'rejected-cooldown' | 'below-threshold' | 'budget' | 'expired' | 'prepared' | 'reminder' | 'unchanged' | 'execution' | 'attention-muted';
|
|
62
67
|
export interface OpportunityDecision {
|
|
63
68
|
id: string;
|
|
64
69
|
waitId: string;
|
|
@@ -72,6 +77,8 @@ export interface OpportunityDecision {
|
|
|
72
77
|
eventSequence: number;
|
|
73
78
|
eventDigest: string;
|
|
74
79
|
sourceDigest: string;
|
|
80
|
+
/** Content digest of the triggering observation, when the caller supplied one. */
|
|
81
|
+
eventObservationDigest?: string | undefined;
|
|
75
82
|
objective: string;
|
|
76
83
|
definitionDigest: string;
|
|
77
84
|
nativeGoalId: string;
|
|
@@ -86,6 +93,11 @@ export interface OpportunityDecision {
|
|
|
86
93
|
expiresAt: number;
|
|
87
94
|
observations: number;
|
|
88
95
|
feedback?: 'accepted' | 'rejected';
|
|
96
|
+
/** Evaluation attention version (WP22) applied to this decision; absent when untuned. */
|
|
97
|
+
attentionTuning?: {
|
|
98
|
+
version: number;
|
|
99
|
+
digest: string;
|
|
100
|
+
};
|
|
89
101
|
}
|
|
90
102
|
export interface OpportunityEvaluation {
|
|
91
103
|
/** consume advances this wait's source cursor; execute still goes through the original GoalWake authority. */
|
package/lib/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAC5G;AACD,uGAAuG;AACvG,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAC9F;AACD,MAAM,WAAW,kBAAkB;IACjC,mGAAmG;IACnG,WAAW,CAAC,EAAE,mBAAmB,CAAA;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;IACtC,eAAe,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;IAC1I,aAAa,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,mBAAmB,EAAE,MAAM,CAAA;IACtE,UAAU,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAA;IACzE,mBAAmB,EAAE,MAAM,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC;IAAC,mBAAmB,EAAE,MAAM,CAAA;CACvF;AACD,wGAAwG;AACxG,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,gBAAgB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;IAC7F,gBAAgB,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;IAC/G,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;IACtC,KAAK,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/lib/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "0.1.
|
|
1
|
+
export declare const version = "0.1.66";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/lib/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const version = '0.1.
|
|
1
|
+
export const version = '0.1.66';
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dsh-enhanced/assistant-proactive",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.66",
|
|
4
4
|
"description": "Owner-authorized goal event opportunity filtering with durable utility decisions and cooldowns.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -43,8 +43,8 @@
|
|
|
43
43
|
},
|
|
44
44
|
"peerDependencies": {
|
|
45
45
|
"@deepseek-ai/cordis": "^4.0.1",
|
|
46
|
-
"@deepseek-ai/dsh-agent": "0.2.1-rc.2",
|
|
47
|
-
"@deepseek-ai/dsh-tools": "0.2.1-rc.2",
|
|
46
|
+
"@deepseek-ai/dsh-agent": ">=0.2.1-rc.2 <0.3.0",
|
|
47
|
+
"@deepseek-ai/dsh-tools": ">=0.2.1-rc.2 <0.3.0",
|
|
48
48
|
"@dsh-enhanced/assistant-automations": ">=0.1.24 <0.2.0",
|
|
49
49
|
"@dsh-enhanced/assistant-delivery": ">=0.1.24 <0.2.0",
|
|
50
50
|
"@dsh-enhanced/assistant-goals": ">=0.1.24 <0.2.0",
|
|
@@ -80,14 +80,14 @@
|
|
|
80
80
|
"@types/node": "22.20.0",
|
|
81
81
|
"typescript": "6.0.3",
|
|
82
82
|
"vitest": "4.1.8",
|
|
83
|
-
"@dsh-enhanced/assistant-
|
|
84
|
-
"@dsh-enhanced/assistant-goals": "^0.1.
|
|
85
|
-
"@dsh-enhanced/assistant-policy": "^0.1.
|
|
86
|
-
"@dsh-enhanced/assistant-
|
|
83
|
+
"@dsh-enhanced/assistant-automations": "^0.1.66",
|
|
84
|
+
"@dsh-enhanced/assistant-goals": "^0.1.66",
|
|
85
|
+
"@dsh-enhanced/assistant-policy": "^0.1.66",
|
|
86
|
+
"@dsh-enhanced/assistant-delivery": "^0.1.66"
|
|
87
87
|
},
|
|
88
88
|
"dependencies": {
|
|
89
89
|
"@deepseek-ai/schemastery": "3.18.5",
|
|
90
|
-
"@dsh-enhanced/task-acceptance-contract": "^0.1.
|
|
90
|
+
"@dsh-enhanced/task-acceptance-contract": "^0.1.66"
|
|
91
91
|
},
|
|
92
92
|
"scripts": {
|
|
93
93
|
"build": "tsc -p tsconfig.build.json",
|