chatroom-cli 1.132.0 → 1.132.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 +164 -3
- package/dist/index.js.map +17 -10
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -20412,6 +20412,10 @@ var init_agent_role = __esm(() => {
|
|
|
20412
20412
|
{ teamId: "duo", order: 45 },
|
|
20413
20413
|
{ teamId: "solo", order: 45 }
|
|
20414
20414
|
]
|
|
20415
|
+
},
|
|
20416
|
+
reviewer: {
|
|
20417
|
+
tags: ["ephemeral" /* Ephemeral */],
|
|
20418
|
+
teams: [{ teamId: "duo", order: 35 }]
|
|
20415
20419
|
}
|
|
20416
20420
|
};
|
|
20417
20421
|
AGENT_ROLE_DEFINITIONS = Object.fromEntries(Object.entries(roleMetadata).map(([role, metadata]) => [role, { role, ...metadata }]));
|
|
@@ -100027,7 +100031,7 @@ var init_team_presets = __esm(() => {
|
|
|
100027
100031
|
duo: {
|
|
100028
100032
|
structureId: TEAM_STRUCTURE_IDS.duo,
|
|
100029
100033
|
name: "Duo",
|
|
100030
|
-
description: "A planner and builder working as a pair, planner as coordinator, with optional ephemeral architect, researcher, triage, uiux-engineer, and verifier roles",
|
|
100034
|
+
description: "A planner and builder working as a pair, planner as coordinator, with optional ephemeral architect, researcher, triage, reviewer, uiux-engineer, and verifier roles",
|
|
100031
100035
|
roles: getBuiltinRolesForTeam("duo"),
|
|
100032
100036
|
entryPoint: "planner"
|
|
100033
100037
|
},
|
|
@@ -100992,6 +100996,75 @@ var init_planner_researcher_chat = __esm(() => {
|
|
|
100992
100996
|
init_planner_researcher_code();
|
|
100993
100997
|
});
|
|
100994
100998
|
|
|
100999
|
+
// ../../services/backend/prompts/teams/reviewer-handoff-templates.ts
|
|
101000
|
+
function getEntryPointToReviewerHandoffTemplate(query) {
|
|
101001
|
+
const entryPoint = query.fromRole;
|
|
101002
|
+
return `Pass the review target and the review focus. State the exact commit range, branch, pull request, or file list to inspect, the focus areas (for example security, correctness, or test quality), and any known context or constraints. Ask the reviewer for a report only: do not edit files, run builds or tests, or implement fixes.
|
|
101003
|
+
|
|
101004
|
+
### When to review
|
|
101005
|
+
|
|
101006
|
+
Review before delivery for code-producing work:
|
|
101007
|
+
- a builder slice has just completed and is about to be delivered;
|
|
101008
|
+
- the user asks for a code review;
|
|
101009
|
+
- a change is large, risky, or touches security-sensitive or shared code.
|
|
101010
|
+
|
|
101011
|
+
Skip review for a trivial edit that has already been verified.
|
|
101012
|
+
|
|
101013
|
+
After completing the review, the reviewer must return its issue report to \`${entryPoint}\` with the normal handoff command.
|
|
101014
|
+
|
|
101015
|
+
\`\`\`bash
|
|
101016
|
+
${handoffCommand({
|
|
101017
|
+
chatroomId: "<chatroom-id>",
|
|
101018
|
+
role: entryPoint,
|
|
101019
|
+
nextRole: "reviewer",
|
|
101020
|
+
cliEnvPrefix: ""
|
|
101021
|
+
})}
|
|
101022
|
+
\`\`\``;
|
|
101023
|
+
}
|
|
101024
|
+
function getReviewerToEntryPointHandoffTemplate(query) {
|
|
101025
|
+
const entryPoint = query.toRole;
|
|
101026
|
+
return `Instructions (not part of the message): Return a complete review report for the target the planner named. The reviewer is advisory: do not edit files, implement fixes, run builds or tests, or propose architecture rewrites beyond each issue's suggested fix. Report only what you observed and mark anything unverified as such. Label every issue with a severity: \`blocker\`, \`major\`, \`minor\`, or \`nit\`. Group the issues by severity with blockers first, and cite the repository-relative file and line or line range for each. Use the exact sections below, in this order.
|
|
101027
|
+
|
|
101028
|
+
## Summary
|
|
101029
|
+
<one to three sentences: overall state of the target and the count of blocker/major issues>
|
|
101030
|
+
|
|
101031
|
+
## Review scope
|
|
101032
|
+
<commits, paths, and PR/branch inspected; commands run, if any>
|
|
101033
|
+
|
|
101034
|
+
## Issues
|
|
101035
|
+
<numbered list grouped by severity (blocker, major, minor, nit); each item: \`file:line\` — summary — evidence — suggested fix; write exactly \`None observed.\` if none>
|
|
101036
|
+
|
|
101037
|
+
## Not reviewed
|
|
101038
|
+
<anything out of scope or unreadable; write exactly \`None.\` if none>
|
|
101039
|
+
|
|
101040
|
+
Instructions after the body (not part of the message): run the normal handoff command to \`${entryPoint}\` with the complete body above, then stop.
|
|
101041
|
+
|
|
101042
|
+
\`\`\`bash
|
|
101043
|
+
${handoffCommand({
|
|
101044
|
+
chatroomId: "<chatroom-id>",
|
|
101045
|
+
role: "reviewer",
|
|
101046
|
+
nextRole: entryPoint,
|
|
101047
|
+
cliEnvPrefix: ""
|
|
101048
|
+
})}
|
|
101049
|
+
\`\`\``;
|
|
101050
|
+
}
|
|
101051
|
+
var init_reviewer_handoff_templates = __esm(() => {
|
|
101052
|
+
init_command2();
|
|
101053
|
+
});
|
|
101054
|
+
|
|
101055
|
+
// ../../services/backend/prompts/teams/duo/handoff-templates/planner-reviewer-code.ts
|
|
101056
|
+
function getPlannerReviewerCodeTemplate(query) {
|
|
101057
|
+
return getEntryPointToReviewerHandoffTemplate(query);
|
|
101058
|
+
}
|
|
101059
|
+
var init_planner_reviewer_code = __esm(() => {
|
|
101060
|
+
init_reviewer_handoff_templates();
|
|
101061
|
+
});
|
|
101062
|
+
|
|
101063
|
+
// ../../services/backend/prompts/teams/duo/handoff-templates/planner-reviewer-chat.ts
|
|
101064
|
+
var init_planner_reviewer_chat = __esm(() => {
|
|
101065
|
+
init_planner_reviewer_code();
|
|
101066
|
+
});
|
|
101067
|
+
|
|
100995
101068
|
// ../../services/backend/prompts/teams/triage-handoff-templates.ts
|
|
100996
101069
|
function getEntryPointToTriageHandoffTemplate(query) {
|
|
100997
101070
|
const entryPoint = query.fromRole;
|
|
@@ -101491,6 +101564,8 @@ var init_planner = __esm(() => {
|
|
|
101491
101564
|
init_planner_builder_code();
|
|
101492
101565
|
init_planner_researcher_chat();
|
|
101493
101566
|
init_planner_researcher_code();
|
|
101567
|
+
init_planner_reviewer_chat();
|
|
101568
|
+
init_planner_reviewer_code();
|
|
101494
101569
|
init_planner_triage_chat();
|
|
101495
101570
|
init_planner_triage_code();
|
|
101496
101571
|
init_planner_uiux_engineer_chat();
|
|
@@ -101509,9 +101584,19 @@ var init_planner = __esm(() => {
|
|
|
101509
101584
|
"uiux-engineer",
|
|
101510
101585
|
"triage",
|
|
101511
101586
|
"researcher",
|
|
101587
|
+
"reviewer",
|
|
101588
|
+
"verifier"
|
|
101589
|
+
],
|
|
101590
|
+
returnsTo: [
|
|
101591
|
+
"user",
|
|
101592
|
+
"builder",
|
|
101593
|
+
"architect",
|
|
101594
|
+
"uiux-engineer",
|
|
101595
|
+
"triage",
|
|
101596
|
+
"researcher",
|
|
101597
|
+
"reviewer",
|
|
101512
101598
|
"verifier"
|
|
101513
101599
|
],
|
|
101514
|
-
returnsTo: ["user", "builder", "architect", "uiux-engineer", "triage", "researcher", "verifier"],
|
|
101515
101600
|
outboundTemplates: {
|
|
101516
101601
|
builder: handoffTemplateByMode({
|
|
101517
101602
|
chat: getPlannerBuilderCodeTemplate,
|
|
@@ -101533,6 +101618,10 @@ var init_planner = __esm(() => {
|
|
|
101533
101618
|
chat: getPlannerResearcherCodeTemplate,
|
|
101534
101619
|
code: getPlannerResearcherCodeTemplate
|
|
101535
101620
|
}),
|
|
101621
|
+
reviewer: handoffTemplateByMode({
|
|
101622
|
+
chat: getPlannerReviewerCodeTemplate,
|
|
101623
|
+
code: getPlannerReviewerCodeTemplate
|
|
101624
|
+
}),
|
|
101536
101625
|
verifier: handoffTemplateByMode({
|
|
101537
101626
|
chat: getPlannerVerifierCodeTemplate,
|
|
101538
101627
|
code: getPlannerVerifierCodeTemplate
|
|
@@ -101577,6 +101666,38 @@ var init_researcher = __esm(() => {
|
|
|
101577
101666
|
};
|
|
101578
101667
|
});
|
|
101579
101668
|
|
|
101669
|
+
// ../../services/backend/prompts/teams/duo/handoff-templates/reviewer-planner-code.ts
|
|
101670
|
+
function getReviewerPlannerCodeTemplate(query) {
|
|
101671
|
+
return getReviewerToEntryPointHandoffTemplate(query);
|
|
101672
|
+
}
|
|
101673
|
+
var init_reviewer_planner_code = __esm(() => {
|
|
101674
|
+
init_reviewer_handoff_templates();
|
|
101675
|
+
});
|
|
101676
|
+
|
|
101677
|
+
// ../../services/backend/prompts/teams/duo/handoff-templates/reviewer-planner-chat.ts
|
|
101678
|
+
var init_reviewer_planner_chat = __esm(() => {
|
|
101679
|
+
init_reviewer_planner_code();
|
|
101680
|
+
});
|
|
101681
|
+
|
|
101682
|
+
// ../../services/backend/prompts/teams/duo/handoff-templates/reviewer.ts
|
|
101683
|
+
var duoReviewerHandoffContract;
|
|
101684
|
+
var init_reviewer = __esm(() => {
|
|
101685
|
+
init_reviewer_planner_chat();
|
|
101686
|
+
init_reviewer_planner_code();
|
|
101687
|
+
init_contracts();
|
|
101688
|
+
duoReviewerHandoffContract = {
|
|
101689
|
+
role: "reviewer",
|
|
101690
|
+
receivesFrom: ["planner"],
|
|
101691
|
+
returnsTo: ["planner"],
|
|
101692
|
+
outboundTemplates: {
|
|
101693
|
+
planner: handoffTemplateByMode({
|
|
101694
|
+
chat: getReviewerPlannerCodeTemplate,
|
|
101695
|
+
code: getReviewerPlannerCodeTemplate
|
|
101696
|
+
})
|
|
101697
|
+
}
|
|
101698
|
+
};
|
|
101699
|
+
});
|
|
101700
|
+
|
|
101580
101701
|
// ../../services/backend/prompts/teams/duo/handoff-templates/triage-planner-code.ts
|
|
101581
101702
|
function getTriagePlannerCodeTemplate(query) {
|
|
101582
101703
|
return getTriageToEntryPointHandoffTemplate(query);
|
|
@@ -101683,6 +101804,7 @@ var init_handoff_templates = __esm(() => {
|
|
|
101683
101804
|
init_builder();
|
|
101684
101805
|
init_planner();
|
|
101685
101806
|
init_researcher();
|
|
101807
|
+
init_reviewer();
|
|
101686
101808
|
init_triage();
|
|
101687
101809
|
init_uiux_engineer();
|
|
101688
101810
|
init_verifier();
|
|
@@ -101692,6 +101814,7 @@ var init_handoff_templates = __esm(() => {
|
|
|
101692
101814
|
builder: duoBuilderHandoffContract,
|
|
101693
101815
|
architect: duoArchitectHandoffContract,
|
|
101694
101816
|
researcher: duoResearcherHandoffContract,
|
|
101817
|
+
reviewer: duoReviewerHandoffContract,
|
|
101695
101818
|
"uiux-engineer": duoUiuxEngineerHandoffContract,
|
|
101696
101819
|
triage: duoTriageHandoffContract,
|
|
101697
101820
|
verifier: duoVerifierHandoffContract
|
|
@@ -102536,6 +102659,30 @@ chatroom handoff --chatroom-id="<chatroom-id>" --role="researcher" --next-role="
|
|
|
102536
102659
|
\`\`\``;
|
|
102537
102660
|
});
|
|
102538
102661
|
|
|
102662
|
+
// ../../services/backend/prompts/cli/roles/reviewer.ts
|
|
102663
|
+
var REVIEWER_GUIDANCE;
|
|
102664
|
+
var init_reviewer2 = __esm(() => {
|
|
102665
|
+
init_sections();
|
|
102666
|
+
REVIEWER_GUIDANCE = `## Reviewer Operating Model
|
|
102667
|
+
|
|
102668
|
+
You are the reviewer responsible for inspecting the code artifacts the planner names and reporting the issues you observe. You are advisory only: do not edit files, implement fixes, or act as the builder or planner.
|
|
102669
|
+
|
|
102670
|
+
${"{SESSION_CONTINUITY}"}
|
|
102671
|
+
|
|
102672
|
+
${getInterRoleHandoffRule()}
|
|
102673
|
+
|
|
102674
|
+
1. Recover the review target and focus from the injected task and the \`<handoff-templates>\` brief. If the target is not explicit, ask the planner through the handoff; do not guess a range.
|
|
102675
|
+
2. Inspect the target: the diff or commits, the changed files, and the surrounding code they depend on. Read the actual files; do not review from summaries.
|
|
102676
|
+
3. Look for correctness bugs, security issues, missing or weak tests, unclear ownership or error handling, dead code, duplication, and type drift. Stay within the stated focus when one is given.
|
|
102677
|
+
4. Label every issue with a severity (\`blocker\`, \`major\`, \`minor\`, \`nit\`) and cite the file and line. Only report what you observed; mark anything unverified as such.
|
|
102678
|
+
5. Follow the injected \`<handoff-templates>\` review report exactly, in its order.
|
|
102679
|
+
6. Hand the report to \`{ENTRY_POINT_ROLE}\` with the normal command, then stop:
|
|
102680
|
+
|
|
102681
|
+
\`\`\`bash
|
|
102682
|
+
chatroom handoff --chatroom-id="<chatroom-id>" --role="reviewer" --next-role="{ENTRY_POINT_ROLE}"
|
|
102683
|
+
\`\`\``;
|
|
102684
|
+
});
|
|
102685
|
+
|
|
102539
102686
|
// ../../services/backend/prompts/cli/roles/triage.ts
|
|
102540
102687
|
var TRIAGE_GUIDANCE;
|
|
102541
102688
|
var init_triage3 = __esm(() => {
|
|
@@ -102638,6 +102785,7 @@ var init_fromContext2 = __esm(() => {
|
|
|
102638
102785
|
init_builder2();
|
|
102639
102786
|
init_planner2();
|
|
102640
102787
|
init_researcher2();
|
|
102788
|
+
init_reviewer2();
|
|
102641
102789
|
init_triage3();
|
|
102642
102790
|
init_uiux_engineer3();
|
|
102643
102791
|
init_verifier3();
|
|
@@ -102731,6 +102879,19 @@ var init_templates = __esm(() => {
|
|
|
102731
102879
|
],
|
|
102732
102880
|
defaultHandoffTarget: "planner"
|
|
102733
102881
|
},
|
|
102882
|
+
reviewer: {
|
|
102883
|
+
role: "reviewer",
|
|
102884
|
+
title: "Reviewer",
|
|
102885
|
+
description: "You are the reviewer responsible for inspecting the code artifacts the planner names and reporting the issues you observe; you are advisory only and do not implement fixes.",
|
|
102886
|
+
responsibilities: [
|
|
102887
|
+
"Recover the review target and focus from the planner brief",
|
|
102888
|
+
"Inspect the diff or commits and the surrounding code they depend on",
|
|
102889
|
+
"Look for correctness, security, test quality, ownership, dead code, duplication, and type drift",
|
|
102890
|
+
"Label each issue with a severity and cite the file and line",
|
|
102891
|
+
"Hand one review report to the planner, separating reviewed scope from what was not reviewed"
|
|
102892
|
+
],
|
|
102893
|
+
defaultHandoffTarget: "planner"
|
|
102894
|
+
},
|
|
102734
102895
|
verifier: {
|
|
102735
102896
|
role: "verifier",
|
|
102736
102897
|
title: "Verifier",
|
|
@@ -139141,4 +139302,4 @@ program2.hook("preAction", async (_thisCommand, actionCommand) => {
|
|
|
139141
139302
|
});
|
|
139142
139303
|
program2.parse();
|
|
139143
139304
|
|
|
139144
|
-
//# debugId=
|
|
139305
|
+
//# debugId=BCEF986EF291738664756E2164756E21
|