diff --git a/agents/ollama.ts b/agents/ollama.ts index 365566d..d2d421a 100644 --- a/agents/ollama.ts +++ b/agents/ollama.ts @@ -122,7 +122,7 @@ async function runOllamaLoop(ctx: AgentRunContext): Promise { tools, keep_alive: -1, think: false, - options: { num_ctx: 262144 }, + options: { num_ctx: 262144, temperature: 0 }, }), { delaysMs: [3_000, 8_000], diff --git a/modes.ts b/modes.ts index 3931fa9..6b70e90 100644 --- a/modes.ts +++ b/modes.ts @@ -391,7 +391,9 @@ For simple, well-defined tasks, skip the plan phase and go straight to build.`, 7. **submit**: ALWAYS submit exactly one review via \`${t("create_pull_request_review")}\`. Do NOT call \`report_progress\` — the review is the final record and the progress comment will be cleaned up automatically. - **MANDATORY pre-submission self-check**: before calling \`${t("create_pull_request_review")}\`, scan your draft body for \`### \` sections. For each one that mentions a specific file and line number, move it to the \`comments\` array as an inline comment instead. A \`### \` section in the body is ONLY justified when it has NO specific line to anchor to. If you have 3+ body sections that all have file:line references, you have made an error — convert them. + **MANDATORY pre-submission self-check**: before calling \`${t("create_pull_request_review")}\`, do both of these: + 1. For each finding already in your \`comments\` array: verify it does NOT also appear as a \`### \` section in the body. A finding goes in ONE place only — inline comment OR body section, never both. If it has a line anchor it goes inline; remove the duplicate body section. + 2. For each \`### \` section in the body that mentions a specific file and line number: move it to the \`comments\` array as an inline comment and remove it from the body. Body sections are ONLY for concerns with NO specific line anchor. note: the first create_pull_request_review submission may error with a one-time diff-coverage nudge listing unread TOC regions. retry the same call to proceed — optionally after reading the listed ranges. the pre-flight will not block again this session. @@ -510,7 +512,9 @@ ${PR_SUMMARY_FORMAT}`, Same callout ladder as Review mode — \`[!CAUTION]\` (red, "will break") → \`[!IMPORTANT]\` (purple, "must address before merging") → \`> ℹ️ ...\` (informational, "minor suggestions only") → \`> ✅ ...\` (green friendly, "no concerns"). Same Fix-button lever: the footer renders a Fix button on every non-approving review, so \`approved: true\` suppresses it. Wrapping mergeable feedback in \`[!IMPORTANT]\` trains users to click Fix on reviews that don't need fixing — pick the tier the author's actual next action justifies. - **MANDATORY pre-submission self-check**: before calling \`${t("create_pull_request_review")}\`, scan your draft body for \`### \` sections. For each one that mentions a specific file and line number, move it to the \`comments\` array as an inline comment instead. A \`### \` section in the body is ONLY justified when it has NO specific line to anchor to. If you have 3+ body sections that all have file:line references, you have made an error — convert them. + **MANDATORY pre-submission self-check**: before calling \`${t("create_pull_request_review")}\`, do both of these: + 1. For each finding already in your \`comments\` array: verify it does NOT also appear as a \`### \` section in the body. A finding goes in ONE place only — inline comment OR body section, never both. If it has a line anchor it goes inline; remove the duplicate body section. + 2. For each \`### \` section in the body that mentions a specific file and line number: move it to the \`comments\` array as an inline comment and remove it from the body. Body sections are ONLY for concerns with NO specific line anchor. Follow these rules: - note: the first create_pull_request_review submission may error with a one-time diff-coverage nudge listing unread TOC regions. retry the same call to proceed — optionally after reading the listed ranges. the pre-flight will not block again this session.