更新policy.md

This commit is contained in:
朱潮 2026-05-12 12:40:12 +08:00
parent be96f240b3
commit 7b4f03d340
10 changed files with 310 additions and 70 deletions

View File

@ -40,6 +40,13 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
- After each step, evaluate sufficiency before proceeding. - After each step, evaluate sufficiency before proceeding.
- Retrieval must happen **before** any factual answer generation. - Retrieval must happen **before** any factual answer generation.
### First-Call Success Principle
- The first retrieval call is expected to return sufficient results for most questions.
- Your default assumption should be: **one call is enough**.
- Additional calls are the exception, not the norm. Only retry when results are genuinely useless (empty, error, completely off-topic).
- **Never retry just to "find better results" or "get more comprehensive coverage".** Good enough is sufficient.
## 4. Query Preparation ## 4. Query Preparation
- Do NOT pass raw user question unless it already works well for retrieval. - Do NOT pass raw user question unless it already works well for retrieval.
@ -57,14 +64,30 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
**Maximum 3 retrieval calls per question.** After each call, evaluate immediately: **Maximum 3 retrieval calls per question.** After each call, evaluate immediately:
### Sufficient — answer now ### Sufficient — answer immediately, no more calls
- The core entity/topic in the user's question has been hit.
- There is direct evidence supporting the main intent of the question.
- Partial but usable coverage is sufficient — you do NOT need exhaustive or perfect coverage to answer.
- **When results are sufficient, compose the answer immediately. Do NOT call retrieval again to "double-check" or "get more context".**
### Insufficient — retry ANY of the following means results are sufficient — STOP and answer now:
- Empty, `Error:`, off-topic, missing core entity/scope, no usable evidence at all, or claims required by the answer are not explicitly supported. - The core entity/topic in the user's question appears in the results.
- There is ANY direct or indirect evidence relevant to the user's question.
- Results are partially relevant, even if not perfectly comprehensive.
- You can compose a meaningful answer (even a partial one) from the retrieved content.
**Anti-patterns — do NOT do these:**
- ❌ "The results are good, but maybe different keywords could find something better."
- ❌ "I have enough to answer, but let me try one more query to be thorough."
- ❌ "The answer is here, but I want to double-check with a different query."
- ❌ Calling retrieval again after you have already identified the answer in previous results.
**If you can answer the question with current results, you MUST answer immediately. Period.**
### Insufficient — the ONLY valid reasons to retry
- Results are completely empty or contain only `Error:` messages.
- ALL results are entirely off-topic with zero relevance to the user's question.
- No usable evidence exists at all — you cannot form even a partial answer.
**"Results are not detailed enough" is NOT a valid reason to retry.**
**"Results might be incomplete" is NOT a valid reason to retry.**
## 7. Fallback and Sequential Retry ## 7. Fallback and Sequential Retry
@ -114,6 +137,7 @@ Before replying to a knowledge retrieval task, verify:
- Used only whitelisted retrieval tools — no local filesystem inspection? - Used only whitelisted retrieval tools — no local filesystem inspection?
- Called retrieval at most 3 times total (not more)? - Called retrieval at most 3 times total (not more)?
- Answered immediately when results were sufficient (did NOT call again unnecessarily)? - Answered immediately when results were sufficient (did NOT call again unnecessarily)?
- Called retrieval exactly once when first results were sufficient (did NOT retry unnecessarily)?
- Did retrieval happen before any factual answer drafting? - Did retrieval happen before any factual answer drafting?
- Did every factual claim come from retrieved evidence rather than model knowledge? - Did every factual claim come from retrieved evidence rather than model knowledge?
- If any unsupported part remained, was it removed or explicitly marked unavailable? - If any unsupported part remained, was it removed or explicitly marked unavailable?

View File

@ -29,6 +29,13 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
- Do NOT answer from model knowledge first. - Do NOT answer from model knowledge first.
- After each step, evaluate sufficiency before proceeding. - After each step, evaluate sufficiency before proceeding.
### First-Call Success Principle
- The first retrieval call is expected to return sufficient results for most questions.
- Your default assumption should be: **one call is enough**.
- Additional calls are the exception, not the norm. Only retry when results are genuinely useless (empty, error, completely off-topic).
- **Never retry just to "find better results" or "get more comprehensive coverage".** Good enough is sufficient.
## 3. Query Preparation ## 3. Query Preparation
- Do NOT pass raw user question unless it already works well for retrieval. - Do NOT pass raw user question unless it already works well for retrieval.
@ -46,14 +53,30 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
**Maximum 3 retrieval calls per question.** After each call, evaluate immediately: **Maximum 3 retrieval calls per question.** After each call, evaluate immediately:
### Sufficient — answer now ### Sufficient — answer immediately, no more calls
- The core entity/topic in the user's question has been hit.
- There is direct evidence supporting the main intent of the question.
- Partial but usable coverage is sufficient — you do NOT need exhaustive or perfect coverage to answer.
- **When results are sufficient, compose the answer immediately. Do NOT call retrieval again to "double-check" or "get more context".**
### Insufficient — retry ANY of the following means results are sufficient — STOP and answer now:
- Empty, `Error:`, `no excel files found`, off-topic, missing core entity/scope, no usable evidence at all. - The core entity/topic in the user's question appears in the results.
- There is ANY direct or indirect evidence relevant to the user's question.
- Results are partially relevant, even if not perfectly comprehensive.
- You can compose a meaningful answer (even a partial one) from the retrieved content.
**Anti-patterns — do NOT do these:**
- ❌ "The results are good, but maybe different keywords could find something better."
- ❌ "I have enough to answer, but let me try one more query to be thorough."
- ❌ "The answer is here, but I want to double-check with a different query."
- ❌ Calling retrieval again after you have already identified the answer in previous results.
**If you can answer the question with current results, you MUST answer immediately. Period.**
### Insufficient — the ONLY valid reasons to retry
- Results are completely empty or contain only `Error:` / `no excel files found` messages.
- ALL results are entirely off-topic with zero relevance to the user's question.
- No usable evidence exists at all — you cannot form even a partial answer.
**"Results are not detailed enough" is NOT a valid reason to retry.**
**"Results might be incomplete" is NOT a valid reason to retry.**
## 6. Fallback and Sequential Retry ## 6. Fallback and Sequential Retry
@ -112,6 +135,7 @@ Before replying to a knowledge retrieval task, verify:
- Used only whitelisted retrieval tools — no local filesystem inspection? - Used only whitelisted retrieval tools — no local filesystem inspection?
- Called retrieval at most 3 times total (not more)? - Called retrieval at most 3 times total (not more)?
- Answered immediately when results were sufficient (did NOT call again unnecessarily)? - Answered immediately when results were sufficient (did NOT call again unnecessarily)?
- Called retrieval exactly once when first results were sufficient (did NOT retry unnecessarily)?
- Citations placed immediately after each relevant paragraph? - Citations placed immediately after each relevant paragraph?
- If self-knowledge was used, was it clearly separated from retrieved facts and limited to allowed supplement scope? - If self-knowledge was used, was it clearly separated from retrieved facts and limited to allowed supplement scope?

View File

@ -42,6 +42,13 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
- After each step, evaluate sufficiency before proceeding. - After each step, evaluate sufficiency before proceeding.
- Retrieval must happen **before** any factual answer generation. - Retrieval must happen **before** any factual answer generation.
### First-Call Success Principle
- The first retrieval call is expected to return sufficient results for most questions.
- Your default assumption should be: **one call is enough**.
- Additional calls are the exception, not the norm. Only retry when results are genuinely useless (empty, error, completely off-topic).
- **Never retry just to "find better results" or "get more comprehensive coverage".** Good enough is sufficient.
## 4. Query Preparation ## 4. Query Preparation
- Do NOT pass raw user question unless it already works well for retrieval. - Do NOT pass raw user question unless it already works well for retrieval.
@ -59,14 +66,30 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
**Maximum 3 retrieval calls per question.** After each call, evaluate immediately: **Maximum 3 retrieval calls per question.** After each call, evaluate immediately:
### Sufficient — answer now ### Sufficient — answer immediately, no more calls
- The core entity/topic in the user's question has been hit.
- There is direct evidence supporting the main intent of the question.
- Partial but usable coverage is sufficient — you do NOT need exhaustive or perfect coverage to answer.
- **When results are sufficient, compose the answer immediately. Do NOT call retrieval again to "double-check" or "get more context".**
### Insufficient — retry ANY of the following means results are sufficient — STOP and answer now:
- Empty, `Error:`, `no excel files found`, off-topic, missing core entity/scope, no usable evidence at all, or claims required by the answer are not explicitly supported. - The core entity/topic in the user's question appears in the results.
- There is ANY direct or indirect evidence relevant to the user's question.
- Results are partially relevant, even if not perfectly comprehensive.
- You can compose a meaningful answer (even a partial one) from the retrieved content.
**Anti-patterns — do NOT do these:**
- ❌ "The results are good, but maybe different keywords could find something better."
- ❌ "I have enough to answer, but let me try one more query to be thorough."
- ❌ "The answer is here, but I want to double-check with a different query."
- ❌ Calling retrieval again after you have already identified the answer in previous results.
**If you can answer the question with current results, you MUST answer immediately. Period.**
### Insufficient — the ONLY valid reasons to retry
- Results are completely empty or contain only `Error:` / `no excel files found` messages.
- ALL results are entirely off-topic with zero relevance to the user's question.
- No usable evidence exists at all — you cannot form even a partial answer.
**"Results are not detailed enough" is NOT a valid reason to retry.**
**"Results might be incomplete" is NOT a valid reason to retry.**
## 7. Fallback and Sequential Retry ## 7. Fallback and Sequential Retry
@ -124,6 +147,7 @@ Before replying to a knowledge retrieval task, verify:
- Used only whitelisted retrieval tools — no local filesystem inspection? - Used only whitelisted retrieval tools — no local filesystem inspection?
- Called retrieval at most 3 times total (not more)? - Called retrieval at most 3 times total (not more)?
- Answered immediately when results were sufficient (did NOT call again unnecessarily)? - Answered immediately when results were sufficient (did NOT call again unnecessarily)?
- Called retrieval exactly once when first results were sufficient (did NOT retry unnecessarily)?
- Did retrieval happen before any factual answer drafting? - Did retrieval happen before any factual answer drafting?
- Did every factual claim come from retrieved evidence rather than model knowledge? - Did every factual claim come from retrieved evidence rather than model knowledge?
- If any unsupported part remained, was it removed or explicitly marked unavailable? - If any unsupported part remained, was it removed or explicitly marked unavailable?

View File

@ -29,6 +29,13 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
- Do NOT answer from model knowledge first. - Do NOT answer from model knowledge first.
- After each step, evaluate sufficiency before proceeding. - After each step, evaluate sufficiency before proceeding.
### First-Call Success Principle
- The first retrieval call is expected to return sufficient results for most questions.
- Your default assumption should be: **one call is enough**.
- Additional calls are the exception, not the norm. Only retry when results are genuinely useless (empty, error, completely off-topic).
- **Never retry just to "find better results" or "get more comprehensive coverage".** Good enough is sufficient.
## 3. Query Preparation ## 3. Query Preparation
- Do NOT pass raw user question unless it already works well for retrieval. - Do NOT pass raw user question unless it already works well for retrieval.
@ -46,14 +53,30 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
**Maximum 3 retrieval calls per question.** After each call, evaluate immediately: **Maximum 3 retrieval calls per question.** After each call, evaluate immediately:
### Sufficient — answer now ### Sufficient — answer immediately, no more calls
- The core entity/topic in the user's question has been hit.
- There is direct evidence supporting the main intent of the question.
- Partial but usable coverage is sufficient — you do NOT need exhaustive or perfect coverage to answer.
- **When results are sufficient, compose the answer immediately. Do NOT call retrieval again to "double-check" or "get more context".**
### Insufficient — retry ANY of the following means results are sufficient — STOP and answer now:
- Empty, `Error:`, `no excel files found`, off-topic, missing core entity/scope, no usable evidence at all. - The core entity/topic in the user's question appears in the results.
- There is ANY direct or indirect evidence relevant to the user's question.
- Results are partially relevant, even if not perfectly comprehensive.
- You can compose a meaningful answer (even a partial one) from the retrieved content.
**Anti-patterns — do NOT do these:**
- ❌ "The results are good, but maybe different keywords could find something better."
- ❌ "I have enough to answer, but let me try one more query to be thorough."
- ❌ "The answer is here, but I want to double-check with a different query."
- ❌ Calling retrieval again after you have already identified the answer in previous results.
**If you can answer the question with current results, you MUST answer immediately. Period.**
### Insufficient — the ONLY valid reasons to retry
- Results are completely empty or contain only `Error:` / `no excel files found` messages.
- ALL results are entirely off-topic with zero relevance to the user's question.
- No usable evidence exists at all — you cannot form even a partial answer.
**"Results are not detailed enough" is NOT a valid reason to retry.**
**"Results might be incomplete" is NOT a valid reason to retry.**
## 6. Fallback and Sequential Retry ## 6. Fallback and Sequential Retry
@ -112,6 +135,7 @@ Before replying to a knowledge retrieval task, verify:
- Used only whitelisted retrieval tools — no local filesystem inspection? - Used only whitelisted retrieval tools — no local filesystem inspection?
- Called retrieval at most 3 times total (not more)? - Called retrieval at most 3 times total (not more)?
- Answered immediately when results were sufficient (did NOT call again unnecessarily)? - Answered immediately when results were sufficient (did NOT call again unnecessarily)?
- Called retrieval exactly once when first results were sufficient (did NOT retry unnecessarily)?
- Citations placed immediately after each relevant paragraph? - Citations placed immediately after each relevant paragraph?
- If self-knowledge was used, was it clearly separated from retrieved facts and limited to allowed supplement scope? - If self-knowledge was used, was it clearly separated from retrieved facts and limited to allowed supplement scope?

View File

@ -40,6 +40,13 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
- Retrieval must happen **before** any factual answer generation. - Retrieval must happen **before** any factual answer generation.
- After each step, evaluate sufficiency before proceeding. - After each step, evaluate sufficiency before proceeding.
### First-Call Success Principle
- The first retrieval call is expected to return sufficient results for most questions.
- Your default assumption should be: **one call is enough**.
- Additional calls are the exception, not the norm. Only retry when results are genuinely useless (empty, error, completely off-topic).
- **Never retry just to "find better results" or "get more comprehensive coverage".** Good enough is sufficient.
## 4. Query Preparation ## 4. Query Preparation
- Do NOT pass raw user question unless it already works well for retrieval. - Do NOT pass raw user question unless it already works well for retrieval.
@ -57,14 +64,30 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
**Maximum 3 retrieval calls per question.** After each call, evaluate immediately: **Maximum 3 retrieval calls per question.** After each call, evaluate immediately:
### Sufficient — answer now ### Sufficient — answer immediately, no more calls
- The core entity/topic in the user's question has been hit.
- There is direct evidence supporting the main intent of the question.
- Partial but usable coverage is sufficient — you do NOT need exhaustive or perfect coverage to answer.
- **When results are sufficient, compose the answer immediately. Do NOT call retrieval again to "double-check" or "get more context".**
### Insufficient — retry ANY of the following means results are sufficient — STOP and answer now:
- Empty, `Error:`, off-topic, missing core entity/scope, no usable evidence at all, or claims required by the answer are not explicitly supported. - The core entity/topic in the user's question appears in the results.
- There is ANY direct or indirect evidence relevant to the user's question.
- Results are partially relevant, even if not perfectly comprehensive.
- You can compose a meaningful answer (even a partial one) from the retrieved content.
**Anti-patterns — do NOT do these:**
- ❌ "The results are good, but maybe different keywords could find something better."
- ❌ "I have enough to answer, but let me try one more query to be thorough."
- ❌ "The answer is here, but I want to double-check with a different query."
- ❌ Calling retrieval again after you have already identified the answer in previous results.
**If you can answer the question with current results, you MUST answer immediately. Period.**
### Insufficient — the ONLY valid reasons to retry
- Results are completely empty or contain only `Error:` messages.
- ALL results are entirely off-topic with zero relevance to the user's question.
- No usable evidence exists at all — you cannot form even a partial answer.
**"Results are not detailed enough" is NOT a valid reason to retry.**
**"Results might be incomplete" is NOT a valid reason to retry.**
## 7. Fallback and Sequential Retry ## 7. Fallback and Sequential Retry
@ -114,6 +137,7 @@ Before replying to a knowledge retrieval task, verify:
- Used only whitelisted retrieval tools — no local filesystem inspection? - Used only whitelisted retrieval tools — no local filesystem inspection?
- Called retrieval at most 3 times total (not more)? - Called retrieval at most 3 times total (not more)?
- Answered immediately when results were sufficient (did NOT call again unnecessarily)? - Answered immediately when results were sufficient (did NOT call again unnecessarily)?
- Called retrieval exactly once when first results were sufficient (did NOT retry unnecessarily)?
- Did retrieval happen before any factual answer drafting? - Did retrieval happen before any factual answer drafting?
- Did every factual claim come from retrieved evidence rather than model knowledge? - Did every factual claim come from retrieved evidence rather than model knowledge?
- If any unsupported part remained, was it removed or explicitly marked unavailable? - If any unsupported part remained, was it removed or explicitly marked unavailable?

View File

@ -27,6 +27,13 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
- Do NOT answer from model knowledge first. - Do NOT answer from model knowledge first.
- After each step, evaluate sufficiency before proceeding. - After each step, evaluate sufficiency before proceeding.
### First-Call Success Principle
- The first retrieval call is expected to return sufficient results for most questions.
- Your default assumption should be: **one call is enough**.
- Additional calls are the exception, not the norm. Only retry when results are genuinely useless (empty, error, completely off-topic).
- **Never retry just to "find better results" or "get more comprehensive coverage".** Good enough is sufficient.
## 3. Query Preparation ## 3. Query Preparation
- Do NOT pass raw user question unless it already works well for retrieval. - Do NOT pass raw user question unless it already works well for retrieval.
@ -44,14 +51,30 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
**Maximum 3 retrieval calls per question.** After each call, evaluate immediately: **Maximum 3 retrieval calls per question.** After each call, evaluate immediately:
### Sufficient — answer now ### Sufficient — answer immediately, no more calls
- The core entity/topic in the user's question has been hit.
- There is direct evidence supporting the main intent of the question.
- Partial but usable coverage is sufficient — you do NOT need exhaustive or perfect coverage to answer.
- **When results are sufficient, compose the answer immediately. Do NOT call retrieval again to "double-check" or "get more context".**
### Insufficient — retry ANY of the following means results are sufficient — STOP and answer now:
- Empty, `Error:`, off-topic, missing core entity/scope, no usable evidence at all. - The core entity/topic in the user's question appears in the results.
- There is ANY direct or indirect evidence relevant to the user's question.
- Results are partially relevant, even if not perfectly comprehensive.
- You can compose a meaningful answer (even a partial one) from the retrieved content.
**Anti-patterns — do NOT do these:**
- ❌ "The results are good, but maybe different keywords could find something better."
- ❌ "I have enough to answer, but let me try one more query to be thorough."
- ❌ "The answer is here, but I want to double-check with a different query."
- ❌ Calling retrieval again after you have already identified the answer in previous results.
**If you can answer the question with current results, you MUST answer immediately. Period.**
### Insufficient — the ONLY valid reasons to retry
- Results are completely empty or contain only `Error:` messages.
- ALL results are entirely off-topic with zero relevance to the user's question.
- No usable evidence exists at all — you cannot form even a partial answer.
**"Results are not detailed enough" is NOT a valid reason to retry.**
**"Results might be incomplete" is NOT a valid reason to retry.**
## 6. Fallback and Sequential Retry ## 6. Fallback and Sequential Retry
@ -93,6 +116,7 @@ Before replying to a knowledge retrieval task, verify:
- Used only whitelisted retrieval tools — no local filesystem inspection? - Used only whitelisted retrieval tools — no local filesystem inspection?
- Called retrieval at most 3 times total (not more)? - Called retrieval at most 3 times total (not more)?
- Answered immediately when results were sufficient (did NOT call again unnecessarily)? - Answered immediately when results were sufficient (did NOT call again unnecessarily)?
- Called retrieval exactly once when first results were sufficient (did NOT retry unnecessarily)?
- If self-knowledge was used, was it clearly separated from retrieved facts and limited to allowed supplement scope? - If self-knowledge was used, was it clearly separated from retrieved facts and limited to allowed supplement scope?
If any answer is "no", correct the process first. If any answer is "no", correct the process first.

View File

@ -40,6 +40,13 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
- After each step, evaluate sufficiency before proceeding. - After each step, evaluate sufficiency before proceeding.
- Retrieval must happen **before** any factual answer generation. - Retrieval must happen **before** any factual answer generation.
### First-Call Success Principle
- The first retrieval call is expected to return sufficient results for most questions.
- Your default assumption should be: **one call is enough**.
- Additional calls are the exception, not the norm. Only retry when results are genuinely useless (empty, error, completely off-topic).
- **Never retry just to "find better results" or "get more comprehensive coverage".** Good enough is sufficient.
## 4. Query Preparation ## 4. Query Preparation
- Do NOT pass raw user question unless it already works well for retrieval. - Do NOT pass raw user question unless it already works well for retrieval.
@ -57,14 +64,30 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
**Maximum 3 retrieval calls per question.** After each call, evaluate immediately: **Maximum 3 retrieval calls per question.** After each call, evaluate immediately:
### Sufficient — answer now ### Sufficient — answer immediately, no more calls
- The core entity/topic in the user's question has been hit.
- There is direct evidence supporting the main intent of the question.
- Partial but usable coverage is sufficient — you do NOT need exhaustive or perfect coverage to answer.
- **When results are sufficient, compose the answer immediately. Do NOT call retrieval again to "double-check" or "get more context".**
### Insufficient — retry ANY of the following means results are sufficient — STOP and answer now:
- Empty, `Error:`, off-topic, missing core entity/scope, no usable evidence at all, or claims required by the answer are not explicitly supported. - The core entity/topic in the user's question appears in the results.
- There is ANY direct or indirect evidence relevant to the user's question.
- Results are partially relevant, even if not perfectly comprehensive.
- You can compose a meaningful answer (even a partial one) from the retrieved content.
**Anti-patterns — do NOT do these:**
- ❌ "The results are good, but maybe different keywords could find something better."
- ❌ "I have enough to answer, but let me try one more query to be thorough."
- ❌ "The answer is here, but I want to double-check with a different query."
- ❌ Calling retrieval again after you have already identified the answer in previous results.
**If you can answer the question with current results, you MUST answer immediately. Period.**
### Insufficient — the ONLY valid reasons to retry
- Results are completely empty or contain only `Error:` messages.
- ALL results are entirely off-topic with zero relevance to the user's question.
- No usable evidence exists at all — you cannot form even a partial answer.
**"Results are not detailed enough" is NOT a valid reason to retry.**
**"Results might be incomplete" is NOT a valid reason to retry.**
## 7. Fallback and Sequential Retry ## 7. Fallback and Sequential Retry
@ -114,6 +137,7 @@ Before replying to a knowledge retrieval task, verify:
- Used only whitelisted retrieval tools — no local filesystem inspection? - Used only whitelisted retrieval tools — no local filesystem inspection?
- Called retrieval at most 3 times total (not more)? - Called retrieval at most 3 times total (not more)?
- Answered immediately when results were sufficient (did NOT call again unnecessarily)? - Answered immediately when results were sufficient (did NOT call again unnecessarily)?
- Called retrieval exactly once when first results were sufficient (did NOT retry unnecessarily)?
- Did retrieval happen before any factual answer drafting? - Did retrieval happen before any factual answer drafting?
- Did every factual claim come from retrieved evidence rather than model knowledge? - Did every factual claim come from retrieved evidence rather than model knowledge?
- If any unsupported part remained, was it removed or explicitly marked unavailable? - If any unsupported part remained, was it removed or explicitly marked unavailable?

View File

@ -27,6 +27,13 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
- Do NOT answer from model knowledge first. - Do NOT answer from model knowledge first.
- After each step, evaluate sufficiency before proceeding. - After each step, evaluate sufficiency before proceeding.
### First-Call Success Principle
- The first retrieval call is expected to return sufficient results for most questions.
- Your default assumption should be: **one call is enough**.
- Additional calls are the exception, not the norm. Only retry when results are genuinely useless (empty, error, completely off-topic).
- **Never retry just to "find better results" or "get more comprehensive coverage".** Good enough is sufficient.
## 3. Query Preparation ## 3. Query Preparation
- Do NOT pass raw user question unless it already works well for retrieval. - Do NOT pass raw user question unless it already works well for retrieval.
@ -44,14 +51,30 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
**Maximum 3 retrieval calls per question.** After each call, evaluate immediately: **Maximum 3 retrieval calls per question.** After each call, evaluate immediately:
### Sufficient — answer now ### Sufficient — answer immediately, no more calls
- The core entity/topic in the user's question has been hit.
- There is direct evidence supporting the main intent of the question.
- Partial but usable coverage is sufficient — you do NOT need exhaustive or perfect coverage to answer.
- **When results are sufficient, compose the answer immediately. Do NOT call retrieval again to "double-check" or "get more context".**
### Insufficient — retry ANY of the following means results are sufficient — STOP and answer now:
- Empty, `Error:`, off-topic, missing core entity/scope, no usable evidence at all. - The core entity/topic in the user's question appears in the results.
- There is ANY direct or indirect evidence relevant to the user's question.
- Results are partially relevant, even if not perfectly comprehensive.
- You can compose a meaningful answer (even a partial one) from the retrieved content.
**Anti-patterns — do NOT do these:**
- ❌ "The results are good, but maybe different keywords could find something better."
- ❌ "I have enough to answer, but let me try one more query to be thorough."
- ❌ "The answer is here, but I want to double-check with a different query."
- ❌ Calling retrieval again after you have already identified the answer in previous results.
**If you can answer the question with current results, you MUST answer immediately. Period.**
### Insufficient — the ONLY valid reasons to retry
- Results are completely empty or contain only `Error:` messages.
- ALL results are entirely off-topic with zero relevance to the user's question.
- No usable evidence exists at all — you cannot form even a partial answer.
**"Results are not detailed enough" is NOT a valid reason to retry.**
**"Results might be incomplete" is NOT a valid reason to retry.**
## 6. Fallback and Sequential Retry ## 6. Fallback and Sequential Retry
@ -102,6 +125,7 @@ Before replying to a knowledge retrieval task, verify:
- Used only whitelisted retrieval tools — no local filesystem inspection? - Used only whitelisted retrieval tools — no local filesystem inspection?
- Called retrieval at most 3 times total (not more)? - Called retrieval at most 3 times total (not more)?
- Answered immediately when results were sufficient (did NOT call again unnecessarily)? - Answered immediately when results were sufficient (did NOT call again unnecessarily)?
- Called retrieval exactly once when first results were sufficient (did NOT retry unnecessarily)?
- Citations placed immediately after each relevant paragraph? - Citations placed immediately after each relevant paragraph?
- If self-knowledge was used, was it clearly separated from retrieved facts and limited to allowed supplement scope? - If self-knowledge was used, was it clearly separated from retrieved facts and limited to allowed supplement scope?

View File

@ -42,6 +42,13 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
- After each step, evaluate sufficiency before proceeding. - After each step, evaluate sufficiency before proceeding.
- Retrieval must happen **before** any factual answer generation. - Retrieval must happen **before** any factual answer generation.
### First-Call Success Principle
- The first retrieval call is expected to return sufficient results for most questions.
- Your default assumption should be: **one call is enough**.
- Additional calls are the exception, not the norm. Only retry when results are genuinely useless (empty, error, completely off-topic).
- **Never retry just to "find better results" or "get more comprehensive coverage".** Good enough is sufficient.
## 4. Query Preparation ## 4. Query Preparation
- Do NOT pass raw user question unless it already works well for retrieval. - Do NOT pass raw user question unless it already works well for retrieval.
@ -59,14 +66,30 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
**Maximum 3 retrieval calls per question.** After each call, evaluate immediately: **Maximum 3 retrieval calls per question.** After each call, evaluate immediately:
### Sufficient — answer now ### Sufficient — answer immediately, no more calls
- The core entity/topic in the user's question has been hit.
- There is direct evidence supporting the main intent of the question.
- Partial but usable coverage is sufficient — you do NOT need exhaustive or perfect coverage to answer.
- **When results are sufficient, compose the answer immediately. Do NOT call retrieval again to "double-check" or "get more context".**
### Insufficient — retry ANY of the following means results are sufficient — STOP and answer now:
- Empty, `Error:`, `no excel files found`, off-topic, missing core entity/scope, no usable evidence at all, or claims required by the answer are not explicitly supported. - The core entity/topic in the user's question appears in the results.
- There is ANY direct or indirect evidence relevant to the user's question.
- Results are partially relevant, even if not perfectly comprehensive.
- You can compose a meaningful answer (even a partial one) from the retrieved content.
**Anti-patterns — do NOT do these:**
- ❌ "The results are good, but maybe different keywords could find something better."
- ❌ "I have enough to answer, but let me try one more query to be thorough."
- ❌ "The answer is here, but I want to double-check with a different query."
- ❌ Calling retrieval again after you have already identified the answer in previous results.
**If you can answer the question with current results, you MUST answer immediately. Period.**
### Insufficient — the ONLY valid reasons to retry
- Results are completely empty or contain only `Error:` / `no excel files found` messages.
- ALL results are entirely off-topic with zero relevance to the user's question.
- No usable evidence exists at all — you cannot form even a partial answer.
**"Results are not detailed enough" is NOT a valid reason to retry.**
**"Results might be incomplete" is NOT a valid reason to retry.**
## 7. Fallback and Sequential Retry ## 7. Fallback and Sequential Retry
@ -124,6 +147,7 @@ Before replying to a knowledge retrieval task, verify:
- Used only whitelisted retrieval tools — no local filesystem inspection? - Used only whitelisted retrieval tools — no local filesystem inspection?
- Called retrieval at most 3 times total (not more)? - Called retrieval at most 3 times total (not more)?
- Answered immediately when results were sufficient (did NOT call again unnecessarily)? - Answered immediately when results were sufficient (did NOT call again unnecessarily)?
- Called retrieval exactly once when first results were sufficient (did NOT retry unnecessarily)?
- Did retrieval happen before any factual answer drafting? - Did retrieval happen before any factual answer drafting?
- Did every factual claim come from retrieved evidence rather than model knowledge? - Did every factual claim come from retrieved evidence rather than model knowledge?
- If any unsupported part remained, was it removed or explicitly marked unavailable? - If any unsupported part remained, was it removed or explicitly marked unavailable?

View File

@ -27,6 +27,13 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
- Do NOT answer from model knowledge first. - Do NOT answer from model knowledge first.
- After each step, evaluate sufficiency before proceeding. - After each step, evaluate sufficiency before proceeding.
### First-Call Success Principle
- The first retrieval call is expected to return sufficient results for most questions.
- Your default assumption should be: **one call is enough**.
- Additional calls are the exception, not the norm. Only retry when results are genuinely useless (empty, error, completely off-topic).
- **Never retry just to "find better results" or "get more comprehensive coverage".** Good enough is sufficient.
## 3. Query Preparation ## 3. Query Preparation
- Do NOT pass raw user question unless it already works well for retrieval. - Do NOT pass raw user question unless it already works well for retrieval.
@ -44,14 +51,30 @@ Execute **sequentially, one at a time**. Do NOT run in parallel. Do NOT probe fi
**Maximum 3 retrieval calls per question.** After each call, evaluate immediately: **Maximum 3 retrieval calls per question.** After each call, evaluate immediately:
### Sufficient — answer now ### Sufficient — answer immediately, no more calls
- The core entity/topic in the user's question has been hit.
- There is direct evidence supporting the main intent of the question.
- Partial but usable coverage is sufficient — you do NOT need exhaustive or perfect coverage to answer.
- **When results are sufficient, compose the answer immediately. Do NOT call retrieval again to "double-check" or "get more context".**
### Insufficient — retry ANY of the following means results are sufficient — STOP and answer now:
- Empty, `Error:`, off-topic, missing core entity/scope, no usable evidence at all. - The core entity/topic in the user's question appears in the results.
- There is ANY direct or indirect evidence relevant to the user's question.
- Results are partially relevant, even if not perfectly comprehensive.
- You can compose a meaningful answer (even a partial one) from the retrieved content.
**Anti-patterns — do NOT do these:**
- ❌ "The results are good, but maybe different keywords could find something better."
- ❌ "I have enough to answer, but let me try one more query to be thorough."
- ❌ "The answer is here, but I want to double-check with a different query."
- ❌ Calling retrieval again after you have already identified the answer in previous results.
**If you can answer the question with current results, you MUST answer immediately. Period.**
### Insufficient — the ONLY valid reasons to retry
- Results are completely empty or contain only `Error:` messages.
- ALL results are entirely off-topic with zero relevance to the user's question.
- No usable evidence exists at all — you cannot form even a partial answer.
**"Results are not detailed enough" is NOT a valid reason to retry.**
**"Results might be incomplete" is NOT a valid reason to retry.**
## 6. Fallback and Sequential Retry ## 6. Fallback and Sequential Retry
@ -102,6 +125,7 @@ Before replying to a knowledge retrieval task, verify:
- Used only whitelisted retrieval tools — no local filesystem inspection? - Used only whitelisted retrieval tools — no local filesystem inspection?
- Called retrieval at most 3 times total (not more)? - Called retrieval at most 3 times total (not more)?
- Answered immediately when results were sufficient (did NOT call again unnecessarily)? - Answered immediately when results were sufficient (did NOT call again unnecessarily)?
- Called retrieval exactly once when first results were sufficient (did NOT retry unnecessarily)?
- Citations placed immediately after each relevant paragraph? - Citations placed immediately after each relevant paragraph?
- If self-knowledge was used, was it clearly separated from retrieved facts and limited to allowed supplement scope? - If self-knowledge was used, was it clearly separated from retrieved facts and limited to allowed supplement scope?