instar 1.3.1219 → 1.3.1220
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 +25 -2
- package/dist/commands/server.js.map +1 -1
- package/dist/core/AspAuthorshipJoin.d.ts +1 -0
- package/dist/core/AspAuthorshipJoin.d.ts.map +1 -1
- package/dist/core/AspAuthorshipJoin.js +9 -1
- package/dist/core/AspAuthorshipJoin.js.map +1 -1
- package/dist/core/AspInboundClassifier.d.ts +22 -0
- package/dist/core/AspInboundClassifier.d.ts.map +1 -1
- package/dist/core/AspInboundClassifier.js +33 -0
- package/dist/core/AspInboundClassifier.js.map +1 -1
- package/dist/core/ForwardedTopicContext.d.ts +3 -0
- package/dist/core/ForwardedTopicContext.d.ts.map +1 -1
- package/dist/core/ForwardedTopicContext.js +2 -1
- package/dist/core/ForwardedTopicContext.js.map +1 -1
- package/dist/core/PostUpdateMigrator.d.ts +8 -0
- package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
- package/dist/core/PostUpdateMigrator.js +24 -0
- package/dist/core/PostUpdateMigrator.js.map +1 -1
- package/dist/core/SessionManager.d.ts +7 -0
- package/dist/core/SessionManager.d.ts.map +1 -1
- package/dist/core/SessionManager.js +2 -2
- package/dist/core/SessionManager.js.map +1 -1
- package/dist/core/StageBActivationGate.d.ts +31 -1
- package/dist/core/StageBActivationGate.d.ts.map +1 -1
- package/dist/core/StageBActivationGate.js +69 -10
- package/dist/core/StageBActivationGate.js.map +1 -1
- package/dist/core/aspClassifierRef.d.ts +14 -0
- package/dist/core/aspClassifierRef.d.ts.map +1 -0
- package/dist/core/aspClassifierRef.js +8 -0
- package/dist/core/aspClassifierRef.js.map +1 -0
- package/dist/data/stageBCertifiedSet.d.ts +271 -0
- package/dist/data/stageBCertifiedSet.d.ts.map +1 -0
- package/dist/data/stageBCertifiedSet.js +366 -0
- package/dist/data/stageBCertifiedSet.js.map +1 -0
- package/dist/data/standards-guard-index.json +1 -1
- package/dist/data/standards-guard-index.meta.json +2 -2
- package/dist/data/standards-registry.meta.json +1 -1
- package/dist/messaging/TelegramAdapter.d.ts +2 -0
- package/dist/messaging/TelegramAdapter.d.ts.map +1 -1
- package/dist/messaging/TelegramAdapter.js.map +1 -1
- package/dist/messaging/shared/signedInbound.d.ts +59 -0
- package/dist/messaging/shared/signedInbound.d.ts.map +1 -0
- package/dist/messaging/shared/signedInbound.js +67 -0
- package/dist/messaging/shared/signedInbound.js.map +1 -0
- package/dist/server/AgentServer.d.ts.map +1 -1
- package/dist/server/AgentServer.js +2 -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 +12 -5
- package/dist/server/routes.js.map +1 -1
- package/dist/types/pipeline.d.ts +1 -1
- package/dist/types/pipeline.d.ts.map +1 -1
- package/dist/types/pipeline.js +13 -10
- package/dist/types/pipeline.js.map +1 -1
- package/package.json +1 -1
- package/scripts/stage-b-certified-fingerprint.mjs +177 -0
- package/scripts/verify-codex-stage-b-release-evidence.mjs +9 -0
- package/src/data/builtin-manifest.json +65 -65
- package/src/data/stageBCertifiedSet.ts +367 -0
- package/src/data/standards-guard-index.json +1 -1
- package/src/data/standards-guard-index.meta.json +2 -2
- package/src/data/standards-registry.meta.json +1 -1
- package/upgrades/1.3.1220.md +87 -0
- package/upgrades/side-effects/asp-signed-inbound-label.md +117 -0
- package/upgrades/side-effects/stage-b-evidence-code-binding.md +93 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/server.js
CHANGED
|
@@ -37,6 +37,8 @@ function localSlackRelayReadiness(stateDir) {
|
|
|
37
37
|
return slackReplyRelayReadiness(stateDir, template);
|
|
38
38
|
}
|
|
39
39
|
import { buildAspInboundClassifier } from '../core/AspInboundClassifier.js';
|
|
40
|
+
import { setAspClassifierRef, getAspClassifierRef } from '../core/aspClassifierRef.js';
|
|
41
|
+
import { resolveInboundTelegramMessageId, resolveSignedByAgent, operatorAutoBindPermitted } from '../messaging/shared/signedInbound.js';
|
|
40
42
|
import { StandDownRegistry } from '../core/StandDownRegistry.js';
|
|
41
43
|
import { BASELINE_PROCESS_PATTERNS } from '../core/baselineProcessPatterns.js';
|
|
42
44
|
import { StandDownAudit } from '../core/StandDownAudit.js';
|
|
@@ -2167,6 +2169,23 @@ getHubClassifierDeps) {
|
|
|
2167
2169
|
const resolvedUser = telegramUserId && userManager
|
|
2168
2170
|
? userManager.resolveFromTelegramUserId(telegramUserId)
|
|
2169
2171
|
: null;
|
|
2172
|
+
// Agent-signed inbound (ASP). A message an agent SIGNED and delivered through
|
|
2173
|
+
// a human's account is labelled as agent traffic for the receiving session and
|
|
2174
|
+
// NEVER binds that human as the topic's operator. The verdict is the
|
|
2175
|
+
// classifier's own — computed once at log time (single-use nonce), read here
|
|
2176
|
+
// by platform message id from in-process state, never from content.
|
|
2177
|
+
const inboundMessageId = resolveInboundTelegramMessageId(msg);
|
|
2178
|
+
const signedByAgent = resolveSignedByAgent(getAspClassifierRef(), topicId, inboundMessageId);
|
|
2179
|
+
// This point OWNS the field: it is always (re)written from the classifier's
|
|
2180
|
+
// verdict, so a value that arrived on the Message from anywhere else — a
|
|
2181
|
+
// wire body, a replay, a queue row — can never survive to the injection.
|
|
2182
|
+
{
|
|
2183
|
+
const { signedByAgent: _ignored, ...rest } = msg.metadata ?? {};
|
|
2184
|
+
msg.metadata = signedByAgent ? { ...rest, signedByAgent } : rest;
|
|
2185
|
+
}
|
|
2186
|
+
if (signedByAgent) {
|
|
2187
|
+
console.log(`[telegram] topic ${topicId} message ${inboundMessageId ?? '?'} is agent-signed by "${signedByAgent}" — labelled for the session; operator auto-bind skipped`);
|
|
2188
|
+
}
|
|
2170
2189
|
// Topic-operator auto-bind (Know Your Principal #898, increment 2e — the
|
|
2171
2190
|
// POLLING-path writer; the lifeline-forward path already binds in routes.ts
|
|
2172
2191
|
// #909). This onTopicMessage seam is the convergence BOTH ingress paths
|
|
@@ -2179,7 +2198,7 @@ getHubClassifierDeps) {
|
|
|
2179
2198
|
// no store / unauthorized / error → no-op and routing continues.
|
|
2180
2199
|
try {
|
|
2181
2200
|
const opStore = getTopicOperatorStore?.() ?? null;
|
|
2182
|
-
if (opStore && telegramUserId && telegram.isAuthorizedSender(telegramUserId)) {
|
|
2201
|
+
if (opStore && operatorAutoBindPermitted(signedByAgent) && telegramUserId && telegram.isAuthorizedSender(telegramUserId)) {
|
|
2183
2202
|
// A lifeline-forwarded Message.id may contain a Date.now fallback used
|
|
2184
2203
|
// only for internal routing. Establishment evidence must use the raw
|
|
2185
2204
|
// Telegram id carried separately; absent stays absent and fails closed.
|
|
@@ -2617,7 +2636,10 @@ getHubClassifierDeps) {
|
|
|
2617
2636
|
// `reinjectStuck` (the no-loss recovery re-injection) and read here so
|
|
2618
2637
|
// the tag can say so out loud. Read from the first-party Message
|
|
2619
2638
|
// metadata, never from `content` — content cannot forge it.
|
|
2620
|
-
{
|
|
2639
|
+
{
|
|
2640
|
+
reDelivered: msg.metadata?.replay === true,
|
|
2641
|
+
signedByAgent: typeof msg.metadata?.signedByAgent === 'string' ? msg.metadata.signedByAgent : undefined,
|
|
2642
|
+
});
|
|
2621
2643
|
if (injected === false) {
|
|
2622
2644
|
console.error(`[telegram→session] Injection FAILED for topic ${topicId} into ${targetSession}; not sending delivery confirmation`);
|
|
2623
2645
|
telegram.sendToTopic(topicId, `❌ Message could not be delivered to the session. Try sending it again in a moment.`).catch(() => { });
|
|
@@ -14393,6 +14415,7 @@ export async function startServer(options) {
|
|
|
14393
14415
|
// entirely when this agent has no canonical identity.
|
|
14394
14416
|
try {
|
|
14395
14417
|
const aspClassifier = buildAspInboundClassifier(config.stateDir, config.projectName);
|
|
14418
|
+
setAspClassifierRef(aspClassifier);
|
|
14396
14419
|
if (aspClassifier) {
|
|
14397
14420
|
const beforeAspCb = telegram.onMessageLogged;
|
|
14398
14421
|
telegram.onMessageLogged = (entry) => {
|