chatroom-cli 1.128.1 → 1.129.1
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/index.js +198 -20
- package/dist/index.js.map +22 -18
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -20403,6 +20403,13 @@ var init_agent_role = __esm(() => {
|
|
|
20403
20403
|
researcher: {
|
|
20404
20404
|
tags: ["ephemeral" /* Ephemeral */],
|
|
20405
20405
|
teams: [{ teamId: "duo", order: 25 }]
|
|
20406
|
+
},
|
|
20407
|
+
verifier: {
|
|
20408
|
+
tags: ["ephemeral" /* Ephemeral */],
|
|
20409
|
+
teams: [
|
|
20410
|
+
{ teamId: "duo", order: 45 },
|
|
20411
|
+
{ teamId: "solo", order: 45 }
|
|
20412
|
+
]
|
|
20406
20413
|
}
|
|
20407
20414
|
};
|
|
20408
20415
|
AGENT_ROLE_DEFINITIONS = Object.fromEntries(Object.entries(roleMetadata).map(([role, metadata]) => [role, { role, ...metadata }]));
|
|
@@ -99882,14 +99889,14 @@ var init_team_presets = __esm(() => {
|
|
|
99882
99889
|
duo: {
|
|
99883
99890
|
structureId: TEAM_STRUCTURE_IDS.duo,
|
|
99884
99891
|
name: "Duo",
|
|
99885
|
-
description: "A planner and builder working as a pair, planner as coordinator, with optional ephemeral architect, researcher, triage,
|
|
99892
|
+
description: "A planner and builder working as a pair, planner as coordinator, with optional ephemeral architect, researcher, triage, uiux-engineer, and verifier roles",
|
|
99886
99893
|
roles: getBuiltinRolesForTeam("duo"),
|
|
99887
99894
|
entryPoint: "planner"
|
|
99888
99895
|
},
|
|
99889
99896
|
solo: {
|
|
99890
99897
|
structureId: TEAM_STRUCTURE_IDS.solo,
|
|
99891
99898
|
name: "Solo",
|
|
99892
|
-
description: "A single agent working independently, with optional ephemeral architect, triage,
|
|
99899
|
+
description: "A single agent working independently, with optional ephemeral architect, triage, uiux-engineer, and verifier roles",
|
|
99893
99900
|
roles: getBuiltinRolesForTeam("solo"),
|
|
99894
99901
|
entryPoint: "solo"
|
|
99895
99902
|
}
|
|
@@ -100973,6 +100980,99 @@ var init_triage_handoff_templates = __esm(() => {
|
|
|
100973
100980
|
init_command2();
|
|
100974
100981
|
});
|
|
100975
100982
|
|
|
100983
|
+
// ../../services/backend/prompts/teams/verifier-handoff-templates.ts
|
|
100984
|
+
function normalizeEntryPointRole5(entryPointRole) {
|
|
100985
|
+
return entryPointRole.trim().toLowerCase() || "planner";
|
|
100986
|
+
}
|
|
100987
|
+
function getEntryPointToVerifierHandoffTemplate(entryPointRole) {
|
|
100988
|
+
const entryPoint = normalizeEntryPointRole5(entryPointRole);
|
|
100989
|
+
return `${getHandoffRecipientVisibilityCallout("verifier")}
|
|
100990
|
+
|
|
100991
|
+
## Handoff Template (${entryPoint} → verifier)
|
|
100992
|
+
|
|
100993
|
+
The verifier judges, from chatroom logs only, whether the user's last message was achieved. It ${VERIFIER_TEST_RULE}; list any user-requested tests under Requested test runs. Treat the claimed outcome as a claim, not as evidence: the verifier does not trust it and checks every requirement against the logs themselves. Request this review only when the task involved code changes, in any conversation mode. The verdict returns to \`${entryPoint}\`.
|
|
100994
|
+
|
|
100995
|
+
## Round
|
|
100996
|
+
<1 or 2; for 2, cite the round-1 verdict message id>
|
|
100997
|
+
|
|
100998
|
+
## Mode
|
|
100999
|
+
<chat | code | code:enhanced>
|
|
101000
|
+
|
|
101001
|
+
## User message id
|
|
101002
|
+
<id of the user's last message: the origin message id of the user task, or from \`chatroom messages anchor\`>
|
|
101003
|
+
|
|
101004
|
+
## Context id
|
|
101005
|
+
<id from \`chatroom context read\`, or \`none\` if no context was read for this task>
|
|
101006
|
+
|
|
101007
|
+
## Requested test runs
|
|
101008
|
+
<the test commands the user explicitly asked for, one per line, or exactly \`None requested.\`>
|
|
101009
|
+
|
|
101010
|
+
## Claimed outcome
|
|
101011
|
+
<requirement-by-requirement what you believe is complete>
|
|
101012
|
+
|
|
101013
|
+
## Evidence pointers
|
|
101014
|
+
<builder handoff message ids, commits, PRs, and test results as quoted in those handoffs>
|
|
101015
|
+
|
|
101016
|
+
## Known gaps
|
|
101017
|
+
<anything incomplete, or exactly \`None.\`>
|
|
101018
|
+
|
|
101019
|
+
## Handoff
|
|
101020
|
+
Send this request to the verifier with the command below, then stop. The verdict returns to \`${entryPoint}\`.
|
|
101021
|
+
|
|
101022
|
+
\`\`\`bash
|
|
101023
|
+
${handoffCommand({
|
|
101024
|
+
chatroomId: "<chatroom-id>",
|
|
101025
|
+
role: entryPoint,
|
|
101026
|
+
nextRole: "verifier",
|
|
101027
|
+
cliEnvPrefix: ""
|
|
101028
|
+
})}
|
|
101029
|
+
\`\`\``;
|
|
101030
|
+
}
|
|
101031
|
+
function getVerifierToEntryPointHandoffTemplate(entryPointRole) {
|
|
101032
|
+
const entryPoint = normalizeEntryPointRole5(entryPointRole);
|
|
101033
|
+
return `${getHandoffRecipientVisibilityCallout(entryPoint)}
|
|
101034
|
+
|
|
101035
|
+
## Handoff Template (Verifier → ${entryPoint})
|
|
101036
|
+
|
|
101037
|
+
Return one advisory verdict for the authoritative request. This review is non-binding: it uses chatroom logs, plus the requested test runs listed in the request, if any, deciding every requirement from the evidence those logs and runs actually contain. It ${VERIFIER_TEST_RULE}. Never accept the claimed outcome as proof. Use the exact sections below, in this order.
|
|
101038
|
+
|
|
101039
|
+
## Verdict
|
|
101040
|
+
<exactly one of ${VERIFIER_VERDICTS.join(", ")} as the value; ${ACHIEVED} only if every requirement is met; ${NOT_ACHIEVED} if any requirement is unmet (logs show it was not done, or contradict it); ${INCONCLUSIVE} if none is unmet but any is unverified (logs are silent)>
|
|
101041
|
+
|
|
101042
|
+
## Objective
|
|
101043
|
+
<user message id, any prior user messages used, objective in 1-2 sentences>
|
|
101044
|
+
|
|
101045
|
+
## Requirements
|
|
101046
|
+
<numbered \`R1 — <requirement> — met | unmet | unverified — <evidence ref>\`>
|
|
101047
|
+
|
|
101048
|
+
## Evidence
|
|
101049
|
+
<bullets: \`<message id or handoff> — "<short quote>" — supports R#\`; for a requested test run, \`<command> — exit <result> — supports R#\`>
|
|
101050
|
+
|
|
101051
|
+
## Missing or unmet
|
|
101052
|
+
<per unmet or unverified requirement: what is missing and what evidence would resolve it; exactly \`None.\` if ${ACHIEVED}>
|
|
101053
|
+
|
|
101054
|
+
## Scope and limits
|
|
101055
|
+
<state the test runs the verifier executed (command and exit result), or "No tests were run; none were requested."; log range read; whether the download was truncated; context id read and whether it matched the request>
|
|
101056
|
+
|
|
101057
|
+
## Handoff
|
|
101058
|
+
Run the normal handoff command to \`${entryPoint}\` with this complete verdict, then stop.
|
|
101059
|
+
|
|
101060
|
+
\`\`\`bash
|
|
101061
|
+
${handoffCommand({
|
|
101062
|
+
chatroomId: "<chatroom-id>",
|
|
101063
|
+
role: "verifier",
|
|
101064
|
+
nextRole: entryPoint,
|
|
101065
|
+
cliEnvPrefix: ""
|
|
101066
|
+
})}
|
|
101067
|
+
\`\`\``;
|
|
101068
|
+
}
|
|
101069
|
+
var VERIFIER_VERDICTS, VERIFIER_TEST_RULE = "runs no test the user did not ask for, and never builds, lints, or edits", ACHIEVED, NOT_ACHIEVED, INCONCLUSIVE;
|
|
101070
|
+
var init_verifier_handoff_templates = __esm(() => {
|
|
101071
|
+
init_command2();
|
|
101072
|
+
VERIFIER_VERDICTS = ["ACHIEVED", "NOT_ACHIEVED", "INCONCLUSIVE"];
|
|
101073
|
+
[ACHIEVED, NOT_ACHIEVED, INCONCLUSIVE] = VERIFIER_VERDICTS;
|
|
101074
|
+
});
|
|
101075
|
+
|
|
100976
101076
|
// ../../services/backend/prompts/teams/duo/handoff-templates/planner.ts
|
|
100977
101077
|
var duoPlannerHandoffContract;
|
|
100978
101078
|
var init_planner = __esm(() => {
|
|
@@ -100983,16 +101083,26 @@ var init_planner = __esm(() => {
|
|
|
100983
101083
|
init_researcher_handoff_templates();
|
|
100984
101084
|
init_triage_handoff_templates();
|
|
100985
101085
|
init_uiux_engineer_handoff_templates();
|
|
101086
|
+
init_verifier_handoff_templates();
|
|
100986
101087
|
duoPlannerHandoffContract = {
|
|
100987
101088
|
role: "planner",
|
|
100988
|
-
receivesFrom: [
|
|
100989
|
-
|
|
101089
|
+
receivesFrom: [
|
|
101090
|
+
"user",
|
|
101091
|
+
"builder",
|
|
101092
|
+
"architect",
|
|
101093
|
+
"uiux-engineer",
|
|
101094
|
+
"triage",
|
|
101095
|
+
"researcher",
|
|
101096
|
+
"verifier"
|
|
101097
|
+
],
|
|
101098
|
+
returnsTo: ["builder", "architect", "uiux-engineer", "triage", "researcher", "verifier", "user"],
|
|
100990
101099
|
outboundTemplates: {
|
|
100991
101100
|
builder: () => getPlannerToBuilderHandoffTemplate(),
|
|
100992
101101
|
architect: () => getEntryPointToArchitectHandoffTemplate("planner"),
|
|
100993
101102
|
"uiux-engineer": () => getEntryPointToUiuxEngineerHandoffTemplate("planner"),
|
|
100994
101103
|
triage: () => getEntryPointToTriageHandoffTemplate("planner"),
|
|
100995
101104
|
researcher: () => getEntryPointToResearcherHandoffTemplate("planner"),
|
|
101105
|
+
verifier: () => getEntryPointToVerifierHandoffTemplate("planner"),
|
|
100996
101106
|
user: (query) => query.conversationMode === "chat" ? getChatToUserHandoffTemplate() : getPlannerToUserReportTemplate({
|
|
100997
101107
|
chatroomId: query.chatroomId,
|
|
100998
101108
|
role: query.role,
|
|
@@ -101044,6 +101154,20 @@ var init_uiux_engineer = __esm(() => {
|
|
|
101044
101154
|
};
|
|
101045
101155
|
});
|
|
101046
101156
|
|
|
101157
|
+
// ../../services/backend/prompts/teams/duo/handoff-templates/verifier.ts
|
|
101158
|
+
var duoVerifierHandoffContract;
|
|
101159
|
+
var init_verifier = __esm(() => {
|
|
101160
|
+
init_verifier_handoff_templates();
|
|
101161
|
+
duoVerifierHandoffContract = {
|
|
101162
|
+
role: "verifier",
|
|
101163
|
+
receivesFrom: ["planner"],
|
|
101164
|
+
returnsTo: ["planner"],
|
|
101165
|
+
outboundTemplates: {
|
|
101166
|
+
planner: () => getVerifierToEntryPointHandoffTemplate("planner")
|
|
101167
|
+
}
|
|
101168
|
+
};
|
|
101169
|
+
});
|
|
101170
|
+
|
|
101047
101171
|
// ../shared/src/domain/chatroom-role.ts
|
|
101048
101172
|
var CHATROOM_ROLE_USER = "user";
|
|
101049
101173
|
var init_chatroom_role = __esm(() => {
|
|
@@ -101188,6 +101312,7 @@ var init_handoff_templates = __esm(() => {
|
|
|
101188
101312
|
init_researcher();
|
|
101189
101313
|
init_triage();
|
|
101190
101314
|
init_uiux_engineer();
|
|
101315
|
+
init_verifier();
|
|
101191
101316
|
init_contracts();
|
|
101192
101317
|
DUO_ROLE_HANDOFF_CATALOG = {
|
|
101193
101318
|
planner: duoPlannerHandoffContract,
|
|
@@ -101195,7 +101320,8 @@ var init_handoff_templates = __esm(() => {
|
|
|
101195
101320
|
architect: duoArchitectHandoffContract,
|
|
101196
101321
|
researcher: duoResearcherHandoffContract,
|
|
101197
101322
|
"uiux-engineer": duoUiuxEngineerHandoffContract,
|
|
101198
|
-
triage: duoTriageHandoffContract
|
|
101323
|
+
triage: duoTriageHandoffContract,
|
|
101324
|
+
verifier: duoVerifierHandoffContract
|
|
101199
101325
|
};
|
|
101200
101326
|
DUO_ROLE_HANDOFF_CONTRACTS = Object.values(DUO_ROLE_HANDOFF_CATALOG);
|
|
101201
101327
|
validatedDuoRoleHandoffContracts = (() => {
|
|
@@ -101240,14 +101366,16 @@ var init_solo = __esm(() => {
|
|
|
101240
101366
|
init_architect_handoff_templates();
|
|
101241
101367
|
init_triage_handoff_templates();
|
|
101242
101368
|
init_uiux_engineer_handoff_templates();
|
|
101369
|
+
init_verifier_handoff_templates();
|
|
101243
101370
|
soloHandoffContract = {
|
|
101244
101371
|
role: "solo",
|
|
101245
|
-
receivesFrom: ["user", "architect", "uiux-engineer", "triage"],
|
|
101246
|
-
returnsTo: ["architect", "uiux-engineer", "triage", "user"],
|
|
101372
|
+
receivesFrom: ["user", "architect", "uiux-engineer", "triage", "verifier"],
|
|
101373
|
+
returnsTo: ["architect", "uiux-engineer", "triage", "verifier", "user"],
|
|
101247
101374
|
outboundTemplates: {
|
|
101248
101375
|
architect: () => getEntryPointToArchitectHandoffTemplate("solo"),
|
|
101249
101376
|
"uiux-engineer": () => getEntryPointToUiuxEngineerHandoffTemplate("solo"),
|
|
101250
101377
|
triage: () => getEntryPointToTriageHandoffTemplate("solo"),
|
|
101378
|
+
verifier: () => getEntryPointToVerifierHandoffTemplate("solo"),
|
|
101251
101379
|
user: (query) => query.conversationMode === "chat" ? getChatToUserHandoffTemplate() : getSoloToUserReportTemplate({
|
|
101252
101380
|
chatroomId: query.chatroomId,
|
|
101253
101381
|
role: query.role,
|
|
@@ -101285,6 +101413,20 @@ var init_uiux_engineer2 = __esm(() => {
|
|
|
101285
101413
|
};
|
|
101286
101414
|
});
|
|
101287
101415
|
|
|
101416
|
+
// ../../services/backend/prompts/teams/solo/handoff-templates/verifier.ts
|
|
101417
|
+
var soloVerifierHandoffContract;
|
|
101418
|
+
var init_verifier2 = __esm(() => {
|
|
101419
|
+
init_verifier_handoff_templates();
|
|
101420
|
+
soloVerifierHandoffContract = {
|
|
101421
|
+
role: "verifier",
|
|
101422
|
+
receivesFrom: ["solo"],
|
|
101423
|
+
returnsTo: ["solo"],
|
|
101424
|
+
outboundTemplates: {
|
|
101425
|
+
solo: () => getVerifierToEntryPointHandoffTemplate("solo")
|
|
101426
|
+
}
|
|
101427
|
+
};
|
|
101428
|
+
});
|
|
101429
|
+
|
|
101288
101430
|
// ../../services/backend/prompts/teams/solo/handoff-templates/index.ts
|
|
101289
101431
|
function listSoloRoleHandoffContracts() {
|
|
101290
101432
|
return validatedSoloRoleHandoffContracts;
|
|
@@ -101302,12 +101444,14 @@ var init_handoff_templates2 = __esm(() => {
|
|
|
101302
101444
|
init_solo();
|
|
101303
101445
|
init_triage2();
|
|
101304
101446
|
init_uiux_engineer2();
|
|
101447
|
+
init_verifier2();
|
|
101305
101448
|
init_contracts();
|
|
101306
101449
|
SOLO_ROLE_HANDOFF_CATALOG = {
|
|
101307
101450
|
solo: soloHandoffContract,
|
|
101308
101451
|
architect: soloArchitectHandoffContract,
|
|
101309
101452
|
"uiux-engineer": soloUiuxEngineerHandoffContract,
|
|
101310
|
-
triage: soloTriageHandoffContract
|
|
101453
|
+
triage: soloTriageHandoffContract,
|
|
101454
|
+
verifier: soloVerifierHandoffContract
|
|
101311
101455
|
};
|
|
101312
101456
|
SOLO_ROLE_HANDOFF_CONTRACTS = Object.values(SOLO_ROLE_HANDOFF_CATALOG);
|
|
101313
101457
|
validatedSoloRoleHandoffContracts = (() => {
|
|
@@ -101858,6 +102002,34 @@ chatroom handoff --chatroom-id="<chatroom-id>" --role="uiux-engineer" --next-rol
|
|
|
101858
102002
|
The handoff must contain every required brief section, repository evidence, chosen flow, exact component/prop/state details, explicit states, accessibility details, ownership decisions, concrete classes/tokens, risks, acceptance criteria, tests, and implementation sequence the configured entry point needs to coordinate implementation. It must not contain implementation edits or alternative designs.`;
|
|
101859
102003
|
});
|
|
101860
102004
|
|
|
102005
|
+
// ../../services/backend/prompts/cli/roles/verifier.ts
|
|
102006
|
+
var ACHIEVED2, NOT_ACHIEVED2, INCONCLUSIVE2, VERIFIER_GUIDANCE;
|
|
102007
|
+
var init_verifier3 = __esm(() => {
|
|
102008
|
+
init_verifier_handoff_templates();
|
|
102009
|
+
init_sections();
|
|
102010
|
+
[ACHIEVED2, NOT_ACHIEVED2, INCONCLUSIVE2] = VERIFIER_VERDICTS;
|
|
102011
|
+
VERIFIER_GUIDANCE = `## Verifier Operating Model
|
|
102012
|
+
|
|
102013
|
+
You are the verifier. Your main job is to check whether the user's goal was accomplished, judged from chatroom logs. You are advisory and read-only: do not edit files, implement code, run builds or linters, run \`chatroom context new\`, or act as the planner or builder. The one exception to running nothing is the test rule below: it ${VERIFIER_TEST_RULE}.
|
|
102014
|
+
|
|
102015
|
+
${"{SESSION_CONTINUITY}"}
|
|
102016
|
+
|
|
102017
|
+
${getInterRoleHandoffRule()}
|
|
102018
|
+
|
|
102019
|
+
1. Read the injected verification request: round, mode, user message id, context id, requested test runs, claimed outcome, evidence pointers, and known gaps. The claimed outcome is a claim to be checked, never evidence.
|
|
102020
|
+
2. Recover the objective from the logs. Run \`chatroom messages anchor --chatroom-id="<chatroom-id>" --role="verifier"\`, then \`chatroom messages download --chatroom-id="<chatroom-id>" --role="verifier" --since-message-id=<user message id> --limit=100\`. If the download is truncated, raise \`--limit\` and download again until the range is complete. If the anchor id differs from the request's user message id, use the request's id and report the mismatch. For terse follow-ups, recover intent from the prior user messages the anchor lists.
|
|
102021
|
+
2a. Requested test runs: if the user's last message (or prior user messages for this objective) explicitly asks for tests to be run, run exactly those commands from the repository root, record the command and exit result, and count the output as evidence. Run no test the user did not ask for. If the request is absent, run nothing.
|
|
102022
|
+
3. Run \`chatroom context read --chatroom-id="<chatroom-id>" --role="verifier"\` and note any mismatch with the request's context id.
|
|
102023
|
+
4. Decompose the objective into numbered requirements R1..Rn. Split compound requests and ignore anything the user did not actually ask for.
|
|
102024
|
+
5. Find evidence for every requirement in the logs alone: builder handoff reports, planner delegations, quoted test output, commits, and PRs. \`met\` requires concrete evidence in the logs. The planner's claimed outcome is a claim, not evidence. Silence means \`unverified\`. A contradiction, or a log showing the requirement was not done, means \`unmet\`. Never state that tests passed unless a log reports it, or you ran the requested tests yourself.
|
|
102025
|
+
6. Choose the verdict by the rules in the injected verdict template: exactly one of ${VERIFIER_VERDICTS.join(", ")}. ${ACHIEVED2} only if every requirement is met; ${NOT_ACHIEVED2} if any requirement is unmet; ${INCONCLUSIVE2} if none is unmet but any is unverified.
|
|
102026
|
+
7. Follow the injected \`<handoff-templates>\` verdict template exactly, in its order, and put the complete verdict in the handoff. Then hand off to the configured entry point with the normal command, then stop:
|
|
102027
|
+
|
|
102028
|
+
\`\`\`bash
|
|
102029
|
+
chatroom handoff --chatroom-id="<chatroom-id>" --role="verifier" --next-role="{ENTRY_POINT_ROLE}"
|
|
102030
|
+
\`\`\``;
|
|
102031
|
+
});
|
|
102032
|
+
|
|
101861
102033
|
// ../../services/backend/prompts/cli/roles/planner-guidance-context.ts
|
|
101862
102034
|
var init_planner_guidance_context = __esm(() => {
|
|
101863
102035
|
init_env();
|
|
@@ -101881,6 +102053,7 @@ var init_fromContext2 = __esm(() => {
|
|
|
101881
102053
|
init_planner2();
|
|
101882
102054
|
init_researcher2();
|
|
101883
102055
|
init_uiux_engineer3();
|
|
102056
|
+
init_verifier3();
|
|
101884
102057
|
init_fromContext();
|
|
101885
102058
|
});
|
|
101886
102059
|
|
|
@@ -101970,6 +102143,19 @@ var init_templates = __esm(() => {
|
|
|
101970
102143
|
],
|
|
101971
102144
|
defaultHandoffTarget: "planner"
|
|
101972
102145
|
},
|
|
102146
|
+
verifier: {
|
|
102147
|
+
role: "verifier",
|
|
102148
|
+
title: "Verifier",
|
|
102149
|
+
description: "You are the verifier responsible for judging, from chatroom logs only, whether the user's last message was achieved; you do not implement, test, or inspect code.",
|
|
102150
|
+
responsibilities: [
|
|
102151
|
+
"Recover the user's last message and the pinned context from the chatroom logs",
|
|
102152
|
+
"Break the objective into numbered requirements",
|
|
102153
|
+
"Check each requirement against concrete evidence in the logs, treating the planner claim as unverified",
|
|
102154
|
+
"Return one verdict (ACHIEVED, NOT_ACHIEVED, or INCONCLUSIVE) with evidence and the missing items",
|
|
102155
|
+
"Execute nothing: no tests, builds, or repository inspection"
|
|
102156
|
+
],
|
|
102157
|
+
defaultHandoffTarget: "planner"
|
|
102158
|
+
},
|
|
101973
102159
|
triage: {
|
|
101974
102160
|
role: "triage",
|
|
101975
102161
|
title: "Triage Agent",
|
|
@@ -111106,9 +111292,7 @@ function normalizeDeliveryAttachments(input) {
|
|
|
111106
111292
|
return Object.values(attachments).some((items) => items && items.length > 0) ? attachments : undefined;
|
|
111107
111293
|
}
|
|
111108
111294
|
function normalizeTask(input) {
|
|
111109
|
-
|
|
111110
|
-
return;
|
|
111111
|
-
return { _id: input.taskId, status: input.taskStatus, content: input.taskContent };
|
|
111295
|
+
return input.task ?? undefined;
|
|
111112
111296
|
}
|
|
111113
111297
|
function toSerializableMessage(input) {
|
|
111114
111298
|
const attachments = normalizeDeliveryAttachments(input);
|
|
@@ -111497,10 +111681,6 @@ async function createDefaultDeps17() {
|
|
|
111497
111681
|
}
|
|
111498
111682
|
};
|
|
111499
111683
|
}
|
|
111500
|
-
function formatBadges(message) {
|
|
111501
|
-
const status = message.taskStatus ? ` (${message.taskStatus})` : "";
|
|
111502
|
-
return `${status}`;
|
|
111503
|
-
}
|
|
111504
111684
|
function logMessageContent(content, full) {
|
|
111505
111685
|
if (full) {
|
|
111506
111686
|
console.log(` Content:
|
|
@@ -111572,11 +111752,10 @@ var listBySenderRoleEffect = (chatroomId, options) => exports_Effect.gen(functio
|
|
|
111572
111752
|
console.log("─".repeat(60));
|
|
111573
111753
|
for (const message of messages) {
|
|
111574
111754
|
const timestamp = new Date(message._creationTime).toLocaleString();
|
|
111575
|
-
const badges = formatBadges(message);
|
|
111576
111755
|
console.log(`
|
|
111577
111756
|
\uD83D\uDD39 ID: ${message._id}`);
|
|
111578
111757
|
console.log(` Time: ${timestamp}`);
|
|
111579
|
-
console.log(` Type: ${message.type}
|
|
111758
|
+
console.log(` Type: ${message.type}`);
|
|
111580
111759
|
if (message.targetRole) {
|
|
111581
111760
|
console.log(` Target: ${message.targetRole}`);
|
|
111582
111761
|
}
|
|
@@ -111608,12 +111787,11 @@ var listBySenderRoleEffect = (chatroomId, options) => exports_Effect.gen(functio
|
|
|
111608
111787
|
for (const message of messages) {
|
|
111609
111788
|
const timestamp = new Date(message._creationTime).toLocaleString();
|
|
111610
111789
|
const roleIndicator = message.senderRole.toLowerCase() === "user" ? "\uD83D\uDC64" : "\uD83E\uDD16";
|
|
111611
|
-
const badges = formatBadges(message);
|
|
111612
111790
|
console.log(`
|
|
111613
111791
|
${roleIndicator} ${message.senderRole}${message.targetRole ? ` → ${message.targetRole}` : ""}`);
|
|
111614
111792
|
console.log(` ID: ${message._id}`);
|
|
111615
111793
|
console.log(` Time: ${timestamp}`);
|
|
111616
|
-
console.log(` Type: ${message.type}
|
|
111794
|
+
console.log(` Type: ${message.type}`);
|
|
111617
111795
|
logMessageContent(message.content, options.full ?? false);
|
|
111618
111796
|
}
|
|
111619
111797
|
console.log(`
|
|
@@ -138270,4 +138448,4 @@ program2.hook("preAction", async (_thisCommand, actionCommand) => {
|
|
|
138270
138448
|
});
|
|
138271
138449
|
program2.parse();
|
|
138272
138450
|
|
|
138273
|
-
//# debugId=
|
|
138451
|
+
//# debugId=8506C14FCD932D1964756E2164756E21
|