chatroom-cli 1.129.0 → 1.130.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/index.js +163 -107
- package/dist/index.js.map +11 -8
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -100665,6 +100665,102 @@ function getHandoffSeverityGuidanceBlock() {
|
|
|
100665
100665
|
- [low] <minor cleanup — nice to have>`;
|
|
100666
100666
|
}
|
|
100667
100667
|
|
|
100668
|
+
// ../../services/backend/prompts/teams/verifier-handoff-templates.ts
|
|
100669
|
+
function normalizeEntryPointRole3(entryPointRole) {
|
|
100670
|
+
return entryPointRole.trim().toLowerCase() || "planner";
|
|
100671
|
+
}
|
|
100672
|
+
function getEntryPointToVerifierHandoffTemplate(entryPointRole) {
|
|
100673
|
+
const entryPoint = normalizeEntryPointRole3(entryPointRole);
|
|
100674
|
+
return `${getHandoffRecipientVisibilityCallout("verifier")}
|
|
100675
|
+
|
|
100676
|
+
## Handoff Template (${entryPoint} → verifier)
|
|
100677
|
+
|
|
100678
|
+
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}\`.
|
|
100679
|
+
|
|
100680
|
+
## Round
|
|
100681
|
+
<1 or 2; for 2, cite the round-1 verdict message id>
|
|
100682
|
+
|
|
100683
|
+
## Mode
|
|
100684
|
+
<chat | code | code:enhanced>
|
|
100685
|
+
|
|
100686
|
+
## User message id
|
|
100687
|
+
<id of the user's last message: the origin message id of the user task, or from \`chatroom messages anchor\`>
|
|
100688
|
+
|
|
100689
|
+
## Context id
|
|
100690
|
+
<id from \`chatroom context read\`, or \`none\` if no context was read for this task>
|
|
100691
|
+
|
|
100692
|
+
## Requested test runs
|
|
100693
|
+
<the test commands the user explicitly asked for, one per line, or exactly \`None requested.\`>
|
|
100694
|
+
|
|
100695
|
+
## Claimed outcome
|
|
100696
|
+
<requirement-by-requirement what you believe is complete>
|
|
100697
|
+
|
|
100698
|
+
## Evidence pointers
|
|
100699
|
+
<builder handoff message ids, commits, PRs, and test results as quoted in those handoffs>
|
|
100700
|
+
|
|
100701
|
+
## Known gaps
|
|
100702
|
+
<anything incomplete, or exactly \`None.\`>
|
|
100703
|
+
|
|
100704
|
+
## Handoff
|
|
100705
|
+
Send this request to the verifier with the command below, then stop. The verdict returns to \`${entryPoint}\`.
|
|
100706
|
+
|
|
100707
|
+
\`\`\`bash
|
|
100708
|
+
${handoffCommand({
|
|
100709
|
+
chatroomId: "<chatroom-id>",
|
|
100710
|
+
role: entryPoint,
|
|
100711
|
+
nextRole: "verifier",
|
|
100712
|
+
cliEnvPrefix: ""
|
|
100713
|
+
})}
|
|
100714
|
+
\`\`\``;
|
|
100715
|
+
}
|
|
100716
|
+
function getVerifierToEntryPointHandoffTemplate(entryPointRole) {
|
|
100717
|
+
const entryPoint = normalizeEntryPointRole3(entryPointRole);
|
|
100718
|
+
return `${getHandoffRecipientVisibilityCallout(entryPoint)}
|
|
100719
|
+
|
|
100720
|
+
## Handoff Template (Verifier → ${entryPoint})
|
|
100721
|
+
|
|
100722
|
+
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 also checks the work against the user's expectations (\`## User Expectations\`) under the same logs-only, claim-is-not-evidence rule. It ${VERIFIER_TEST_RULE}. Never accept the claimed outcome as proof. Use the exact sections below, in this order.
|
|
100723
|
+
|
|
100724
|
+
## Verdict
|
|
100725
|
+
<exactly one of ${VERIFIER_VERDICTS.join(", ")} as the value; ${ACHIEVED} only if every requirement and user expectation is met; ${NOT_ACHIEVED} if any requirement or user expectation is unmet (logs show it was not done, or contradict it); ${INCONCLUSIVE} if none is unmet but any is unverified (logs are silent)>
|
|
100726
|
+
|
|
100727
|
+
## Objective
|
|
100728
|
+
<user message id, any prior user messages used, objective in 1-2 sentences>
|
|
100729
|
+
|
|
100730
|
+
## Requirements
|
|
100731
|
+
<numbered \`R1 — <requirement> — met | unmet | unverified — <evidence ref>\`>
|
|
100732
|
+
|
|
100733
|
+
## User Expectations
|
|
100734
|
+
<numbered \`U1 — <expectation from the user's handoff template> — met | unmet | unverified — <evidence ref>\`; exactly \`None applicable.\` in chat mode or when no expectation applies>
|
|
100735
|
+
|
|
100736
|
+
## Evidence
|
|
100737
|
+
<bullets: \`<message id or handoff> — "<short quote>" — supports R#\`; for a requested test run, \`<command> — exit <result> — supports R#\`>
|
|
100738
|
+
|
|
100739
|
+
## Missing or unmet
|
|
100740
|
+
<per unmet or unverified requirement or user expectation: what is missing and what evidence would resolve it; exactly \`None.\` if ${ACHIEVED}>
|
|
100741
|
+
|
|
100742
|
+
## Scope and limits
|
|
100743
|
+
<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>
|
|
100744
|
+
|
|
100745
|
+
## Handoff
|
|
100746
|
+
Run the normal handoff command to \`${entryPoint}\` with this complete verdict, then stop.
|
|
100747
|
+
|
|
100748
|
+
\`\`\`bash
|
|
100749
|
+
${handoffCommand({
|
|
100750
|
+
chatroomId: "<chatroom-id>",
|
|
100751
|
+
role: "verifier",
|
|
100752
|
+
nextRole: entryPoint,
|
|
100753
|
+
cliEnvPrefix: ""
|
|
100754
|
+
})}
|
|
100755
|
+
\`\`\``;
|
|
100756
|
+
}
|
|
100757
|
+
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;
|
|
100758
|
+
var init_verifier_handoff_templates = __esm(() => {
|
|
100759
|
+
init_command2();
|
|
100760
|
+
VERIFIER_VERDICTS = ["ACHIEVED", "NOT_ACHIEVED", "INCONCLUSIVE"];
|
|
100761
|
+
[ACHIEVED, NOT_ACHIEVED, INCONCLUSIVE] = VERIFIER_VERDICTS;
|
|
100762
|
+
});
|
|
100763
|
+
|
|
100668
100764
|
// ../../services/backend/prompts/utils/proof-of-verification.ts
|
|
100669
100765
|
function messagesAnchorCommand(params = {}) {
|
|
100670
100766
|
const prefix = params.cliEnvPrefix ?? "";
|
|
@@ -100680,6 +100776,21 @@ function messagesDownloadSinceCommand(params = {}) {
|
|
|
100680
100776
|
const limit = params.limit ?? 100;
|
|
100681
100777
|
return `${prefix}chatroom messages download --chatroom-id="${chatroomId}" --role="${role}" --since-message-id="${sinceMessageId}" --limit=${limit}`;
|
|
100682
100778
|
}
|
|
100779
|
+
function verifierRequestCommand(params = {}) {
|
|
100780
|
+
const prefix = params.cliEnvPrefix ?? "";
|
|
100781
|
+
const chatroomId = params.chatroomId ?? "<chatroom-id>";
|
|
100782
|
+
const role = params.role ?? "<role>";
|
|
100783
|
+
return `${prefix}chatroom handoff --chatroom-id="${chatroomId}" --role="${role}" --next-role="verifier"`;
|
|
100784
|
+
}
|
|
100785
|
+
function getVerifierReviewDisclosureBlock(params = {}) {
|
|
100786
|
+
return `**Proof of verification (verifier review):**
|
|
100787
|
+
${VERIFIER_REVIEW_CHECKBOX}
|
|
100788
|
+
- Verifier review: <${VERIFIER_REVIEW_VALUES}>
|
|
100789
|
+
- Verifier request command (disclose the command you sent): \`${verifierRequestCommand(params)}\`
|
|
100790
|
+
- Verifier request message id: <id of your verifier handoff> · Round: <1 | 2>
|
|
100791
|
+
- Verdict message id: <id of the verifier's verdict handoff> · Verdict user message id: <id> (must equal the current last user message)
|
|
100792
|
+
- Verdict gaps (only if not ACHIEVED): <each unmet item, or \`None.\`>`;
|
|
100793
|
+
}
|
|
100683
100794
|
function getProofOfVerificationComment(params = {}) {
|
|
100684
100795
|
const anchorCmd = messagesAnchorCommand(params);
|
|
100685
100796
|
const downloadCmd = messagesDownloadSinceCommand({
|
|
@@ -100696,9 +100807,14 @@ Then: \`${anchorCmd}\` → \`${downloadCmd}\` (use the message ID from anchor ou
|
|
|
100696
100807
|
}
|
|
100697
100808
|
function getEntryPointProofOfCompletionVerificationBlock(params = {}) {
|
|
100698
100809
|
return `${getProofOfVerificationComment(params)}
|
|
100699
|
-
${PROOF_OF_VERIFICATION_CHECKBOX}
|
|
100810
|
+
${PROOF_OF_VERIFICATION_CHECKBOX}
|
|
100811
|
+
${getVerifierReviewDisclosureBlock(params)}`;
|
|
100700
100812
|
}
|
|
100701
|
-
var PROOF_OF_VERIFICATION_CHECKBOX = "- [ ] I confirm I verified the user's full request: anchored on the last user message, downloaded history since that anchor, reviewed handoffs/goals (including prior user messages when the latest was a terse follow-up), and validated every requirement below before this handoff";
|
|
100813
|
+
var PROOF_OF_VERIFICATION_CHECKBOX = "- [ ] I confirm I verified the user's full request: anchored on the last user message, downloaded history since that anchor, reviewed handoffs/goals (including prior user messages when the latest was a terse follow-up), and validated every requirement below before this handoff", VERIFIER_REVIEW_CHECKBOX = "- [ ] I checked the verifier verdict for this task: its user message id is the user's current last message, it is round 1 or 2 (maximum 2), and the verdict is `ACHIEVED` — or every unmet item is listed under Unresolved / action required", VERIFIER_REVIEW_VALUES;
|
|
100814
|
+
var init_proof_of_verification = __esm(() => {
|
|
100815
|
+
init_verifier_handoff_templates();
|
|
100816
|
+
VERIFIER_REVIEW_VALUES = `${VERIFIER_VERDICTS.join(" | ")} | UNAVAILABLE (<reason>) | not required (no code changes)`;
|
|
100817
|
+
});
|
|
100702
100818
|
|
|
100703
100819
|
// ../../services/backend/prompts/utils/unresolved-decisions.ts
|
|
100704
100820
|
function getUnresolvedDecisionsSectionBlock() {
|
|
@@ -100798,6 +100914,7 @@ ${getHandoffNotApplicableSectionComment("List manual steps outside the system")}
|
|
|
100798
100914
|
var init_handoff_report_template_body = __esm(() => {
|
|
100799
100915
|
init_context_disclosure();
|
|
100800
100916
|
init_handoff_quality_principles();
|
|
100917
|
+
init_proof_of_verification();
|
|
100801
100918
|
init_role_guidance_disclosure();
|
|
100802
100919
|
init_unresolved_decisions();
|
|
100803
100920
|
});
|
|
@@ -100829,11 +100946,11 @@ function getChatToUserHandoffTemplate() {
|
|
|
100829
100946
|
var init_chat_handoff_template = () => {};
|
|
100830
100947
|
|
|
100831
100948
|
// ../../services/backend/prompts/teams/researcher-handoff-templates.ts
|
|
100832
|
-
function
|
|
100949
|
+
function normalizeEntryPointRole4(entryPointRole) {
|
|
100833
100950
|
return entryPointRole.trim().toLowerCase() || "planner";
|
|
100834
100951
|
}
|
|
100835
100952
|
function getEntryPointToResearcherHandoffTemplate(entryPointRole) {
|
|
100836
|
-
const entryPoint =
|
|
100953
|
+
const entryPoint = normalizeEntryPointRole4(entryPointRole);
|
|
100837
100954
|
return `${getHandoffRecipientVisibilityCallout("researcher")}
|
|
100838
100955
|
|
|
100839
100956
|
## Handoff Template (${entryPoint} → researcher)
|
|
@@ -100862,7 +100979,7 @@ ${handoffCommand({
|
|
|
100862
100979
|
\`\`\``;
|
|
100863
100980
|
}
|
|
100864
100981
|
function getResearcherToEntryPointHandoffTemplate(entryPointRole) {
|
|
100865
|
-
const entryPoint =
|
|
100982
|
+
const entryPoint = normalizeEntryPointRole4(entryPointRole);
|
|
100866
100983
|
return `${getHandoffRecipientVisibilityCallout(entryPoint)}
|
|
100867
100984
|
|
|
100868
100985
|
## Handoff Template (Researcher → ${entryPoint})
|
|
@@ -100913,11 +101030,11 @@ var init_researcher_handoff_templates = __esm(() => {
|
|
|
100913
101030
|
});
|
|
100914
101031
|
|
|
100915
101032
|
// ../../services/backend/prompts/teams/triage-handoff-templates.ts
|
|
100916
|
-
function
|
|
101033
|
+
function normalizeEntryPointRole5(entryPointRole) {
|
|
100917
101034
|
return entryPointRole.trim().toLowerCase() || "planner";
|
|
100918
101035
|
}
|
|
100919
101036
|
function getEntryPointToTriageHandoffTemplate(entryPointRole) {
|
|
100920
|
-
const entryPoint =
|
|
101037
|
+
const entryPoint = normalizeEntryPointRole5(entryPointRole);
|
|
100921
101038
|
return `${getHandoffRecipientVisibilityCallout("triage")}
|
|
100922
101039
|
|
|
100923
101040
|
## Handoff Template (${entryPoint} → triage)
|
|
@@ -100936,12 +101053,12 @@ ${handoffCommand({
|
|
|
100936
101053
|
\`\`\``;
|
|
100937
101054
|
}
|
|
100938
101055
|
function getTriageToEntryPointHandoffTemplate(entryPointRole) {
|
|
100939
|
-
const entryPoint =
|
|
101056
|
+
const entryPoint = normalizeEntryPointRole5(entryPointRole);
|
|
100940
101057
|
return `${getHandoffRecipientVisibilityCallout(entryPoint)}
|
|
100941
101058
|
|
|
100942
101059
|
## Handoff Template (Triage → ${entryPoint})
|
|
100943
101060
|
|
|
100944
|
-
Return a complete, evidence-backed investigation of the authoritative reported bug. Triage is advisory: do not edit implementation files or implement the proposed fix.
|
|
101061
|
+
Return a complete, evidence-backed investigation of the authoritative reported bug. Triage is advisory: do not edit implementation files or implement the proposed fix. Begin with the \`## Summary\` section, then use the remaining sections below in order. Use \`###\` for sub-items within a section. Cite concrete repository paths and symbols, observed behavior, commands, and test output. Distinguish confirmed findings from hypotheses; never claim a test proved behavior unless its failing assertion demonstrates the report.
|
|
100945
101062
|
|
|
100946
101063
|
## Summary
|
|
100947
101064
|
<briefly state the diagnosis and whether the root cause was confirmed or remains a hypothesis>
|
|
@@ -100980,99 +101097,6 @@ var init_triage_handoff_templates = __esm(() => {
|
|
|
100980
101097
|
init_command2();
|
|
100981
101098
|
});
|
|
100982
101099
|
|
|
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
|
-
|
|
101076
101100
|
// ../../services/backend/prompts/teams/duo/handoff-templates/planner.ts
|
|
101077
101101
|
var duoPlannerHandoffContract;
|
|
101078
101102
|
var init_planner = __esm(() => {
|
|
@@ -101871,7 +101895,9 @@ var init_glossary = __esm(() => {
|
|
|
101871
101895
|
});
|
|
101872
101896
|
|
|
101873
101897
|
// ../../services/backend/prompts/cli/history-retrieval/guidance.ts
|
|
101874
|
-
var init_guidance = () => {
|
|
101898
|
+
var init_guidance = __esm(() => {
|
|
101899
|
+
init_proof_of_verification();
|
|
101900
|
+
});
|
|
101875
101901
|
|
|
101876
101902
|
// ../../services/backend/prompts/sections/general-knowledge.ts
|
|
101877
101903
|
var init_general_knowledge = __esm(() => {
|
|
@@ -101879,6 +101905,7 @@ var init_general_knowledge = __esm(() => {
|
|
|
101879
101905
|
init_glossary();
|
|
101880
101906
|
init_guidance();
|
|
101881
101907
|
init_utils3();
|
|
101908
|
+
init_proof_of_verification();
|
|
101882
101909
|
});
|
|
101883
101910
|
|
|
101884
101911
|
// ../../services/backend/prompts/sections/commands-reference.ts
|
|
@@ -101899,7 +101926,9 @@ function getInterRoleHandoffRule() {
|
|
|
101899
101926
|
// ../../services/backend/prompts/cli/sections/handoff-rules.ts
|
|
101900
101927
|
var init_handoff_rules = () => {};
|
|
101901
101928
|
// ../../services/backend/prompts/cli/sections/proof-of-verification.ts
|
|
101902
|
-
var
|
|
101929
|
+
var init_proof_of_verification2 = __esm(() => {
|
|
101930
|
+
init_proof_of_verification();
|
|
101931
|
+
});
|
|
101903
101932
|
|
|
101904
101933
|
// ../../services/backend/prompts/cli/sections/operating-model.ts
|
|
101905
101934
|
var init_operating_model = () => {};
|
|
@@ -101908,7 +101937,7 @@ var init_operating_model = () => {};
|
|
|
101908
101937
|
var init_sections = __esm(() => {
|
|
101909
101938
|
init_core_responsibilities();
|
|
101910
101939
|
init_handoff_rules();
|
|
101911
|
-
|
|
101940
|
+
init_proof_of_verification2();
|
|
101912
101941
|
init_operating_model();
|
|
101913
101942
|
});
|
|
101914
101943
|
|
|
@@ -101975,6 +102004,29 @@ chatroom handoff --chatroom-id="<chatroom-id>" --role="researcher" --next-role="
|
|
|
101975
102004
|
\`\`\``;
|
|
101976
102005
|
});
|
|
101977
102006
|
|
|
102007
|
+
// ../../services/backend/prompts/cli/roles/triage.ts
|
|
102008
|
+
var TRIAGE_GUIDANCE;
|
|
102009
|
+
var init_triage3 = __esm(() => {
|
|
102010
|
+
init_sections();
|
|
102011
|
+
TRIAGE_GUIDANCE = `## Triage Operating Model
|
|
102012
|
+
|
|
102013
|
+
You are the triage agent responsible for investigating a reported bug so the entry point can delegate a precise fix. You are advisory only: do not edit implementation files or implement the fix.
|
|
102014
|
+
|
|
102015
|
+
${"{SESSION_CONTINUITY}"}
|
|
102016
|
+
|
|
102017
|
+
${getInterRoleHandoffRule()}
|
|
102018
|
+
|
|
102019
|
+
1. Recover the reported bug from the injected task and chatroom history: the observed behavior, the expected behavior, and any reproduction details. If the expected behavior is not explicit, state the assumption you made.
|
|
102020
|
+
2. Trace the relevant code paths with concrete repository paths and symbols. Label every finding \`confirmed\` or \`hypothesis\`. Never present a hypothesis as fact.
|
|
102021
|
+
3. Attempt a focused reproduction only when it is cheap and safe. A focused regression test may be written as evidence. Do not edit implementation files.
|
|
102022
|
+
4. Write the report using the sections in the injected \`<handoff-templates>\`, in the order given, beginning with the \`## Summary\` section.
|
|
102023
|
+
5. Hand the report to the configured entry point with the normal command, then stop:
|
|
102024
|
+
|
|
102025
|
+
\`\`\`bash
|
|
102026
|
+
chatroom handoff --chatroom-id="<chatroom-id>" --role="triage" --next-role="{ENTRY_POINT_ROLE}"
|
|
102027
|
+
\`\`\``;
|
|
102028
|
+
});
|
|
102029
|
+
|
|
101978
102030
|
// ../../services/backend/prompts/cli/roles/uiux-engineer.ts
|
|
101979
102031
|
var UIUX_ENGINEER_GUIDANCE;
|
|
101980
102032
|
var init_uiux_engineer3 = __esm(() => {
|
|
@@ -102006,6 +102058,8 @@ The handoff must contain every required brief section, repository evidence, chos
|
|
|
102006
102058
|
var ACHIEVED2, NOT_ACHIEVED2, INCONCLUSIVE2, VERIFIER_GUIDANCE;
|
|
102007
102059
|
var init_verifier3 = __esm(() => {
|
|
102008
102060
|
init_verifier_handoff_templates();
|
|
102061
|
+
init_chat_handoff_template();
|
|
102062
|
+
init_handoff_report_template_body();
|
|
102009
102063
|
init_sections();
|
|
102010
102064
|
[ACHIEVED2, NOT_ACHIEVED2, INCONCLUSIVE2] = VERIFIER_VERDICTS;
|
|
102011
102065
|
VERIFIER_GUIDANCE = `## Verifier Operating Model
|
|
@@ -102021,8 +102075,9 @@ ${getInterRoleHandoffRule()}
|
|
|
102021
102075
|
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
102076
|
3. Run \`chatroom context read --chatroom-id="<chatroom-id>" --role="verifier"\` and note any mismatch with the request's context id.
|
|
102023
102077
|
4. Decompose the objective into numbered requirements R1..Rn. Split compound requests and ignore anything the user did not actually ask for.
|
|
102078
|
+
4a. User expectations: the user's handoff template (the section at the end of this prompt) defines what the user expects from the work. In a code mode, turn each applicable item that concerns the work into an expectation \`U1..Un\`: each requirement's evidence (PR, commit, or file), files changed, Code Change Verification, backlog items moved to \`pending_user_review\` after a verified end-to-end feature with a PR, and any manual steps or unresolved decisions the user must act on. Skip presentation-only items: template disclosure checkboxes, section order, collapsing, diagram format, and Proof of Planning. In \`chat\` mode the template asks only for a direct, concise answer, so add no expectations beyond the requirements.
|
|
102024
102079
|
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
|
|
102080
|
+
6. Choose the verdict by the rules in the injected verdict template: exactly one of ${VERIFIER_VERDICTS.join(", ")}. ${ACHIEVED2} only if every requirement and every U-expectation is met; ${NOT_ACHIEVED2} if any is unmet; ${INCONCLUSIVE2} if none is unmet but any is unverified.
|
|
102026
102081
|
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
102082
|
|
|
102028
102083
|
\`\`\`bash
|
|
@@ -102052,6 +102107,7 @@ var init_fromContext2 = __esm(() => {
|
|
|
102052
102107
|
init_builder2();
|
|
102053
102108
|
init_planner2();
|
|
102054
102109
|
init_researcher2();
|
|
102110
|
+
init_triage3();
|
|
102055
102111
|
init_uiux_engineer3();
|
|
102056
102112
|
init_verifier3();
|
|
102057
102113
|
init_fromContext();
|
|
@@ -138448,4 +138504,4 @@ program2.hook("preAction", async (_thisCommand, actionCommand) => {
|
|
|
138448
138504
|
});
|
|
138449
138505
|
program2.parse();
|
|
138450
138506
|
|
|
138451
|
-
//# debugId=
|
|
138507
|
+
//# debugId=6447CA0431CEDFDC64756E2164756E21
|