@amaster.ai/employee-runtime-connector 0.1.1-beta.350 → 0.1.1-beta.352
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.
|
@@ -6168,6 +6168,12 @@ var ERROR_PRESENTATIONS = {
|
|
|
6168
6168
|
nextAction: null,
|
|
6169
6169
|
tone: "danger"
|
|
6170
6170
|
},
|
|
6171
|
+
pi_provider_request_timeout: {
|
|
6172
|
+
label: "\u6A21\u578B\u8BF7\u6C42\u8D85\u65F6",
|
|
6173
|
+
summary: "\u6A21\u578B\u670D\u52A1\u672A\u5728\u8BF7\u6C42\u65F6\u9650\u5185\u5B8C\u6210\u54CD\u5E94\uFF0C\u672C\u6B21\u6267\u884C\u5DF2\u505C\u6B62\u3002",
|
|
6174
|
+
nextAction: "\u7CFB\u7EDF\u5C06\u81EA\u52A8\u91CD\u8BD5\uFF1B\u82E5\u4ECD\u672A\u6062\u590D\uFF0C\u8BF7\u7A0D\u540E\u91CD\u65B0\u6267\u884C\u3002",
|
|
6175
|
+
tone: "warning"
|
|
6176
|
+
},
|
|
6171
6177
|
runtime_connector_command_failed: {
|
|
6172
6178
|
label: "\u6267\u884C\u547D\u4EE4\u5931\u8D25",
|
|
6173
6179
|
summary: "\u8FD0\u884C\u5668\u62A5\u544A\u547D\u4EE4\u672A\u80FD\u5B8C\u6210\uFF0C\u5177\u4F53\u539F\u56E0\u8BF7\u67E5\u770B\u9519\u8BEF\u8BE6\u60C5\u3002",
|
|
@@ -9028,6 +9034,28 @@ var discoveryResearchSourceBindingV1Schema = external_exports.object({
|
|
|
9028
9034
|
queryScopeHash: sha256Schema5,
|
|
9029
9035
|
openConnector: openConnectorDiscoverySourceSchema.optional()
|
|
9030
9036
|
}).strict();
|
|
9037
|
+
var openConnectorDiscoveryActionV2Schema = external_exports.object({
|
|
9038
|
+
actionId: external_exports.string().trim().min(1).max(256),
|
|
9039
|
+
guideHash: sha256Schema5,
|
|
9040
|
+
inputSchema: external_exports.record(external_exports.string(), external_exports.unknown()),
|
|
9041
|
+
outputSchema: external_exports.record(external_exports.string(), external_exports.unknown()),
|
|
9042
|
+
followUpActions: external_exports.array(external_exports.object({
|
|
9043
|
+
actionId: external_exports.string().trim().min(1).max(256)
|
|
9044
|
+
}).strict()).max(20)
|
|
9045
|
+
}).strict();
|
|
9046
|
+
var discoveryResearchSourceBindingV2Schema = external_exports.object({
|
|
9047
|
+
version: external_exports.literal(2),
|
|
9048
|
+
connectionId: external_exports.string().uuid(),
|
|
9049
|
+
providerKey: external_exports.string().trim().min(1).max(160),
|
|
9050
|
+
objectType: external_exports.string().trim().min(1).max(160).regex(/^[a-z0-9][a-z0-9._-]*$/),
|
|
9051
|
+
queryScopeHash: sha256Schema5,
|
|
9052
|
+
openConnector: external_exports.object({
|
|
9053
|
+
service: external_exports.string().trim().min(1).max(128),
|
|
9054
|
+
connectionName: external_exports.string().trim().min(1).max(256).nullable(),
|
|
9055
|
+
connectionKeyHash: sha256Schema5,
|
|
9056
|
+
actions: external_exports.array(openConnectorDiscoveryActionV2Schema).min(1).max(20)
|
|
9057
|
+
}).strict()
|
|
9058
|
+
}).strict();
|
|
9031
9059
|
var discoveryResearchBriefV1Schema = external_exports.object({
|
|
9032
9060
|
version: external_exports.literal(1),
|
|
9033
9061
|
objective: external_exports.string().trim().min(1).max(2e3),
|
|
@@ -9064,6 +9092,57 @@ var frozenDiscoveryResearchV1Schema = external_exports.object({
|
|
|
9064
9092
|
evidenceValidityMs: positiveBoundedInteger(31 * 24 * 60 * 60 * 1e3),
|
|
9065
9093
|
startedAt: external_exports.string().datetime({ offset: true })
|
|
9066
9094
|
}).strict();
|
|
9095
|
+
var discoveryResearchTargetV2Schema = external_exports.object({
|
|
9096
|
+
targetKey: external_exports.string().trim().min(1).max(500),
|
|
9097
|
+
kind: external_exports.enum(["gap", "criterion"]),
|
|
9098
|
+
criterionId: external_exports.string().uuid(),
|
|
9099
|
+
criterionIndex: external_exports.number().int().min(0).max(1e3),
|
|
9100
|
+
criterionText: external_exports.string().trim().min(1).max(4e3),
|
|
9101
|
+
gapId: external_exports.string().uuid().nullable(),
|
|
9102
|
+
gapAuthorityRevision: external_exports.number().int().positive().nullable(),
|
|
9103
|
+
selectionRevision: external_exports.number().int().positive(),
|
|
9104
|
+
candidateSetHash: sha256Schema5,
|
|
9105
|
+
resetReason: external_exports.enum(["goal_revision_changed", "candidate_set_changed"]).nullable()
|
|
9106
|
+
}).strict().superRefine((value, ctx) => {
|
|
9107
|
+
if (value.kind === "gap" && (!value.gapId || !value.gapAuthorityRevision)) {
|
|
9108
|
+
ctx.addIssue({ code: external_exports.ZodIssueCode.custom, path: ["gapId"], message: "A gap target requires frozen gap authority" });
|
|
9109
|
+
}
|
|
9110
|
+
if (value.kind === "criterion" && (value.gapId || value.gapAuthorityRevision)) {
|
|
9111
|
+
ctx.addIssue({ code: external_exports.ZodIssueCode.custom, path: ["gapId"], message: "A criterion target cannot carry gap authority" });
|
|
9112
|
+
}
|
|
9113
|
+
});
|
|
9114
|
+
var frozenDiscoveryResearchV2Schema = external_exports.object({
|
|
9115
|
+
version: external_exports.literal(2),
|
|
9116
|
+
mode: external_exports.literal("open_research"),
|
|
9117
|
+
routineRunId: external_exports.string().uuid(),
|
|
9118
|
+
objective: external_exports.string().trim().min(1).max(2e3),
|
|
9119
|
+
researchQuestion: external_exports.string().trim().min(1).max(2e3),
|
|
9120
|
+
goalId: external_exports.string().uuid(),
|
|
9121
|
+
goalRevision: external_exports.string().trim().min(1).max(160),
|
|
9122
|
+
target: discoveryResearchTargetV2Schema,
|
|
9123
|
+
sourceBindingRevision: sha256Schema5,
|
|
9124
|
+
sourceBinding: discoveryResearchSourceBindingV2Schema,
|
|
9125
|
+
coverageMode: external_exports.literal("targeted_goal_criterion"),
|
|
9126
|
+
maxRuntimeMs: positiveBoundedInteger(864e5),
|
|
9127
|
+
maxProviderReads: positiveBoundedInteger(100),
|
|
9128
|
+
maxModelTokens: positiveBoundedInteger(1e7),
|
|
9129
|
+
finalizationReserveTokens: positiveBoundedInteger(1e5),
|
|
9130
|
+
researchTokenLimit: positiveBoundedInteger(1e7),
|
|
9131
|
+
evidenceValidityMs: positiveBoundedInteger(31 * 24 * 60 * 60 * 1e3),
|
|
9132
|
+
startedAt: external_exports.string().datetime({ offset: true })
|
|
9133
|
+
}).strict().superRefine((value, ctx) => {
|
|
9134
|
+
if (value.researchTokenLimit !== value.maxModelTokens - value.finalizationReserveTokens) {
|
|
9135
|
+
ctx.addIssue({
|
|
9136
|
+
code: external_exports.ZodIssueCode.custom,
|
|
9137
|
+
path: ["researchTokenLimit"],
|
|
9138
|
+
message: "researchTokenLimit must equal maxModelTokens minus finalizationReserveTokens"
|
|
9139
|
+
});
|
|
9140
|
+
}
|
|
9141
|
+
});
|
|
9142
|
+
var frozenDiscoveryResearchSchema = external_exports.union([
|
|
9143
|
+
frozenDiscoveryResearchV1Schema,
|
|
9144
|
+
frozenDiscoveryResearchV2Schema
|
|
9145
|
+
]);
|
|
9067
9146
|
var discoveryProviderEvidenceReceiptV1Schema = external_exports.object({
|
|
9068
9147
|
version: external_exports.literal(1),
|
|
9069
9148
|
sourceBindingRevision: sha256Schema5,
|
|
@@ -9112,6 +9191,42 @@ function refineCompleteDiscoveryResearchInputV1(value, ctx) {
|
|
|
9112
9191
|
}
|
|
9113
9192
|
}
|
|
9114
9193
|
var completeDiscoveryResearchInputV1Schema = external_exports.object(completeDiscoveryResearchInputV1Fields).strict().superRefine(refineCompleteDiscoveryResearchInputV1);
|
|
9194
|
+
var completeDiscoveryResearchInputV2Fields = {
|
|
9195
|
+
version: external_exports.literal(2),
|
|
9196
|
+
status: external_exports.enum(["completed", "partial", "timed_out", "failed"]),
|
|
9197
|
+
findingIds: external_exports.array(external_exports.string().uuid()).max(50),
|
|
9198
|
+
examinedEvidenceRefs: external_exports.array(external_exports.object({
|
|
9199
|
+
invocationId: external_exports.string().uuid(),
|
|
9200
|
+
externalObjectId: external_exports.string().uuid().nullable(),
|
|
9201
|
+
sourceRevision: external_exports.string().trim().min(1).max(500).nullable(),
|
|
9202
|
+
contentHash: sha256Schema5.nullable()
|
|
9203
|
+
}).strict()).max(1e4),
|
|
9204
|
+
coverageComplete: external_exports.boolean(),
|
|
9205
|
+
summary: external_exports.string().trim().min(1).max(4e3),
|
|
9206
|
+
inferences: external_exports.array(external_exports.string().trim().min(1).max(1e3)).max(20),
|
|
9207
|
+
unknowns: external_exports.array(external_exports.string().trim().min(1).max(1e3)).max(20),
|
|
9208
|
+
coverageLimitations: external_exports.array(external_exports.string().trim().min(1).max(1e3)).max(20),
|
|
9209
|
+
noActionReason: external_exports.string().trim().min(1).max(2e3).nullable(),
|
|
9210
|
+
errorCode: external_exports.string().trim().min(1).max(160).nullable(),
|
|
9211
|
+
traceId: external_exports.string().trim().min(1).max(200).nullable()
|
|
9212
|
+
};
|
|
9213
|
+
function refineCompleteDiscoveryResearchInputV2(value, ctx) {
|
|
9214
|
+
const evidenceKeys = value.examinedEvidenceRefs.map((reference) => JSON.stringify(reference));
|
|
9215
|
+
if (new Set(evidenceKeys).size !== evidenceKeys.length) {
|
|
9216
|
+
ctx.addIssue({ code: external_exports.ZodIssueCode.custom, path: ["examinedEvidenceRefs"], message: "Examined evidence refs must be unique" });
|
|
9217
|
+
}
|
|
9218
|
+
if (value.status === "completed" && value.findingIds.length === 0 && !value.noActionReason) {
|
|
9219
|
+
ctx.addIssue({ code: external_exports.ZodIssueCode.custom, path: ["noActionReason"], message: "A completed no-action result requires a bounded reason" });
|
|
9220
|
+
}
|
|
9221
|
+
if (value.status === "failed" && !value.errorCode) {
|
|
9222
|
+
ctx.addIssue({ code: external_exports.ZodIssueCode.custom, path: ["errorCode"], message: "A failed research result requires an errorCode" });
|
|
9223
|
+
}
|
|
9224
|
+
}
|
|
9225
|
+
var completeDiscoveryResearchInputV2Schema = external_exports.object(completeDiscoveryResearchInputV2Fields).strict().superRefine(refineCompleteDiscoveryResearchInputV2);
|
|
9226
|
+
var completeDiscoveryResearchInputSchema = external_exports.union([
|
|
9227
|
+
completeDiscoveryResearchInputV1Schema,
|
|
9228
|
+
completeDiscoveryResearchInputV2Schema
|
|
9229
|
+
]);
|
|
9115
9230
|
var customerFeedbackDiscoveryScopeV1Schema = external_exports.object({
|
|
9116
9231
|
version: external_exports.literal(1),
|
|
9117
9232
|
goalId: external_exports.string().uuid(),
|
|
@@ -9162,11 +9277,14 @@ var discoveryRunExecutionOutcomeSchema = external_exports.enum([
|
|
|
9162
9277
|
"source_unavailable",
|
|
9163
9278
|
"blocked_by_policy",
|
|
9164
9279
|
"budget_exhausted",
|
|
9280
|
+
"timed_out",
|
|
9165
9281
|
"failed"
|
|
9166
9282
|
]);
|
|
9167
9283
|
var discoveryRunSignalOutcomeSchema = external_exports.enum([
|
|
9168
9284
|
"signal_found",
|
|
9169
9285
|
"no_signal_in_scope",
|
|
9286
|
+
"no_action_within_scope",
|
|
9287
|
+
"insufficient_evidence",
|
|
9170
9288
|
"signal_unready",
|
|
9171
9289
|
"not_assessable"
|
|
9172
9290
|
]);
|
|
@@ -27646,7 +27764,8 @@ function sanitizeRuntimeWebEvidence(input) {
|
|
|
27646
27764
|
// src/amaster-runtime-daemon/executor-protocol/pi.mjs
|
|
27647
27765
|
var PI_PROVIDER_AUTH_RE = /(?:(?:\b401\b|\b403\b)[^\n]*(?:unauthorized|forbidden|auth(?:entication|orization)?|api[_\s-]?key)|(?:invalid|missing|expired|revoked)\s+(?:provider\s+)?api[_\s-]?key|provider\s+authentication\s+required)/i;
|
|
27648
27766
|
var PI_PROVIDER_QUOTA_EXHAUSTED_RE = /(?:\binsufficient[_\s-]?user[_\s-]?quota\b|河狸币余额不足|\b402\b[^\n]*(?:余额不足|insufficient[_\s-]?balance|payment\s+required))/i;
|
|
27649
|
-
var
|
|
27767
|
+
var PI_PROVIDER_REQUEST_TIMEOUT_RE = /^Request timed out\.?$/i;
|
|
27768
|
+
var PI_PROVIDER_TRANSIENT_RE = /(?:Request timed out|Stream ended without finish_reason|\b(?:429|5\d{2})\b|rate[-\s]?limit(?:ed)?|too\s+many\s+requests|billing\s+admission\s+failed|service\s+unavailable|upstream[^\n]*(?:unavailable|failed|timeout)|connect(?:ion)?[^\n]*refused|temporar(?:y|ily)[^\n]*(?:unavailable|failed)|try\s+again\s+later)/i;
|
|
27650
27769
|
var PI_PROVIDER_PROTOCOL_RE = /provider[^\n]*finish_reason[^\n]*unexpected_state/i;
|
|
27651
27770
|
var PI_PROVIDER_RETRY_AFTER_SECONDS_RE = /retry[-\s]?after\s*[:=]?\s*(\d{1,6})\s*(?:seconds?|secs?|s)\b/i;
|
|
27652
27771
|
var PI_TERMINAL_CLEANUP_PERMISSION_RE = /(?:\bkill\b[^\n]*\bEPERM\b|\bEPERM\b[^\n]*\bkill\b)/i;
|
|
@@ -27765,6 +27884,12 @@ function extractPiProviderRetryNotBefore(errorMessage, now) {
|
|
|
27765
27884
|
function classifyPiProviderError(input, now = /* @__PURE__ */ new Date()) {
|
|
27766
27885
|
const errorMessage = readString(asRecord(input).errorMessage);
|
|
27767
27886
|
if (!errorMessage) return null;
|
|
27887
|
+
if (PI_PROVIDER_REQUEST_TIMEOUT_RE.test(errorMessage)) {
|
|
27888
|
+
return {
|
|
27889
|
+
errorCode: "pi_provider_request_timeout",
|
|
27890
|
+
errorFamily: "transient_upstream"
|
|
27891
|
+
};
|
|
27892
|
+
}
|
|
27768
27893
|
if (PI_PROVIDER_PROTOCOL_RE.test(errorMessage)) {
|
|
27769
27894
|
return {
|
|
27770
27895
|
errorCode: "pi_provider_protocol_failure",
|
|
@@ -33818,7 +33943,7 @@ function assertRequiredTaskAttachmentMaterialized(input, materialized) {
|
|
|
33818
33943
|
}
|
|
33819
33944
|
|
|
33820
33945
|
// src/amaster-runtime-daemon.mjs
|
|
33821
|
-
var CONNECTOR_VERSION = "0.1.1-beta.
|
|
33946
|
+
var CONNECTOR_VERSION = "0.1.1-beta.352";
|
|
33822
33947
|
var CONNECTOR_CONTRACT_VERSION = "2026-06-04.v1";
|
|
33823
33948
|
var daemonRequire = createRequire(import.meta.url);
|
|
33824
33949
|
var MAX_CHECKPOINT_BYTES = 20 * 1024 * 1024;
|
|
@@ -39317,7 +39442,7 @@ async function executeRunCommand(config, command) {
|
|
|
39317
39442
|
});
|
|
39318
39443
|
} catch (err) {
|
|
39319
39444
|
const rolloutError = `${executor.kind}_managed_mcp_session_rollout_failed: ${err instanceof Error ? err.message : String(err)}`;
|
|
39320
|
-
if (approvalRequiredSession
|
|
39445
|
+
if (approvalRequiredSession) {
|
|
39321
39446
|
nativeSessionRolloutError = rolloutError;
|
|
39322
39447
|
} else {
|
|
39323
39448
|
nativeSessionRollout = {
|
package/dist/amaster-runtime.mjs
CHANGED
|
@@ -7,7 +7,7 @@ import { homedir, hostname } from "node:os";
|
|
|
7
7
|
import { fileURLToPath } from "node:url";
|
|
8
8
|
import { BUILD_SUPPORTED_CAPABILITIES } from "./amaster-runtime-daemon/capability-registry.mjs";
|
|
9
9
|
|
|
10
|
-
const CONNECTOR_VERSION = "0.1.1-beta.
|
|
10
|
+
const CONNECTOR_VERSION = "0.1.1-beta.352";
|
|
11
11
|
|
|
12
12
|
const CONFIG_KEY_MAP = new Map([
|
|
13
13
|
["server_url", "AMASTER_EMPLOYEE_SERVER_URL"],
|