@agents-ensemble/core 0.10.1 → 0.11.0
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/conductor/conductor-session.d.ts.map +1 -1
- package/dist/conductor/conductor-session.js +35 -4
- package/dist/conductor/conductor-session.js.map +1 -1
- package/dist/conductor/session/events/session-log-event.d.ts +2 -0
- package/dist/conductor/session/events/session-log-event.d.ts.map +1 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +2 -1
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/parse-config.d.ts.map +1 -1
- package/dist/config/parse-config.js +6 -1
- package/dist/config/parse-config.js.map +1 -1
- package/dist/config/types.d.ts +2 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/dispatch/prompt-worker-tool.js +2 -2
- package/dist/dispatch/prompt-worker-tool.js.map +1 -1
- package/dist/dispatch/worker-status-tool.js +2 -2
- package/dist/dispatch/worker-status-tool.js.map +1 -1
- package/dist/escalation/answer-open-question-tool.d.ts.map +1 -1
- package/dist/escalation/answer-open-question-tool.js +24 -5
- package/dist/escalation/answer-open-question-tool.js.map +1 -1
- package/dist/escalation/ask-human-tool.d.ts.map +1 -1
- package/dist/escalation/ask-human-tool.js +41 -4
- package/dist/escalation/ask-human-tool.js.map +1 -1
- package/dist/escalation/format-registry-update.d.ts.map +1 -1
- package/dist/escalation/format-registry-update.js +9 -2
- package/dist/escalation/format-registry-update.js.map +1 -1
- package/dist/escalation/human-inquiry.d.ts +9 -1
- package/dist/escalation/human-inquiry.d.ts.map +1 -1
- package/dist/escalation/index.d.ts +3 -2
- package/dist/escalation/index.d.ts.map +1 -1
- package/dist/escalation/index.js +2 -1
- package/dist/escalation/index.js.map +1 -1
- package/dist/escalation/open-question-list-tools.js +4 -0
- package/dist/escalation/open-question-list-tools.js.map +1 -1
- package/dist/escalation/open-question-to-escalation.d.ts.map +1 -1
- package/dist/escalation/open-question-to-escalation.js +3 -0
- package/dist/escalation/open-question-to-escalation.js.map +1 -1
- package/dist/escalation/open-question.d.ts +9 -1
- package/dist/escalation/open-question.d.ts.map +1 -1
- package/dist/escalation/open-question.js +18 -1
- package/dist/escalation/open-question.js.map +1 -1
- package/dist/escalation/record-open-question-answer.d.ts +2 -0
- package/dist/escalation/record-open-question-answer.d.ts.map +1 -1
- package/dist/escalation/record-open-question-answer.js +13 -5
- package/dist/escalation/record-open-question-answer.js.map +1 -1
- package/dist/escalation/resolve-human-inquiry.d.ts +3 -1
- package/dist/escalation/resolve-human-inquiry.d.ts.map +1 -1
- package/dist/escalation/resolve-human-inquiry.js +28 -9
- package/dist/escalation/resolve-human-inquiry.js.map +1 -1
- package/dist/escalation/yes-no-assent.d.ts +13 -0
- package/dist/escalation/yes-no-assent.d.ts.map +1 -0
- package/dist/escalation/yes-no-assent.js +136 -0
- package/dist/escalation/yes-no-assent.js.map +1 -0
- package/dist/github/format-issue-context-prompt.d.ts +1 -1
- package/dist/github/format-issue-context-prompt.js +2 -2
- package/dist/github/format-issue-context-prompt.js.map +1 -1
- package/dist/profile/profile-paths.d.ts +1 -1
- package/dist/profile/profile-paths.d.ts.map +1 -1
- package/dist/profile/profile-paths.js +1 -1
- package/dist/profile/profile-paths.js.map +1 -1
- package/dist/profiles/implementer-and-reviewer/conductor.prompt.yaml +2 -2
- package/dist/profiles/implementer-and-reviewer/implementer.prompt.yaml +1 -1
- package/dist/profiles/implementer-and-reviewer/profile.yaml +1 -1
- package/dist/profiles/implementer-and-reviewer/team.md +22 -21
- package/dist/profiles/implementer-and-reviewer-v2/team-common.md +11 -10
- package/dist/profiles/implementer-and-reviewer-v2/team-conductor.md +4 -5
- package/dist/profiles/implementer-and-reviewer-v2/team-implementer.md +3 -3
- package/dist/profiles/implementer-and-reviewer-v2/team-reviewer.md +1 -1
- package/dist/prompt/compile-system-prompt.d.ts +3 -1
- package/dist/prompt/compile-system-prompt.d.ts.map +1 -1
- package/dist/prompt/compile-system-prompt.js +5 -3
- package/dist/prompt/compile-system-prompt.js.map +1 -1
- package/dist/prompt/index.d.ts +2 -0
- package/dist/prompt/index.d.ts.map +1 -1
- package/dist/prompt/index.js +1 -0
- package/dist/prompt/index.js.map +1 -1
- package/dist/prompt/load-user-instructions.d.ts +12 -0
- package/dist/prompt/load-user-instructions.d.ts.map +1 -0
- package/dist/prompt/load-user-instructions.js +39 -0
- package/dist/prompt/load-user-instructions.js.map +1 -0
- package/dist/prompt/modules/ensemble/base-module.d.ts.map +1 -1
- package/dist/prompt/modules/ensemble/base-module.js +6 -4
- package/dist/prompt/modules/ensemble/base-module.js.map +1 -1
- package/dist/prompt/modules/ensemble/conductor-base-module.d.ts.map +1 -1
- package/dist/prompt/modules/ensemble/conductor-base-module.js +42 -49
- package/dist/prompt/modules/ensemble/conductor-base-module.js.map +1 -1
- package/dist/prompt/modules/ensemble/worker-base-module.js +1 -1
- package/dist/prompt/modules/ensemble/worker-base-module.js.map +1 -1
- package/dist/prompt/modules/shared/profile-prompt-module.js +1 -1
- package/dist/prompt/modules/shared/profile-prompt-module.js.map +1 -1
- package/dist/runtime/map-worker-lifecycle.d.ts.map +1 -1
- package/dist/runtime/map-worker-lifecycle.js +2 -0
- package/dist/runtime/map-worker-lifecycle.js.map +1 -1
- package/dist/runtime/worker-display-state.d.ts +1 -1
- package/dist/runtime/worker-display-state.d.ts.map +1 -1
- package/dist/runtime/worker-lifecycle-state.d.ts +1 -1
- package/dist/runtime/worker-lifecycle-state.d.ts.map +1 -1
- package/dist/runtime/worker-runtime.d.ts +7 -3
- package/dist/runtime/worker-runtime.d.ts.map +1 -1
- package/dist/runtime/worker-runtime.js +182 -32
- package/dist/runtime/worker-runtime.js.map +1 -1
- package/dist/runtime/worker-session.d.ts +4 -2
- package/dist/runtime/worker-session.d.ts.map +1 -1
- package/dist/runtime/worker-session.js +4 -2
- package/dist/runtime/worker-session.js.map +1 -1
- package/dist/session/session-sidecar.d.ts +2 -0
- package/dist/session/session-sidecar.d.ts.map +1 -1
- package/dist/session/session-sidecar.js +7 -0
- package/dist/session/session-sidecar.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"answer-open-question-tool.js","sourceRoot":"","sources":["../../src/escalation/answer-open-question-tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,6BAA6B,CAAC;AAE/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAO5E,MAAM,UAAU,4BAA4B,CAC1C,OAAsC;IAEtC,OAAO;QACL,oBAAoB,EAAE;YACpB,IAAI,EAAE,sBAAsB;YAC5B,WAAW,EAAE;gBACX,8DAA8D;gBAC9D,mIAAmI;gBACnI,wFAAwF;gBACxF,qFAAqF;gBACrF,mFAAmF;aACpF,CAAC,IAAI,CAAC,GAAG,CAAC;YACX,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,6CAA6C;qBAC3D;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,uBAAuB;qBACrC;oBACD,
|
|
1
|
+
{"version":3,"file":"answer-open-question-tool.js","sourceRoot":"","sources":["../../src/escalation/answer-open-question-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask-human-tool.d.ts","sourceRoot":"","sources":["../../src/escalation/ask-human-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"ask-human-tool.d.ts","sourceRoot":"","sources":["../../src/escalation/ask-human-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAMvE,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE7E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;CAC/C;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,mBAAmB,GAC3B,gBAAgB,CAmGlB"}
|
|
@@ -8,7 +8,7 @@ export function createAskHumanTool(options) {
|
|
|
8
8
|
'The operator answers in chat on a later turn; you can continue without waiting.',
|
|
9
9
|
'DO NOT use if the operator already answered in chat — use answer_open_question to record their answer instead.',
|
|
10
10
|
'DO NOT use answer_open_question and ask_human for the same decision in one turn.',
|
|
11
|
-
'Use yes_no for binary choices or text for open guidance.',
|
|
11
|
+
'Use yes_no for binary choices, choice for a fixed list of options, or text for open guidance.',
|
|
12
12
|
].join(' '),
|
|
13
13
|
inputSchema: {
|
|
14
14
|
type: 'object',
|
|
@@ -19,8 +19,20 @@ export function createAskHumanTool(options) {
|
|
|
19
19
|
},
|
|
20
20
|
responseType: {
|
|
21
21
|
type: 'string',
|
|
22
|
-
enum: ['yes_no', 'text'],
|
|
23
|
-
description: 'yes_no for
|
|
22
|
+
enum: ['yes_no', 'text', 'choice'],
|
|
23
|
+
description: 'yes_no for binary assent, choice for a fixed option list, text for free-form guidance',
|
|
24
|
+
},
|
|
25
|
+
choices: {
|
|
26
|
+
type: 'array',
|
|
27
|
+
items: {
|
|
28
|
+
type: 'object',
|
|
29
|
+
properties: {
|
|
30
|
+
id: { type: 'string' },
|
|
31
|
+
label: { type: 'string' },
|
|
32
|
+
},
|
|
33
|
+
required: ['id', 'label'],
|
|
34
|
+
},
|
|
35
|
+
description: 'Required for choice: options the operator can select by id, label, or one-based number',
|
|
24
36
|
},
|
|
25
37
|
context: {
|
|
26
38
|
type: 'string',
|
|
@@ -39,6 +51,7 @@ export function createAskHumanTool(options) {
|
|
|
39
51
|
throw new Error('ask_human requires a non-empty question');
|
|
40
52
|
}
|
|
41
53
|
const responseType = parseResponseType(args.responseType);
|
|
54
|
+
const choices = responseType === 'choice' ? parseChoices(args.choices) : undefined;
|
|
42
55
|
const context = args.context ? String(args.context) : undefined;
|
|
43
56
|
const relatedPermissionId = args.relatedPermissionId
|
|
44
57
|
? String(args.relatedPermissionId)
|
|
@@ -46,6 +59,7 @@ export function createAskHumanTool(options) {
|
|
|
46
59
|
const entry = options.registry.enqueue({
|
|
47
60
|
question,
|
|
48
61
|
responseType,
|
|
62
|
+
choices,
|
|
49
63
|
context,
|
|
50
64
|
relatedPermissionId,
|
|
51
65
|
source: 'conductor',
|
|
@@ -75,6 +89,29 @@ export function createAskHumanTool(options) {
|
|
|
75
89
|
}
|
|
76
90
|
function parseResponseType(value) {
|
|
77
91
|
const normalized = String(value ?? 'text').trim().toLowerCase();
|
|
78
|
-
|
|
92
|
+
if (normalized === 'yes_no' || normalized === 'choice')
|
|
93
|
+
return normalized;
|
|
94
|
+
return 'text';
|
|
95
|
+
}
|
|
96
|
+
function parseChoices(value) {
|
|
97
|
+
if (!Array.isArray(value) || value.length === 0) {
|
|
98
|
+
throw new Error('ask_human requires non-empty choices for responseType choice');
|
|
99
|
+
}
|
|
100
|
+
const choices = value.map((choice) => {
|
|
101
|
+
if (!choice || typeof choice !== 'object') {
|
|
102
|
+
throw new Error('ask_human choices must have string id and label fields');
|
|
103
|
+
}
|
|
104
|
+
const candidate = choice;
|
|
105
|
+
const id = String(candidate.id ?? '').trim();
|
|
106
|
+
const label = String(candidate.label ?? '').trim();
|
|
107
|
+
if (!id || !label) {
|
|
108
|
+
throw new Error('ask_human choices must have non-empty id and label fields');
|
|
109
|
+
}
|
|
110
|
+
return { id, label };
|
|
111
|
+
});
|
|
112
|
+
if (new Set(choices.map(({ id }) => id)).size !== choices.length) {
|
|
113
|
+
throw new Error('ask_human choice ids must be unique');
|
|
114
|
+
}
|
|
115
|
+
return choices;
|
|
79
116
|
}
|
|
80
117
|
//# sourceMappingURL=ask-human-tool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask-human-tool.js","sourceRoot":"","sources":["../../src/escalation/ask-human-tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"ask-human-tool.js","sourceRoot":"","sources":["../../src/escalation/ask-human-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format-registry-update.d.ts","sourceRoot":"","sources":["../../src/escalation/format-registry-update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"format-registry-update.d.ts","sourceRoot":"","sources":["../../src/escalation/format-registry-update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAS/E;AAED,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAU/E;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,SAAS,CAGtF"}
|
|
@@ -1,13 +1,20 @@
|
|
|
1
1
|
export function formatOpenQuestionEnqueuedReport(question) {
|
|
2
|
+
const choices = question.choices?.length
|
|
3
|
+
? `\nchoices: ${question.choices.map(({ id, label }) => `${id}: ${label}`).join(', ')}`
|
|
4
|
+
: '';
|
|
2
5
|
const context = question.context ? `\ncontext: ${question.context}` : '';
|
|
3
6
|
const permission = question.relatedPermissionId
|
|
4
7
|
? `\npermission: ${question.relatedPermissionId}`
|
|
5
8
|
: '';
|
|
6
|
-
return `【open question 登録】${question.id} [${question.responseType}]: ${question.question}${context}${permission}`;
|
|
9
|
+
return `【open question 登録】${question.id} [${question.responseType}]: ${question.question}${choices}${context}${permission}`;
|
|
7
10
|
}
|
|
8
11
|
export function formatOpenQuestionAnsweredReport(question) {
|
|
12
|
+
const assent = question.assent === undefined ? '' : `\nassent: ${question.assent}`;
|
|
13
|
+
const selectedChoice = question.selectedChoice === undefined
|
|
14
|
+
? ''
|
|
15
|
+
: `\nselectedChoice: ${question.selectedChoice}`;
|
|
9
16
|
const approved = question.approved === undefined ? '' : `\napproved: ${question.approved}`;
|
|
10
|
-
return `【open question 回答】${question.id}: ${question.question} → ${question.answer} (by ${question.answeredBy})${approved}`;
|
|
17
|
+
return `【open question 回答】${question.id}: ${question.question} → ${question.answer} (by ${question.answeredBy})${assent}${selectedChoice}${approved}`;
|
|
11
18
|
}
|
|
12
19
|
export function joinOperatorInput(parts) {
|
|
13
20
|
const lines = parts.map((part) => part?.trim()).filter((part) => part);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format-registry-update.js","sourceRoot":"","sources":["../../src/escalation/format-registry-update.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gCAAgC,CAAC,QAAsB;IACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,MAAM,UAAU,GAAG,QAAQ,CAAC,mBAAmB;QAC7C,CAAC,CAAC,iBAAiB,QAAQ,CAAC,mBAAmB,EAAE;QACjD,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,qBAAqB,QAAQ,CAAC,EAAE,KAAK,QAAQ,CAAC,YAAY,MAAM,QAAQ,CAAC,QAAQ,GAAG,OAAO,GAAG,UAAU,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"format-registry-update.js","sourceRoot":"","sources":["../../src/escalation/format-registry-update.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gCAAgC,CAAC,QAAsB;IACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,MAAM;QACtC,CAAC,CAAC,cAAc,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACvF,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,MAAM,UAAU,GAAG,QAAQ,CAAC,mBAAmB;QAC7C,CAAC,CAAC,iBAAiB,QAAQ,CAAC,mBAAmB,EAAE;QACjD,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,qBAAqB,QAAQ,CAAC,EAAE,KAAK,QAAQ,CAAC,YAAY,MAAM,QAAQ,CAAC,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,EAAE,CAAC;AAC9H,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,QAAsB;IACrE,MAAM,MAAM,GACV,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,QAAQ,CAAC,MAAM,EAAE,CAAC;IACtE,MAAM,cAAc,GAClB,QAAQ,CAAC,cAAc,KAAK,SAAS;QACnC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,qBAAqB,QAAQ,CAAC,cAAc,EAAE,CAAC;IACrD,MAAM,QAAQ,GACZ,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC5E,OAAO,qBAAqB,QAAQ,CAAC,EAAE,KAAK,QAAQ,CAAC,QAAQ,MAAM,QAAQ,CAAC,MAAM,QAAQ,QAAQ,CAAC,UAAU,IAAI,MAAM,GAAG,cAAc,GAAG,QAAQ,EAAE,CAAC;AACxJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAgC;IAChE,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IACvE,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC"}
|
|
@@ -1,23 +1,31 @@
|
|
|
1
|
+
import type { ChoiceOption, YesNoAssent } from './yes-no-assent.js';
|
|
1
2
|
export type HumanInquiryKind = 'permission' | 'escalation';
|
|
2
|
-
export type HumanInquiryResponseType = 'yes_no' | 'text';
|
|
3
|
+
export type HumanInquiryResponseType = 'yes_no' | 'text' | 'choice';
|
|
4
|
+
export type { ChoiceOption, YesNoAssent } from './yes-no-assent.js';
|
|
3
5
|
export interface HumanInquiryRequest {
|
|
4
6
|
kind: HumanInquiryKind;
|
|
5
7
|
question: string;
|
|
6
8
|
responseType: HumanInquiryResponseType;
|
|
9
|
+
choices?: ChoiceOption[];
|
|
7
10
|
context?: string;
|
|
8
11
|
sessionId?: string;
|
|
9
12
|
toolName?: string;
|
|
10
13
|
}
|
|
11
14
|
export interface HumanInquiryResponse {
|
|
12
15
|
answer: string;
|
|
16
|
+
assent?: YesNoAssent;
|
|
17
|
+
selectedChoice?: string;
|
|
13
18
|
approved?: boolean;
|
|
14
19
|
}
|
|
15
20
|
export type HumanInquiryHandler = (request: HumanInquiryRequest) => HumanInquiryResponse | Promise<HumanInquiryResponse>;
|
|
16
21
|
export interface EscalationRecord {
|
|
17
22
|
question: string;
|
|
18
23
|
responseType: HumanInquiryResponseType;
|
|
24
|
+
choices?: ChoiceOption[];
|
|
19
25
|
context?: string;
|
|
20
26
|
answer: string;
|
|
27
|
+
assent?: YesNoAssent;
|
|
28
|
+
selectedChoice?: string;
|
|
21
29
|
approved?: boolean;
|
|
22
30
|
}
|
|
23
31
|
//# sourceMappingURL=human-inquiry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"human-inquiry.d.ts","sourceRoot":"","sources":["../../src/escalation/human-inquiry.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG,YAAY,CAAC;AAE3D,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"human-inquiry.d.ts","sourceRoot":"","sources":["../../src/escalation/human-inquiry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEpE,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG,YAAY,CAAC;AAE3D,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEpE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEpE,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,gBAAgB,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,wBAAwB,CAAC;IACvC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,mBAAmB,GAAG,CAChC,OAAO,EAAE,mBAAmB,KACzB,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAE1D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,wBAAwB,CAAC;IACvC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { EscalationUnavailableError, } from './escalation-unavailable-error.js';
|
|
2
|
-
export type { HumanInquiryKind, HumanInquiryResponseType, HumanInquiryRequest, HumanInquiryResponse, HumanInquiryHandler, EscalationRecord, } from './human-inquiry.js';
|
|
3
|
-
export {
|
|
2
|
+
export type { HumanInquiryKind, HumanInquiryResponseType, ChoiceOption, YesNoAssent, HumanInquiryRequest, HumanInquiryResponse, HumanInquiryHandler, EscalationRecord, } from './human-inquiry.js';
|
|
3
|
+
export { parseYesNoAssent, parseChoiceSelection } from './yes-no-assent.js';
|
|
4
|
+
export { ESCALATION_RESPONSE_ENV, readEscalationEnvFallback, parseEnvInquiryResponse, parseHumanInquiryAnswer, resolveHumanInquiryFromEnv, escalationUnavailableMessage, createEnvFallbackHumanInquiryHandler, } from './resolve-human-inquiry.js';
|
|
4
5
|
export { permissionRequestToHumanInquiry } from './permission-inquiry.js';
|
|
5
6
|
export { createPermissionAskHandler } from './create-permission-ask-handler.js';
|
|
6
7
|
export { createAskHumanTool } from './ask-human-tool.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/escalation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,GAC3B,MAAM,mCAAmC,CAAC;AAE3C,YAAY,EACV,gBAAgB,EAChB,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,0BAA0B,EAC1B,4BAA4B,EAC5B,oCAAoC,GACrC,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAE1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAEhF,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,YAAY,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAEpF,OAAO,EACL,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gCAAgC,EAChC,gCAAgC,EAChC,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,YAAY,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,YAAY,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,YAAY,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AACtF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAElF,OAAO,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAC3G,YAAY,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/escalation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,GAC3B,MAAM,mCAAmC,CAAC;AAE3C,YAAY,EACV,gBAAgB,EAChB,wBAAwB,EACxB,YAAY,EACZ,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE5E,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,0BAA0B,EAC1B,4BAA4B,EAC5B,oCAAoC,GACrC,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAE1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAEhF,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,YAAY,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAEpF,OAAO,EACL,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gCAAgC,EAChC,gCAAgC,EAChC,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,YAAY,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,YAAY,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,YAAY,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AACtF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAElF,OAAO,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAC3G,YAAY,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC"}
|
package/dist/escalation/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { EscalationUnavailableError, } from './escalation-unavailable-error.js';
|
|
2
|
-
export {
|
|
2
|
+
export { parseYesNoAssent, parseChoiceSelection } from './yes-no-assent.js';
|
|
3
|
+
export { ESCALATION_RESPONSE_ENV, readEscalationEnvFallback, parseEnvInquiryResponse, parseHumanInquiryAnswer, resolveHumanInquiryFromEnv, escalationUnavailableMessage, createEnvFallbackHumanInquiryHandler, } from './resolve-human-inquiry.js';
|
|
3
4
|
export { permissionRequestToHumanInquiry } from './permission-inquiry.js';
|
|
4
5
|
export { createPermissionAskHandler } from './create-permission-ask-handler.js';
|
|
5
6
|
export { createAskHumanTool } from './ask-human-tool.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/escalation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,GAC3B,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/escalation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,GAC3B,MAAM,mCAAmC,CAAC;AAa3C,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE5E,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,0BAA0B,EAC1B,4BAA4B,EAC5B,oCAAoC,GACrC,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAE1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAEhF,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAG9E,OAAO,EACL,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAW5B,OAAO,EACL,gCAAgC,EAChC,gCAAgC,EAChC,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAElF,OAAO,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC"}
|
|
@@ -92,7 +92,11 @@ function summarizeListItem(entry) {
|
|
|
92
92
|
status: entry.status,
|
|
93
93
|
question: entry.question,
|
|
94
94
|
responseType: entry.responseType,
|
|
95
|
+
...(entry.choices ? { choices: entry.choices } : {}),
|
|
95
96
|
...(entry.answer ? { answer: entry.answer } : {}),
|
|
97
|
+
...(entry.assent ? { assent: entry.assent } : {}),
|
|
98
|
+
...(entry.selectedChoice ? { selectedChoice: entry.selectedChoice } : {}),
|
|
99
|
+
...(entry.approved === undefined ? {} : { approved: entry.approved }),
|
|
96
100
|
...(entry.answeredBy ? { answeredBy: entry.answeredBy } : {}),
|
|
97
101
|
...(entry.relatedPermissionId
|
|
98
102
|
? { relatedPermissionId: entry.relatedPermissionId }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-question-list-tools.js","sourceRoot":"","sources":["../../src/escalation/open-question-list-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"open-question-list-tools.js","sourceRoot":"","sources":["../../src/escalation/open-question-list-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-question-to-escalation.d.ts","sourceRoot":"","sources":["../../src/escalation/open-question-to-escalation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,YAAY,GACrB,gBAAgB,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"open-question-to-escalation.d.ts","sourceRoot":"","sources":["../../src/escalation/open-question-to-escalation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,YAAY,GACrB,gBAAgB,GAAG,SAAS,CAe9B"}
|
|
@@ -5,8 +5,11 @@ export function openQuestionToEscalationRecord(question) {
|
|
|
5
5
|
return {
|
|
6
6
|
question: question.question,
|
|
7
7
|
responseType: question.responseType,
|
|
8
|
+
choices: question.choices,
|
|
8
9
|
context: question.context,
|
|
9
10
|
answer: question.answer,
|
|
11
|
+
assent: question.assent,
|
|
12
|
+
selectedChoice: question.selectedChoice,
|
|
10
13
|
approved: question.approved,
|
|
11
14
|
};
|
|
12
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-question-to-escalation.js","sourceRoot":"","sources":["../../src/escalation/open-question-to-escalation.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,8BAA8B,CAC5C,QAAsB;IAEtB,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACvD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;KAC5B,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"open-question-to-escalation.js","sourceRoot":"","sources":["../../src/escalation/open-question-to-escalation.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,8BAA8B,CAC5C,QAAsB;IAEtB,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACvD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;KAC5B,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { HumanInquiryResponseType } from './human-inquiry.js';
|
|
1
|
+
import type { ChoiceOption, HumanInquiryResponseType } from './human-inquiry.js';
|
|
2
|
+
import type { YesNoAssent } from './yes-no-assent.js';
|
|
2
3
|
export type OpenQuestionStatus = 'open' | 'answered';
|
|
3
4
|
export type OpenQuestionAnsweredBy = 'operator' | 'conductor';
|
|
4
5
|
export type OpenQuestionSource = 'conductor' | 'max_turns';
|
|
@@ -6,11 +7,14 @@ export interface OpenQuestion {
|
|
|
6
7
|
id: string;
|
|
7
8
|
question: string;
|
|
8
9
|
responseType: HumanInquiryResponseType;
|
|
10
|
+
choices?: ChoiceOption[];
|
|
9
11
|
context?: string;
|
|
10
12
|
source: OpenQuestionSource;
|
|
11
13
|
status: OpenQuestionStatus;
|
|
12
14
|
askedAt: number;
|
|
13
15
|
answer?: string;
|
|
16
|
+
assent?: YesNoAssent;
|
|
17
|
+
selectedChoice?: string;
|
|
14
18
|
approved?: boolean;
|
|
15
19
|
answeredAt?: number;
|
|
16
20
|
answeredBy?: OpenQuestionAnsweredBy;
|
|
@@ -21,12 +25,16 @@ export interface OpenQuestion {
|
|
|
21
25
|
export interface EnqueueOpenQuestionInput {
|
|
22
26
|
question: string;
|
|
23
27
|
responseType: HumanInquiryResponseType;
|
|
28
|
+
choices?: ChoiceOption[];
|
|
24
29
|
context?: string;
|
|
25
30
|
relatedPermissionId?: string;
|
|
26
31
|
source?: OpenQuestionSource;
|
|
27
32
|
}
|
|
28
33
|
export interface AnswerOpenQuestionInput {
|
|
29
34
|
answer: string;
|
|
35
|
+
assent?: YesNoAssent;
|
|
36
|
+
selectedChoice?: string;
|
|
37
|
+
/** @deprecated Approval is derived from assent for permission-linked yes_no questions. */
|
|
30
38
|
approved?: boolean;
|
|
31
39
|
answeredBy: OpenQuestionAnsweredBy;
|
|
32
40
|
sourceMessage?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-question.d.ts","sourceRoot":"","sources":["../../src/escalation/open-question.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"open-question.d.ts","sourceRoot":"","sources":["../../src/escalation/open-question.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,UAAU,CAAC;AAErD,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG,WAAW,CAAC;AAE9D,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,WAAW,CAAC;AAE3D,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,wBAAwB,CAAC;IACvC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,wBAAwB,CAAC;IACvC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,sBAAsB,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,yDAAyD;AACzD,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmC;IAE3D,OAAO,CAAC,KAAK,EAAE,wBAAwB,GAAG,YAAY;IAmBtD,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIzC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,uBAAuB,GAAG,YAAY,GAAG,SAAS;IAoC5E,IAAI,IAAI,YAAY,EAAE;IAItB,QAAQ,IAAI,YAAY,EAAE;IAI1B,YAAY,IAAI,YAAY,EAAE;IAI9B,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,QAAQ,IAAI,4BAA4B;IAOxC,OAAO,CAAC,QAAQ,EAAE,4BAA4B,GAAG,IAAI;CAOtD;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,YAAY,EAAE,CAAC;CAC/B"}
|
|
@@ -8,6 +8,9 @@ export class OpenQuestionRegistry {
|
|
|
8
8
|
id,
|
|
9
9
|
question: input.question,
|
|
10
10
|
responseType: input.responseType,
|
|
11
|
+
...(input.choices
|
|
12
|
+
? { choices: input.choices.map((choice) => ({ ...choice })) }
|
|
13
|
+
: {}),
|
|
11
14
|
context: input.context,
|
|
12
15
|
relatedPermissionId: input.relatedPermissionId,
|
|
13
16
|
source: input.source ?? 'conductor',
|
|
@@ -24,11 +27,25 @@ export class OpenQuestionRegistry {
|
|
|
24
27
|
const entry = this.entries.get(id);
|
|
25
28
|
if (!entry || entry.status !== 'open')
|
|
26
29
|
return undefined;
|
|
30
|
+
if (entry.responseType === 'choice' &&
|
|
31
|
+
!entry.choices?.some((choice) => choice.id === input.selectedChoice)) {
|
|
32
|
+
return undefined;
|
|
33
|
+
}
|
|
27
34
|
const updated = {
|
|
28
35
|
...entry,
|
|
29
36
|
status: 'answered',
|
|
30
37
|
answer: input.answer,
|
|
31
|
-
|
|
38
|
+
assent: entry.responseType === 'yes_no' ? input.assent : undefined,
|
|
39
|
+
selectedChoice: entry.responseType === 'choice' &&
|
|
40
|
+
entry.choices?.some((choice) => choice.id === input.selectedChoice)
|
|
41
|
+
? input.selectedChoice
|
|
42
|
+
: undefined,
|
|
43
|
+
approved: entry.responseType === 'yes_no' &&
|
|
44
|
+
entry.relatedPermissionId &&
|
|
45
|
+
input.assent !== undefined &&
|
|
46
|
+
input.assent !== 'unclear'
|
|
47
|
+
? input.assent === 'yes'
|
|
48
|
+
: undefined,
|
|
32
49
|
answeredAt: Date.now(),
|
|
33
50
|
answeredBy: input.answeredBy,
|
|
34
51
|
sourceMessage: input.sourceMessage,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-question.js","sourceRoot":"","sources":["../../src/escalation/open-question.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"open-question.js","sourceRoot":"","sources":["../../src/escalation/open-question.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,8 @@ import type { OpenQuestion, OpenQuestionRegistry } from './open-question.js';
|
|
|
2
2
|
export interface RecordOpenQuestionAnswerInput {
|
|
3
3
|
id: string;
|
|
4
4
|
answer: string;
|
|
5
|
+
selectedChoice?: string;
|
|
6
|
+
/** @deprecated Approval is derived from assent for permission-linked yes_no questions. */
|
|
5
7
|
approved?: boolean;
|
|
6
8
|
answeredBy: 'operator' | 'conductor';
|
|
7
9
|
sourceMessage?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record-open-question-answer.d.ts","sourceRoot":"","sources":["../../src/escalation/record-open-question-answer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"record-open-question-answer.d.ts","sourceRoot":"","sources":["../../src/escalation/record-open-question-answer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG7E,MAAM,WAAW,6BAA6B;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,UAAU,GAAG,WAAW,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,oBAAoB,EAC9B,KAAK,EAAE,6BAA6B,GACnC,YAAY,GAAG,SAAS,CAwB1B"}
|
|
@@ -1,17 +1,25 @@
|
|
|
1
|
+
import { parseChoiceSelection, parseYesNoAssent } from './yes-no-assent.js';
|
|
1
2
|
export function recordOpenQuestionAnswer(registry, input) {
|
|
2
3
|
const entry = registry.get(input.id);
|
|
3
4
|
if (!entry || entry.status !== 'open')
|
|
4
5
|
return undefined;
|
|
5
|
-
const
|
|
6
|
-
(
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
const assent = entry.responseType === 'yes_no'
|
|
7
|
+
? parseYesNoAssent(input.answer)
|
|
8
|
+
: undefined;
|
|
9
|
+
const selectedChoice = entry.responseType === 'choice'
|
|
10
|
+
? resolveSelectedChoice(input.selectedChoice, input.answer, entry.choices ?? [])
|
|
11
|
+
: undefined;
|
|
9
12
|
return registry.answer(input.id, {
|
|
10
13
|
answer: input.answer,
|
|
11
|
-
|
|
14
|
+
assent,
|
|
15
|
+
selectedChoice,
|
|
12
16
|
answeredBy: input.answeredBy,
|
|
13
17
|
sourceMessage: input.sourceMessage,
|
|
14
18
|
rationale: input.rationale,
|
|
15
19
|
});
|
|
16
20
|
}
|
|
21
|
+
function resolveSelectedChoice(selectedChoice, answer, choices) {
|
|
22
|
+
const explicitChoice = choices.find((choice) => choice.id === selectedChoice?.trim());
|
|
23
|
+
return explicitChoice?.id ?? parseChoiceSelection(answer, choices);
|
|
24
|
+
}
|
|
17
25
|
//# sourceMappingURL=record-open-question-answer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record-open-question-answer.js","sourceRoot":"","sources":["../../src/escalation/record-open-question-answer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"record-open-question-answer.js","sourceRoot":"","sources":["../../src/escalation/record-open-question-answer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAa5E,MAAM,UAAU,wBAAwB,CACtC,QAA8B,EAC9B,KAAoC;IAEpC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACrC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IAExD,MAAM,MAAM,GACV,KAAK,CAAC,YAAY,KAAK,QAAQ;QAC7B,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC;QAChC,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,cAAc,GAClB,KAAK,CAAC,YAAY,KAAK,QAAQ;QAC7B,CAAC,CAAC,qBAAqB,CACnB,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,OAAO,IAAI,EAAE,CACpB;QACH,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE;QAC/B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,MAAM;QACN,cAAc;QACd,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAC5B,cAAkC,EAClC,MAAc,EACd,OAA6C;IAE7C,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CACjC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,cAAc,EAAE,IAAI,EAAE,CACjD,CAAC;IACF,OAAO,cAAc,EAAE,EAAE,IAAI,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACrE,CAAC"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import type { HumanInquiryRequest, HumanInquiryResponse } from './human-inquiry.js';
|
|
2
2
|
export declare const ESCALATION_RESPONSE_ENV = "ENSEMBLE_ESCALATION_RESPONSE";
|
|
3
3
|
export declare function readEscalationEnvFallback(): string | undefined;
|
|
4
|
-
export declare function parseEnvInquiryResponse(raw: string, responseType: HumanInquiryRequest['responseType']): HumanInquiryResponse;
|
|
4
|
+
export declare function parseEnvInquiryResponse(raw: string, responseType: HumanInquiryRequest['responseType'], choices?: HumanInquiryRequest['choices']): HumanInquiryResponse;
|
|
5
|
+
/** Parse a TTY or environment answer while preserving its text. */
|
|
6
|
+
export declare function parseHumanInquiryAnswer(raw: string, request: HumanInquiryRequest): HumanInquiryResponse;
|
|
5
7
|
export declare function resolveHumanInquiryFromEnv(request: HumanInquiryRequest): HumanInquiryResponse | undefined;
|
|
6
8
|
export declare function escalationUnavailableMessage(): string;
|
|
7
9
|
export declare function createEnvFallbackHumanInquiryHandler(): (request: HumanInquiryRequest) => HumanInquiryResponse;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-human-inquiry.d.ts","sourceRoot":"","sources":["../../src/escalation/resolve-human-inquiry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"resolve-human-inquiry.d.ts","sourceRoot":"","sources":["../../src/escalation/resolve-human-inquiry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAI5B,eAAO,MAAM,uBAAuB,iCAAiC,CAAC;AAEtE,wBAAgB,yBAAyB,IAAI,MAAM,GAAG,SAAS,CAG9D;AAED,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,mBAAmB,CAAC,cAAc,CAAC,EACjD,OAAO,CAAC,EAAE,mBAAmB,CAAC,SAAS,CAAC,GACvC,oBAAoB,CAOtB;AAED,mEAAmE;AACnE,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,mBAAmB,GAC3B,oBAAoB,CAoBtB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,mBAAmB,GAC3B,oBAAoB,GAAG,SAAS,CAIlC;AAED,wBAAgB,4BAA4B,IAAI,MAAM,CAKrD;AAED,wBAAgB,oCAAoC,IAAI,CACtD,OAAO,EAAE,mBAAmB,KACzB,oBAAoB,CAMxB"}
|
|
@@ -1,18 +1,37 @@
|
|
|
1
1
|
import { EscalationUnavailableError } from './escalation-unavailable-error.js';
|
|
2
|
+
import { parseChoiceSelection, parseYesNoAssent } from './yes-no-assent.js';
|
|
2
3
|
export const ESCALATION_RESPONSE_ENV = 'ENSEMBLE_ESCALATION_RESPONSE';
|
|
3
4
|
export function readEscalationEnvFallback() {
|
|
4
5
|
const value = process.env[ESCALATION_RESPONSE_ENV]?.trim();
|
|
5
6
|
return value || undefined;
|
|
6
7
|
}
|
|
7
|
-
export function parseEnvInquiryResponse(raw, responseType) {
|
|
8
|
+
export function parseEnvInquiryResponse(raw, responseType, choices) {
|
|
9
|
+
return parseHumanInquiryAnswer(raw, {
|
|
10
|
+
kind: 'escalation',
|
|
11
|
+
question: '',
|
|
12
|
+
responseType,
|
|
13
|
+
choices,
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
/** Parse a TTY or environment answer while preserving its text. */
|
|
17
|
+
export function parseHumanInquiryAnswer(raw, request) {
|
|
8
18
|
const answer = raw.trim();
|
|
9
|
-
if (responseType === 'yes_no') {
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
19
|
+
if (request.responseType === 'yes_no') {
|
|
20
|
+
const assent = parseYesNoAssent(answer);
|
|
21
|
+
return {
|
|
22
|
+
answer,
|
|
23
|
+
assent,
|
|
24
|
+
...(request.kind === 'permission' && assent !== 'unclear'
|
|
25
|
+
? { approved: assent === 'yes' }
|
|
26
|
+
: {}),
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
if (request.responseType === 'choice') {
|
|
30
|
+
const selectedChoice = parseChoiceSelection(answer, request.choices ?? []);
|
|
31
|
+
return {
|
|
32
|
+
answer,
|
|
33
|
+
...(selectedChoice === undefined ? {} : { selectedChoice }),
|
|
34
|
+
};
|
|
16
35
|
}
|
|
17
36
|
return { answer };
|
|
18
37
|
}
|
|
@@ -20,7 +39,7 @@ export function resolveHumanInquiryFromEnv(request) {
|
|
|
20
39
|
const fallback = readEscalationEnvFallback();
|
|
21
40
|
if (fallback === undefined)
|
|
22
41
|
return undefined;
|
|
23
|
-
return
|
|
42
|
+
return parseHumanInquiryAnswer(fallback, request);
|
|
24
43
|
}
|
|
25
44
|
export function escalationUnavailableMessage() {
|
|
26
45
|
return ('Human inquiry is unavailable in non-interactive mode. ' +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-human-inquiry.js","sourceRoot":"","sources":["../../src/escalation/resolve-human-inquiry.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"resolve-human-inquiry.js","sourceRoot":"","sources":["../../src/escalation/resolve-human-inquiry.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE5E,MAAM,CAAC,MAAM,uBAAuB,GAAG,8BAA8B,CAAC;AAEtE,MAAM,UAAU,yBAAyB;IACvC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,IAAI,EAAE,CAAC;IAC3D,OAAO,KAAK,IAAI,SAAS,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,GAAW,EACX,YAAiD,EACjD,OAAwC;IAExC,OAAO,uBAAuB,CAAC,GAAG,EAAE;QAClC,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,EAAE;QACZ,YAAY;QACZ,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,uBAAuB,CACrC,GAAW,EACX,OAA4B;IAE5B,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC1B,IAAI,OAAO,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACxC,OAAO;YACL,MAAM;YACN,MAAM;YACN,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY,IAAI,MAAM,KAAK,SAAS;gBACvD,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,KAAK,KAAK,EAAE;gBAChC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,cAAc,GAAG,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAC3E,OAAO;YACL,MAAM;YACN,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC;SAC5D,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,OAA4B;IAE5B,MAAM,QAAQ,GAAG,yBAAyB,EAAE,CAAC;IAC7C,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC7C,OAAO,uBAAuB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,4BAA4B;IAC1C,OAAO,CACL,wDAAwD;QACxD,OAAO,uBAAuB,kCAAkC,CACjE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oCAAoC;IAGlD,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,OAAO,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;QAC5B,MAAM,IAAI,0BAA0B,CAAC,4BAA4B,EAAE,CAAC,CAAC;IACvE,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type YesNoAssent = 'yes' | 'no' | 'unclear';
|
|
2
|
+
/**
|
|
3
|
+
* Parse an operator's binary assent without collapsing an unrecognized answer
|
|
4
|
+
* into a denial. The original answer remains the caller's source text.
|
|
5
|
+
*/
|
|
6
|
+
export declare function parseYesNoAssent(answer: string): YesNoAssent;
|
|
7
|
+
export interface ChoiceOption {
|
|
8
|
+
id: string;
|
|
9
|
+
label: string;
|
|
10
|
+
}
|
|
11
|
+
/** Resolve an answer to an option id while leaving the answer text untouched. */
|
|
12
|
+
export declare function parseChoiceSelection(answer: string, choices: ChoiceOption[]): string | undefined;
|
|
13
|
+
//# sourceMappingURL=yes-no-assent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yes-no-assent.d.ts","sourceRoot":"","sources":["../../src/escalation/yes-no-assent.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;AAoFnD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CA2C5D;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,iFAAiF;AACjF,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,YAAY,EAAE,GACtB,MAAM,GAAG,SAAS,CAsBpB"}
|