instar 1.3.697 → 1.3.699
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/dist/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +81 -7
- package/dist/commands/server.js.map +1 -1
- package/dist/config/ConfigDefaults.d.ts.map +1 -1
- package/dist/config/ConfigDefaults.js +9 -0
- package/dist/config/ConfigDefaults.js.map +1 -1
- package/dist/core/CoherenceJournal.d.ts +10 -1
- package/dist/core/CoherenceJournal.d.ts.map +1 -1
- package/dist/core/CoherenceJournal.js +31 -3
- package/dist/core/CoherenceJournal.js.map +1 -1
- package/dist/core/MachinePoolRegistry.d.ts +13 -0
- package/dist/core/MachinePoolRegistry.d.ts.map +1 -1
- package/dist/core/MachinePoolRegistry.js +22 -3
- package/dist/core/MachinePoolRegistry.js.map +1 -1
- package/dist/core/MessagingToneGate.d.ts +38 -0
- package/dist/core/MessagingToneGate.d.ts.map +1 -1
- package/dist/core/MessagingToneGate.js +30 -3
- package/dist/core/MessagingToneGate.js.map +1 -1
- package/dist/core/OwnershipApplier.d.ts +21 -0
- package/dist/core/OwnershipApplier.d.ts.map +1 -1
- package/dist/core/OwnershipApplier.js +60 -5
- package/dist/core/OwnershipApplier.js.map +1 -1
- package/dist/core/OwnershipReconciler.d.ts +70 -1
- package/dist/core/OwnershipReconciler.d.ts.map +1 -1
- package/dist/core/OwnershipReconciler.js +177 -7
- package/dist/core/OwnershipReconciler.js.map +1 -1
- package/dist/core/TopicPinReplicatedStore.d.ts +68 -0
- package/dist/core/TopicPinReplicatedStore.d.ts.map +1 -0
- package/dist/core/TopicPinReplicatedStore.js +148 -0
- package/dist/core/TopicPinReplicatedStore.js.map +1 -0
- package/dist/core/TopicPlacementPinStore.d.ts +20 -2
- package/dist/core/TopicPlacementPinStore.d.ts.map +1 -1
- package/dist/core/TopicPlacementPinStore.js +5 -3
- package/dist/core/TopicPlacementPinStore.js.map +1 -1
- package/dist/core/ask-when-authorized.d.ts +32 -0
- package/dist/core/ask-when-authorized.d.ts.map +1 -0
- package/dist/core/ask-when-authorized.js +73 -0
- package/dist/core/ask-when-authorized.js.map +1 -0
- package/dist/core/bias-to-action-telemetry.d.ts +35 -0
- package/dist/core/bias-to-action-telemetry.d.ts.map +1 -0
- package/dist/core/bias-to-action-telemetry.js +40 -0
- package/dist/core/bias-to-action-telemetry.js.map +1 -0
- package/dist/core/devGatedFeatures.d.ts.map +1 -1
- package/dist/core/devGatedFeatures.js +12 -0
- package/dist/core/devGatedFeatures.js.map +1 -1
- package/dist/core/ownershipApplierWiring.d.ts +5 -0
- package/dist/core/ownershipApplierWiring.d.ts.map +1 -1
- package/dist/core/ownershipApplierWiring.js +3 -0
- package/dist/core/ownershipApplierWiring.js.map +1 -1
- package/dist/core/standing-authorization.d.ts +72 -0
- package/dist/core/standing-authorization.d.ts.map +1 -0
- package/dist/core/standing-authorization.js +130 -0
- package/dist/core/standing-authorization.js.map +1 -0
- package/dist/core/types.d.ts +30 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/messaging/TelegramAdapter.d.ts +12 -0
- package/dist/messaging/TelegramAdapter.d.ts.map +1 -1
- package/dist/messaging/TelegramAdapter.js +8 -0
- package/dist/messaging/TelegramAdapter.js.map +1 -1
- package/dist/server/AgentServer.d.ts +2 -0
- package/dist/server/AgentServer.d.ts.map +1 -1
- package/dist/server/AgentServer.js +1 -0
- package/dist/server/AgentServer.js.map +1 -1
- package/dist/server/routes.d.ts +2 -0
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +132 -1
- package/dist/server/routes.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +47 -47
- package/upgrades/1.3.698.md +90 -0
- package/upgrades/1.3.699.md +31 -0
- package/upgrades/side-effects/bias-to-action.md +126 -0
- package/upgrades/side-effects/cross-machine-reconciler-convergence.md +56 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ask-when-authorized detector (Standing-Authorization signal for B17_FALSE_BLOCKER).
|
|
3
|
+
*
|
|
4
|
+
* SIGNAL ONLY. A cheap, brittle phrase pre-filter that flags outbound text which
|
|
5
|
+
* SEEKS the operator's permission / approval / a go-ahead so the agent can proceed
|
|
6
|
+
* ("ready for your go-ahead?", "shall I…", "want me to…", "approve and I'll…").
|
|
7
|
+
* It holds NO blocking authority and judges NOTHING about whether the ask is
|
|
8
|
+
* legitimate — the full-context MessagingToneGate LLM is the authority that
|
|
9
|
+
* decides whether B17_FALSE_BLOCKER fires, combining THIS signal with the
|
|
10
|
+
* verified `standingAuthorization` context (asking for permission is a false
|
|
11
|
+
* blocker ONLY when that permission was already granted, and the action is not a
|
|
12
|
+
* FLOOR action). Per Signal-vs-Authority, the regex flags; the gate decides; the
|
|
13
|
+
* fail direction is toward SENDING (a miss just sends an ask — harmless).
|
|
14
|
+
*
|
|
15
|
+
* Distinct from `parked-on-user.ts` (B19): B-PARK flags DEFERRING a finished
|
|
16
|
+
* action onto the user; this flags SEEKING permission to start one.
|
|
17
|
+
*
|
|
18
|
+
* Spec: docs/specs/BIAS-TO-ACTION-SPEC.md (D2).
|
|
19
|
+
*/
|
|
20
|
+
export interface AskWhenAuthorizedSignal {
|
|
21
|
+
/** True when a permission-seeking phrase is present (a SIGNAL, not a verdict). */
|
|
22
|
+
asking: boolean;
|
|
23
|
+
/** The first matched phrase, bounded — for the gate's context. */
|
|
24
|
+
phrase?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Detect a permission-seeking phrase. Returns `{ asking: false }` when none is
|
|
28
|
+
* found. This NEVER decides whether the ask is a false blocker — that is the
|
|
29
|
+
* gate's job, combining this with the `standingAuthorization` context.
|
|
30
|
+
*/
|
|
31
|
+
export declare function detectAskWhenAuthorized(text: string): AskWhenAuthorizedSignal;
|
|
32
|
+
//# sourceMappingURL=ask-when-authorized.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ask-when-authorized.d.ts","sourceRoot":"","sources":["../../src/core/ask-when-authorized.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAwCH,MAAM,WAAW,uBAAuB;IACtC,kFAAkF;IAClF,MAAM,EAAE,OAAO,CAAC;IAChB,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB,CAS7E"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ask-when-authorized detector (Standing-Authorization signal for B17_FALSE_BLOCKER).
|
|
3
|
+
*
|
|
4
|
+
* SIGNAL ONLY. A cheap, brittle phrase pre-filter that flags outbound text which
|
|
5
|
+
* SEEKS the operator's permission / approval / a go-ahead so the agent can proceed
|
|
6
|
+
* ("ready for your go-ahead?", "shall I…", "want me to…", "approve and I'll…").
|
|
7
|
+
* It holds NO blocking authority and judges NOTHING about whether the ask is
|
|
8
|
+
* legitimate — the full-context MessagingToneGate LLM is the authority that
|
|
9
|
+
* decides whether B17_FALSE_BLOCKER fires, combining THIS signal with the
|
|
10
|
+
* verified `standingAuthorization` context (asking for permission is a false
|
|
11
|
+
* blocker ONLY when that permission was already granted, and the action is not a
|
|
12
|
+
* FLOOR action). Per Signal-vs-Authority, the regex flags; the gate decides; the
|
|
13
|
+
* fail direction is toward SENDING (a miss just sends an ask — harmless).
|
|
14
|
+
*
|
|
15
|
+
* Distinct from `parked-on-user.ts` (B19): B-PARK flags DEFERRING a finished
|
|
16
|
+
* action onto the user; this flags SEEKING permission to start one.
|
|
17
|
+
*
|
|
18
|
+
* Spec: docs/specs/BIAS-TO-ACTION-SPEC.md (D2).
|
|
19
|
+
*/
|
|
20
|
+
/** Phrases that seek operator permission/approval to proceed. Case-insensitive. */
|
|
21
|
+
const ASK_PHRASES = [
|
|
22
|
+
'ready for your go-ahead',
|
|
23
|
+
'ready for your go ahead',
|
|
24
|
+
'your go-ahead',
|
|
25
|
+
'give me the go-ahead',
|
|
26
|
+
'give me the green light',
|
|
27
|
+
'waiting on your approval',
|
|
28
|
+
'waiting for your approval',
|
|
29
|
+
'waiting on your go-ahead',
|
|
30
|
+
'pending your approval',
|
|
31
|
+
'awaiting your approval',
|
|
32
|
+
'need your approval',
|
|
33
|
+
'need your sign-off',
|
|
34
|
+
'need your sign off',
|
|
35
|
+
'for your go-ahead',
|
|
36
|
+
'shall i',
|
|
37
|
+
'should i proceed',
|
|
38
|
+
'should i go ahead',
|
|
39
|
+
'want me to',
|
|
40
|
+
'do you want me to',
|
|
41
|
+
'would you like me to',
|
|
42
|
+
'should i build',
|
|
43
|
+
'should i ship',
|
|
44
|
+
'should i merge',
|
|
45
|
+
'should i deploy',
|
|
46
|
+
'approve and i',
|
|
47
|
+
'approve and then i',
|
|
48
|
+
'just say the word',
|
|
49
|
+
'let me know if i should',
|
|
50
|
+
'let me know if you want me to',
|
|
51
|
+
'let me know whether to',
|
|
52
|
+
'if you approve',
|
|
53
|
+
'with your ok',
|
|
54
|
+
'with your okay',
|
|
55
|
+
'with your sign-off',
|
|
56
|
+
];
|
|
57
|
+
/**
|
|
58
|
+
* Detect a permission-seeking phrase. Returns `{ asking: false }` when none is
|
|
59
|
+
* found. This NEVER decides whether the ask is a false blocker — that is the
|
|
60
|
+
* gate's job, combining this with the `standingAuthorization` context.
|
|
61
|
+
*/
|
|
62
|
+
export function detectAskWhenAuthorized(text) {
|
|
63
|
+
if (typeof text !== 'string' || !text)
|
|
64
|
+
return { asking: false };
|
|
65
|
+
const lc = text.toLowerCase();
|
|
66
|
+
for (const phrase of ASK_PHRASES) {
|
|
67
|
+
if (lc.includes(phrase)) {
|
|
68
|
+
return { asking: true, phrase: phrase.slice(0, 60) };
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return { asking: false };
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=ask-when-authorized.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ask-when-authorized.js","sourceRoot":"","sources":["../../src/core/ask-when-authorized.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,mFAAmF;AACnF,MAAM,WAAW,GAAsB;IACrC,yBAAyB;IACzB,yBAAyB;IACzB,eAAe;IACf,sBAAsB;IACtB,yBAAyB;IACzB,0BAA0B;IAC1B,2BAA2B;IAC3B,0BAA0B;IAC1B,uBAAuB;IACvB,wBAAwB;IACxB,oBAAoB;IACpB,oBAAoB;IACpB,oBAAoB;IACpB,mBAAmB;IACnB,SAAS;IACT,kBAAkB;IAClB,mBAAmB;IACnB,YAAY;IACZ,mBAAmB;IACnB,sBAAsB;IACtB,gBAAgB;IAChB,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,eAAe;IACf,oBAAoB;IACpB,mBAAmB;IACnB,yBAAyB;IACzB,+BAA+B;IAC/B,wBAAwB;IACxB,gBAAgB;IAChB,cAAc;IACd,gBAAgB;IAChB,oBAAoB;CACrB,CAAC;AASF;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAChE,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAC9B,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;QACjC,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QACvD,CAAC;IACH,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export interface BiasToActionWouldFireInput {
|
|
2
|
+
topicId: number;
|
|
3
|
+
/** Did the ask-when-authorized detector fire on the outbound text? */
|
|
4
|
+
asking: boolean;
|
|
5
|
+
/** Did the resolver find a verified standing-authorization grant? */
|
|
6
|
+
present: boolean;
|
|
7
|
+
/** The grant source enum (e.g. 'verified-operator-directive'). */
|
|
8
|
+
source?: string;
|
|
9
|
+
/** The matched ASK phrase token (the agent's words, not the operator's). */
|
|
10
|
+
askPhrase?: string | null;
|
|
11
|
+
/** The VERIFIED operator uid — HASHED here, never emitted raw. */
|
|
12
|
+
operatorUid: string | number | null;
|
|
13
|
+
/** Epoch ms of the granting message. */
|
|
14
|
+
grantedAt?: number | null;
|
|
15
|
+
}
|
|
16
|
+
export interface BiasToActionWouldFireRecord {
|
|
17
|
+
t: string;
|
|
18
|
+
kind: 'bias-to-action-would-fire';
|
|
19
|
+
topicId: number;
|
|
20
|
+
source: string;
|
|
21
|
+
askPhrase: string | null;
|
|
22
|
+
/** SHA-256(uid) truncated to 12 hex chars — never the raw uid. */
|
|
23
|
+
operatorUidHash: string;
|
|
24
|
+
grantedAt: number | null;
|
|
25
|
+
}
|
|
26
|
+
/** Short, stable, non-reversible hash of the operator uid for the telemetry log. */
|
|
27
|
+
export declare function hashOperatorUid(uid: string | number | null | undefined): string;
|
|
28
|
+
/**
|
|
29
|
+
* Build the observe-only would-fire record, or `null` when no record should be
|
|
30
|
+
* written. Pure — `now` is injected for testability. A record is produced ONLY
|
|
31
|
+
* when BOTH `asking` and `present` hold (the live-clause case); every other
|
|
32
|
+
* combination returns null (nothing to record).
|
|
33
|
+
*/
|
|
34
|
+
export declare function buildBiasToActionWouldFire(input: BiasToActionWouldFireInput, now?: () => number): BiasToActionWouldFireRecord | null;
|
|
35
|
+
//# sourceMappingURL=bias-to-action-telemetry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bias-to-action-telemetry.d.ts","sourceRoot":"","sources":["../../src/core/bias-to-action-telemetry.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,MAAM,EAAE,OAAO,CAAC;IAChB,qEAAqE;IACrE,OAAO,EAAE,OAAO,CAAC;IACjB,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,kEAAkE;IAClE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACpC,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,2BAA2B;IAC1C,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,2BAA2B,CAAC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,kEAAkE;IAClE,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAE/E;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,0BAA0B,EACjC,GAAG,GAAE,MAAM,MAAiB,GAC3B,2BAA2B,GAAG,IAAI,CAWpC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bias-to-Action observe-only telemetry (BIAS-TO-ACTION-SPEC D8).
|
|
3
|
+
*
|
|
4
|
+
* A SIGNAL-producer (never an authority): when the feature runs observe-only
|
|
5
|
+
* (the default), the outbound seam records what the live B17 sub-clause WOULD
|
|
6
|
+
* have judged — without ever altering a message. This module is the pure,
|
|
7
|
+
* unit-testable core of that record so the route seam stays a thin caller.
|
|
8
|
+
*
|
|
9
|
+
* PRIVACY (the load-bearing contract): the would-fire record carries ONLY a
|
|
10
|
+
* source enum, the matched ASK-phrase token, the grant timestamp, and a SHORT
|
|
11
|
+
* HASH of the verified-operator uid — NEVER the raw operator uid and NEVER the
|
|
12
|
+
* grant's raw quote (the operator's actual words). A record is produced ONLY
|
|
13
|
+
* when the agent is actually ASKING and a grant is PRESENT — the exact case the
|
|
14
|
+
* live clause would have to judge.
|
|
15
|
+
*/
|
|
16
|
+
import { createHash } from 'node:crypto';
|
|
17
|
+
/** Short, stable, non-reversible hash of the operator uid for the telemetry log. */
|
|
18
|
+
export function hashOperatorUid(uid) {
|
|
19
|
+
return createHash('sha256').update(String(uid ?? '')).digest('hex').slice(0, 12);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Build the observe-only would-fire record, or `null` when no record should be
|
|
23
|
+
* written. Pure — `now` is injected for testability. A record is produced ONLY
|
|
24
|
+
* when BOTH `asking` and `present` hold (the live-clause case); every other
|
|
25
|
+
* combination returns null (nothing to record).
|
|
26
|
+
*/
|
|
27
|
+
export function buildBiasToActionWouldFire(input, now = Date.now) {
|
|
28
|
+
if (!input.asking || !input.present)
|
|
29
|
+
return null;
|
|
30
|
+
return {
|
|
31
|
+
t: new Date(now()).toISOString(),
|
|
32
|
+
kind: 'bias-to-action-would-fire',
|
|
33
|
+
topicId: input.topicId,
|
|
34
|
+
source: input.source ?? 'verified-operator-directive',
|
|
35
|
+
askPhrase: input.askPhrase ?? null,
|
|
36
|
+
operatorUidHash: hashOperatorUid(input.operatorUid),
|
|
37
|
+
grantedAt: input.grantedAt ?? null,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=bias-to-action-telemetry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bias-to-action-telemetry.js","sourceRoot":"","sources":["../../src/core/bias-to-action-telemetry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AA6BzC,oFAAoF;AACpF,MAAM,UAAU,eAAe,CAAC,GAAuC;IACrE,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACnF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CACxC,KAAiC,EACjC,MAAoB,IAAI,CAAC,GAAG;IAE5B,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IACjD,OAAO;QACL,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,EAAE;QAChC,IAAI,EAAE,2BAA2B;QACjC,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,6BAA6B;QACrD,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;QAClC,eAAe,EAAE,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC;QACnD,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;KACnC,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"devGatedFeatures.d.ts","sourceRoot":"","sources":["../../src/core/devGatedFeatures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,oEAAoE;AACpE,MAAM,WAAW,eAAe;IAC9B,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,kBAAkB,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"devGatedFeatures.d.ts","sourceRoot":"","sources":["../../src/core/devGatedFeatures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,oEAAoE;AACpE,MAAM,WAAW,eAAe;IAC9B,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,kBAAkB,EAAE,eAAe,EA0a/C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,MAAM,gBAAgB,GACxB,aAAa,GACb,cAAc,GACd,gBAAgB,GAChB,sBAAsB,GACtB,iBAAiB,CAAC;AAEtB,MAAM,WAAW,iBAAiB;IAChC,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,mFAAmF;IACnF,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,oBAAoB,EAAE,iBAAiB,EAgJnD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAO5E"}
|
|
@@ -30,6 +30,12 @@ export const DEV_GATED_FEATURES = [
|
|
|
30
30
|
description: 'The Agent Carries the Loop (C1+C2) — owner-gated beacon suppression + external-block staleness governor + evidence-gated graveyard reconciler; the user is never status-pinged for an agent-owned commitment.',
|
|
31
31
|
justification: 'Ships dryRun:true (the dry-run canary): on a dev agent the owner-gate + governor + reconciler run the full decision loop and AUDIT/log every suppression/dead-letter/close they WOULD make, but PromiseBeacon.emitUserSend STILL sends and the governor/reconciler mutate nothing while dryRun holds (verified at emitUserSend §4.2 + reconcileGraveyard/maybeReconcileGraveyard dryRun branches). No spend, no destructive action, no egress while the canary holds; real suppression/closes need a deliberate dryRun:false. Same dogfooding posture as topicProfiles / credential-repointing.',
|
|
32
32
|
},
|
|
33
|
+
{
|
|
34
|
+
name: 'biasToAction',
|
|
35
|
+
configPath: 'monitoring.biasToAction.enabled',
|
|
36
|
+
description: 'Standing-authorization signal for B17_FALSE_BLOCKER (BIAS-TO-ACTION-SPEC) — feeds the outbound tone gate a VERIFIED-operator, non-forwarded, in-window grant so "re-asking for authority you already hold" is recognized as the false blocker it is.',
|
|
37
|
+
justification: 'SIGNAL-ONLY and OBSERVE-ONLY (observeOnly defaults true): on a dev agent the resolver runs and records a would-fire to logs/bias-to-action.jsonl (uid HASH + ask-phrase token, never a raw quote), but the grant is NOT attached to the gate context so NO verdict can change and no message is ever altered. It can never flip a B1–B7/B15 leak HOLD. No spend, no egress, no destructive action while observe-only holds; live B17 firing needs a deliberate observeOnly:false. Same dogfooding posture as topicProfiles / agentOwnedFollowthrough.',
|
|
38
|
+
},
|
|
33
39
|
{
|
|
34
40
|
name: 'standbyHonestyTiers',
|
|
35
41
|
configPath: 'monitoring.standbyHonestyTiers.enabled',
|
|
@@ -168,6 +174,12 @@ export const DEV_GATED_FEATURES = [
|
|
|
168
174
|
description: 'WS1.3 ownership reconcile — bounded pin/owner convergence (cooperative transfer→claim while the owner lives; force only with owner-death evidence + quorum).',
|
|
169
175
|
justification: 'Coordinates between the operator\'s OWN machines only — no external egress; its in-component dryRun sub-knob (ws13DryRun) stays a plain hardcoded default true, so live-on-dev runs the reconcile loop but LOGS intended CAS actions without performing them (no destructive CAS) exactly as the rollout ladder intends; strict single-machine no-op inside the module. No third-party spend. Operator directive 2026-06-13 topic 13481.',
|
|
170
176
|
},
|
|
177
|
+
{
|
|
178
|
+
name: 'ws13PinReplicate',
|
|
179
|
+
configPath: 'multiMachine.seamlessness.ws13PinReplicate',
|
|
180
|
+
description: 'Cross-machine reconciler convergence Fix #2 — replicate the user PIN (move-intent) as a `topic-pin-record` so the OWNING machine reads it (HLC-ordered, advisory, validated known+online) and starts the cooperative transfer. Sub-flag of WS1.3, independently rollback-able during soak.',
|
|
181
|
+
justification: 'Coordinates between the operator\'s OWN machines only — no external egress; a replicated pin is ADVISORY move-intent that can only trigger the owner\'s OWN cooperative transfer (owner-gated FSM action), NEVER a force-claim/seat-steal (the force-claim decision is gated on death-evidence + quorum from machine liveness, never on the pin — a stale/corrupt pin cannot manufacture death evidence); rides the existing WS2 replicated-record machinery (HLC ordering, tombstone, quarantine); when dark the topic-pin emitter is a strict no-op (the store-enable entry is absent) and the reconciler reads no advisory pins; strict single-machine no-op (no peers). No destructive action, no third-party spend. Cross-machine reconciler convergence fix 2026-06-30.',
|
|
182
|
+
},
|
|
171
183
|
{
|
|
172
184
|
name: 'ws41DurableAck',
|
|
173
185
|
configPath: 'multiMachine.seamlessness.ws41DurableAck',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"devGatedFeatures.js","sourceRoot":"","sources":["../../src/core/devGatedFeatures.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"devGatedFeatures.js","sourceRoot":"","sources":["../../src/core/devGatedFeatures.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,11 @@ export interface OwnershipApplierWiringDeps {
|
|
|
31
31
|
*/
|
|
32
32
|
getSelfMachineId: () => string | null | undefined;
|
|
33
33
|
scanLimit?: number;
|
|
34
|
+
/** Cross-machine convergence (Fix #3): known machine ids, to validate a replicated
|
|
35
|
+
* `transferring` entry's `transferTo` before materializing (else downgrade to active). */
|
|
36
|
+
knownMachines?: () => Set<string>;
|
|
37
|
+
maxEpochJump?: number;
|
|
38
|
+
timestampSkewToleranceMs?: number;
|
|
34
39
|
logger?: (msg: string) => void;
|
|
35
40
|
now?: () => number;
|
|
36
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ownershipApplierWiring.d.ts","sourceRoot":"","sources":["../../src/core/ownershipApplierWiring.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E,MAAM,WAAW,0BAA0B;IACzC,iFAAiF;IACjF,qBAAqB,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACpD,yEAAyE;IACzE,MAAM,EAAE,eAAe,CAAC;IACxB;;;;OAIG;IACH,gBAAgB,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,0BAA0B,GAAG,gBAAgB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"ownershipApplierWiring.d.ts","sourceRoot":"","sources":["../../src/core/ownershipApplierWiring.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E,MAAM,WAAW,0BAA0B;IACzC,iFAAiF;IACjF,qBAAqB,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACpD,yEAAyE;IACzE,MAAM,EAAE,eAAe,CAAC;IACxB;;;;OAIG;IACH,gBAAgB,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;+FAC2F;IAC3F,aAAa,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,0BAA0B,GAAG,gBAAgB,GAAG,IAAI,CAa9F"}
|
|
@@ -13,6 +13,9 @@ export function wireOwnershipApplier(deps) {
|
|
|
13
13
|
store: deps.durableOwnershipStore,
|
|
14
14
|
selfMachineId: deps.getSelfMachineId, // getter — resolved per-tick, never captured stale
|
|
15
15
|
scanLimit: deps.scanLimit,
|
|
16
|
+
knownMachines: deps.knownMachines,
|
|
17
|
+
maxEpochJump: deps.maxEpochJump,
|
|
18
|
+
timestampSkewToleranceMs: deps.timestampSkewToleranceMs,
|
|
16
19
|
logger: deps.logger,
|
|
17
20
|
now: deps.now,
|
|
18
21
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ownershipApplierWiring.js","sourceRoot":"","sources":["../../src/core/ownershipApplierWiring.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"ownershipApplierWiring.js","sourceRoot":"","sources":["../../src/core/ownershipApplierWiring.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAwBzD;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAgC;IACnE,IAAI,CAAC,IAAI,CAAC,qBAAqB;QAAE,OAAO,IAAI,CAAC;IAC7C,OAAO,IAAI,gBAAgB,CAAC;QAC1B,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,IAAI,CAAC,qBAAqB;QACjC,aAAa,EAAE,IAAI,CAAC,gBAAgB,EAAE,mDAAmD;QACzF,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;QACvD,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,GAAG,EAAE,IAAI,CAAC,GAAG;KACd,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Standing-authorization resolver (Standing-Authorization signal for
|
|
3
|
+
* B17_FALSE_BLOCKER).
|
|
4
|
+
*
|
|
5
|
+
* Answers the DETERMINISTIC half of "has the verified operator already granted
|
|
6
|
+
* the authority the agent is now asking for?": is there a VERIFIED-operator,
|
|
7
|
+
* NON-forwarded, IN-WINDOW message that explicitly grants autonomy/preapproval?
|
|
8
|
+
* It returns the structured grant (evidence + when + scope text) for the
|
|
9
|
+
* MessagingToneGate; the gate makes the SEMANTIC call (does this grant cover the
|
|
10
|
+
* SPECIFIC asked action, and is the action a FLOOR action?) per spec D4/D5. The
|
|
11
|
+
* resolver never decides whether B17 fires.
|
|
12
|
+
*
|
|
13
|
+
* SAFETY (spec D6/D10, Know Your Principal):
|
|
14
|
+
* - Counts a row ONLY when attributable to the VERIFIED operator uid
|
|
15
|
+
* (`telegramUserId === operatorUid`) — NEVER `fromUser`, a content name, or
|
|
16
|
+
* the agent's own message. A missing/blank uid is non-attributable.
|
|
17
|
+
* - Counts a row ONLY when PROVABLY non-forwarded (`forwarded === false`). A
|
|
18
|
+
* row with an unknown/absent forwarded flag does NOT count (a forwarded
|
|
19
|
+
* operator message carries third-party content). Fail-safe: an unprovable
|
|
20
|
+
* grant never counts, so it can never suppress an ask.
|
|
21
|
+
*
|
|
22
|
+
* Pure: all reads are injected, so it is fully unit-testable.
|
|
23
|
+
* Spec: docs/specs/BIAS-TO-ACTION-SPEC.md (D3/D4/D6/D9/D10).
|
|
24
|
+
*/
|
|
25
|
+
/** One inbound message row the resolver inspects (from the verified-operator history). */
|
|
26
|
+
export interface OperatorHistoryRow {
|
|
27
|
+
/** Authenticated Telegram user id of the sender. Missing/blank ⇒ non-attributable. */
|
|
28
|
+
telegramUserId?: number | string | null;
|
|
29
|
+
/** Message text. */
|
|
30
|
+
text?: string | null;
|
|
31
|
+
/** Epoch ms the message arrived. */
|
|
32
|
+
ts?: number | null;
|
|
33
|
+
/**
|
|
34
|
+
* Forwarded provenance. ONLY `false` (proven non-forwarded) lets a row count.
|
|
35
|
+
* `true` or `undefined` (unknown / legacy row) ⇒ does NOT count (fail-safe).
|
|
36
|
+
*/
|
|
37
|
+
forwarded?: boolean;
|
|
38
|
+
}
|
|
39
|
+
export interface StandingAuthorizationDeps {
|
|
40
|
+
/** Verified operator uid for the topic, or null when none is bound. */
|
|
41
|
+
getVerifiedOperatorUid(topicId: number | string): string | number | null;
|
|
42
|
+
/** Recent inbound rows for the topic (newest-first or any order), bounded by the caller. */
|
|
43
|
+
getRecentMessages(topicId: number | string): OperatorHistoryRow[];
|
|
44
|
+
/** Now, injected for testability. */
|
|
45
|
+
now(): number;
|
|
46
|
+
}
|
|
47
|
+
export interface StandingAuthorizationConfig {
|
|
48
|
+
/** Max age of a grant to still count (ms). Default 24h (spec D9). */
|
|
49
|
+
windowMs?: number;
|
|
50
|
+
/** Max rows to scan (the caller may already bound; this is a backstop). Default 40. */
|
|
51
|
+
maxRows?: number;
|
|
52
|
+
}
|
|
53
|
+
export interface StandingAuthorizationResult {
|
|
54
|
+
present: boolean;
|
|
55
|
+
/** Where the grant came from (only 'verified-operator-directive' for now). */
|
|
56
|
+
source?: 'verified-operator-directive';
|
|
57
|
+
/** Epoch ms of the granting message. */
|
|
58
|
+
grantedAt?: number;
|
|
59
|
+
/** The grant's surrounding text — the gate judges whether it covers the asked action. */
|
|
60
|
+
grantedScope?: string;
|
|
61
|
+
/** Bounded evidence quote (operator content) — the gate renders it as untrusted DATA. */
|
|
62
|
+
evidenceQuote?: string;
|
|
63
|
+
/** Why present:false — for telemetry/debug (never a security decision). */
|
|
64
|
+
reason?: 'no-operator' | 'no-grant-in-window' | 'no-attributable-nonforwarded-row';
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Resolve standing authorization for a topic. Returns `present:false` unless a
|
|
68
|
+
* VERIFIED-operator, PROVABLY-non-forwarded, IN-WINDOW message contains an
|
|
69
|
+
* explicit grant phrase. Every uncertainty fails toward `present:false`.
|
|
70
|
+
*/
|
|
71
|
+
export declare function resolveStandingAuthorization(topicId: number | string, deps: StandingAuthorizationDeps, cfg?: StandingAuthorizationConfig): StandingAuthorizationResult;
|
|
72
|
+
//# sourceMappingURL=standing-authorization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"standing-authorization.d.ts","sourceRoot":"","sources":["../../src/core/standing-authorization.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,0FAA0F;AAC1F,MAAM,WAAW,kBAAkB;IACjC,sFAAsF;IACtF,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACxC,oBAAoB;IACpB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,oCAAoC;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,uEAAuE;IACvE,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACzE,4FAA4F;IAC5F,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,kBAAkB,EAAE,CAAC;IAClE,qCAAqC;IACrC,GAAG,IAAI,MAAM,CAAC;CACf;AAED,MAAM,WAAW,2BAA2B;IAC1C,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uFAAuF;IACvF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,6BAA6B,CAAC;IACvC,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yFAAyF;IACzF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yFAAyF;IACzF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,aAAa,GAAG,oBAAoB,GAAG,kCAAkC,CAAC;CACpF;AAsDD;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,IAAI,EAAE,yBAAyB,EAC/B,GAAG,GAAE,2BAAgC,GACpC,2BAA2B,CAiD7B"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Standing-authorization resolver (Standing-Authorization signal for
|
|
3
|
+
* B17_FALSE_BLOCKER).
|
|
4
|
+
*
|
|
5
|
+
* Answers the DETERMINISTIC half of "has the verified operator already granted
|
|
6
|
+
* the authority the agent is now asking for?": is there a VERIFIED-operator,
|
|
7
|
+
* NON-forwarded, IN-WINDOW message that explicitly grants autonomy/preapproval?
|
|
8
|
+
* It returns the structured grant (evidence + when + scope text) for the
|
|
9
|
+
* MessagingToneGate; the gate makes the SEMANTIC call (does this grant cover the
|
|
10
|
+
* SPECIFIC asked action, and is the action a FLOOR action?) per spec D4/D5. The
|
|
11
|
+
* resolver never decides whether B17 fires.
|
|
12
|
+
*
|
|
13
|
+
* SAFETY (spec D6/D10, Know Your Principal):
|
|
14
|
+
* - Counts a row ONLY when attributable to the VERIFIED operator uid
|
|
15
|
+
* (`telegramUserId === operatorUid`) — NEVER `fromUser`, a content name, or
|
|
16
|
+
* the agent's own message. A missing/blank uid is non-attributable.
|
|
17
|
+
* - Counts a row ONLY when PROVABLY non-forwarded (`forwarded === false`). A
|
|
18
|
+
* row with an unknown/absent forwarded flag does NOT count (a forwarded
|
|
19
|
+
* operator message carries third-party content). Fail-safe: an unprovable
|
|
20
|
+
* grant never counts, so it can never suppress an ask.
|
|
21
|
+
*
|
|
22
|
+
* Pure: all reads are injected, so it is fully unit-testable.
|
|
23
|
+
* Spec: docs/specs/BIAS-TO-ACTION-SPEC.md (D3/D4/D6/D9/D10).
|
|
24
|
+
*/
|
|
25
|
+
const DEFAULT_WINDOW_MS = 24 * 60 * 60 * 1000;
|
|
26
|
+
const DEFAULT_MAX_ROWS = 40;
|
|
27
|
+
/**
|
|
28
|
+
* Explicit autonomy/preapproval GRANT phrases an operator uses (inbound).
|
|
29
|
+
* Distinct from the agent's ASK phrases. Deterministic SIGNAL only — the gate
|
|
30
|
+
* judges whether the grant covers the specific asked action.
|
|
31
|
+
*/
|
|
32
|
+
const GRANT_PHRASES = [
|
|
33
|
+
'do it yourself',
|
|
34
|
+
'fix it on your own',
|
|
35
|
+
'fix it yourself',
|
|
36
|
+
'on your own',
|
|
37
|
+
'you have my preapproval',
|
|
38
|
+
'you have my pre-approval',
|
|
39
|
+
'my preapproval',
|
|
40
|
+
'i preapprove',
|
|
41
|
+
'i pre-approve',
|
|
42
|
+
'go ahead',
|
|
43
|
+
'go for it',
|
|
44
|
+
'you have my approval',
|
|
45
|
+
'you have my go-ahead',
|
|
46
|
+
'you have the green light',
|
|
47
|
+
'you have my blessing',
|
|
48
|
+
'permission granted',
|
|
49
|
+
'approved',
|
|
50
|
+
'enter an autonomy session',
|
|
51
|
+
'enter an autonomous session',
|
|
52
|
+
'continue until',
|
|
53
|
+
"you don't need to ask",
|
|
54
|
+
'no need to ask',
|
|
55
|
+
"don't wait for me",
|
|
56
|
+
'act on your own',
|
|
57
|
+
];
|
|
58
|
+
/** Is the (already verified-operator, non-forwarded) text an explicit grant? */
|
|
59
|
+
function findGrantPhrase(text) {
|
|
60
|
+
const lc = text.toLowerCase();
|
|
61
|
+
for (const phrase of GRANT_PHRASES) {
|
|
62
|
+
if (lc.includes(phrase))
|
|
63
|
+
return phrase;
|
|
64
|
+
}
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
function attributableToOperator(row, operatorUid) {
|
|
68
|
+
const uid = row.telegramUserId;
|
|
69
|
+
// Missing/blank uid is NON-ATTRIBUTABLE — never a wildcard (spec D6).
|
|
70
|
+
if (uid === undefined || uid === null || uid === '')
|
|
71
|
+
return false;
|
|
72
|
+
// Compare as strings to avoid number/string id mismatches.
|
|
73
|
+
return String(uid) === String(operatorUid);
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Resolve standing authorization for a topic. Returns `present:false` unless a
|
|
77
|
+
* VERIFIED-operator, PROVABLY-non-forwarded, IN-WINDOW message contains an
|
|
78
|
+
* explicit grant phrase. Every uncertainty fails toward `present:false`.
|
|
79
|
+
*/
|
|
80
|
+
export function resolveStandingAuthorization(topicId, deps, cfg = {}) {
|
|
81
|
+
const windowMs = cfg.windowMs ?? DEFAULT_WINDOW_MS;
|
|
82
|
+
const maxRows = cfg.maxRows ?? DEFAULT_MAX_ROWS;
|
|
83
|
+
const operatorUid = deps.getVerifiedOperatorUid(topicId);
|
|
84
|
+
if (operatorUid === null || operatorUid === undefined || operatorUid === '') {
|
|
85
|
+
return { present: false, reason: 'no-operator' };
|
|
86
|
+
}
|
|
87
|
+
const now = deps.now();
|
|
88
|
+
const rows = (deps.getRecentMessages(topicId) ?? []).slice(0, maxRows);
|
|
89
|
+
let sawAttributableRow = false;
|
|
90
|
+
// Prefer the most recent grant: track the best (latest ts) match.
|
|
91
|
+
let best = null;
|
|
92
|
+
for (const row of rows) {
|
|
93
|
+
// (1) attributable to the verified operator
|
|
94
|
+
if (!attributableToOperator(row, operatorUid))
|
|
95
|
+
continue;
|
|
96
|
+
// (2) PROVABLY non-forwarded — only `forwarded === false` counts (D10 fail-safe)
|
|
97
|
+
if (row.forwarded !== false)
|
|
98
|
+
continue;
|
|
99
|
+
sawAttributableRow = true;
|
|
100
|
+
// (3) within the recency window
|
|
101
|
+
const ts = typeof row.ts === 'number' ? row.ts : NaN;
|
|
102
|
+
if (!Number.isFinite(ts) || now - ts > windowMs || ts > now + 60_000)
|
|
103
|
+
continue;
|
|
104
|
+
// (4) contains an explicit grant phrase
|
|
105
|
+
const text = typeof row.text === 'string' ? row.text : '';
|
|
106
|
+
if (!text)
|
|
107
|
+
continue;
|
|
108
|
+
const phrase = findGrantPhrase(text);
|
|
109
|
+
if (!phrase)
|
|
110
|
+
continue;
|
|
111
|
+
if (!best || ts > best.ts)
|
|
112
|
+
best = { ts, phrase, text };
|
|
113
|
+
}
|
|
114
|
+
if (!best) {
|
|
115
|
+
return {
|
|
116
|
+
present: false,
|
|
117
|
+
reason: sawAttributableRow ? 'no-grant-in-window' : 'no-attributable-nonforwarded-row',
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
// Bound the evidence quote (the gate renders it as untrusted DATA + scrubs it).
|
|
121
|
+
const evidenceQuote = best.text.slice(0, 280);
|
|
122
|
+
return {
|
|
123
|
+
present: true,
|
|
124
|
+
source: 'verified-operator-directive',
|
|
125
|
+
grantedAt: best.ts,
|
|
126
|
+
grantedScope: evidenceQuote,
|
|
127
|
+
evidenceQuote,
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=standing-authorization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"standing-authorization.js","sourceRoot":"","sources":["../../src/core/standing-authorization.ts"],"names":[],"mappings":"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"}
|
package/dist/core/types.d.ts
CHANGED
|
@@ -5008,6 +5008,36 @@ export interface MonitoringConfig {
|
|
|
5008
5008
|
* NEW-2). Default 7000. */
|
|
5009
5009
|
feedbackPostDelayMs?: number;
|
|
5010
5010
|
};
|
|
5011
|
+
/**
|
|
5012
|
+
* Bias-to-Action — standing-authorization signal for B17_FALSE_BLOCKER
|
|
5013
|
+
* (spec: docs/specs/BIAS-TO-ACTION-SPEC.md). Feeds the MessagingToneGate a
|
|
5014
|
+
* VERIFIED-operator, non-forwarded, in-window standing-authorization grant so
|
|
5015
|
+
* that "re-asking for authority you already hold" is recognized as the B17
|
|
5016
|
+
* false blocker it is. Dev-gated DARK: `enabled` is OMITTED from ConfigDefaults
|
|
5017
|
+
* (the development-agent gate resolves it) and the routes 503 when off.
|
|
5018
|
+
* SIGNAL-ONLY and OBSERVE-ONLY first (`observeOnly` default true): a would-fire
|
|
5019
|
+
* is recorded to `logs/bias-to-action.jsonl` (source enum + matched-phrase token
|
|
5020
|
+
* + uid HASH, never a raw quote) and the message is NEVER altered until a
|
|
5021
|
+
* separate operator decision graduates it (observeOnly:false). It can never
|
|
5022
|
+
* flip a B1–B7/B15 leak HOLD.
|
|
5023
|
+
*/
|
|
5024
|
+
biasToAction?: {
|
|
5025
|
+
/** Master kill switch (default via dev-agent gate; OMITTED from ConfigDefaults). */
|
|
5026
|
+
enabled?: boolean;
|
|
5027
|
+
/**
|
|
5028
|
+
* Observe-only mode (default true). When true the resolver's grant is NOT
|
|
5029
|
+
* attached to the gate context (no verdict can change) — the would-fire is
|
|
5030
|
+
* only recorded to the telemetry log. Graduate to live B17 firing with false.
|
|
5031
|
+
*/
|
|
5032
|
+
observeOnly?: boolean;
|
|
5033
|
+
/** Look-back window for the verified-operator grant scan (spec D9). */
|
|
5034
|
+
lookback?: {
|
|
5035
|
+
/** Max operator-authored inbound rows scanned. Default 40. */
|
|
5036
|
+
maxRows?: number;
|
|
5037
|
+
/** Max grant age that still counts (ms). Default 24h. */
|
|
5038
|
+
windowMs?: number;
|
|
5039
|
+
};
|
|
5040
|
+
};
|
|
5011
5041
|
/**
|
|
5012
5042
|
* PrincipalGuard — observe-only outbound coherence check for the "Know Your
|
|
5013
5043
|
* Principal" / Caroline identity-bleed standard (security build increment 3).
|