fix(athena): implement 10 prompt audit fixes from council review

- Fix 1: Clarify 'restart at Step 3' → 'restart the council workflow from Step 3 (intent classification)'
- Fix 2: Replace {council-session-name} with static references to council_finalize archive_dir
- Fix 3: Add documenting comment for call_omo_agent in solo mode allowlist
- Fix 4: Add delegation agent rationale comment to RUNTIME_GUIDANCE_BY_INTENT
- Fix 5: Type-safe COUNCIL_INTENT_ADDENDUMS with Record<CouncilIntent, string>
- Fix 6: Clarify FREEFORM wording re COUNCIL_MEMBER_RESPONSE tag requirement
- Fix 7: Remove dead Step 15 fallback from agent.ts
- Fix 8: Add compound question intent precedence guidance
- Fix 9: Fix AUDIT double-period typo
- Fix 10: Add edge case test for extractCouncilResponse with literal tag text
This commit is contained in:
ismeth
2026-03-01 02:52:42 +01:00
committed by YeonGyu-Kim
parent c265200f5f
commit 227a59a796
6 changed files with 56 additions and 26 deletions
@@ -64,6 +64,26 @@ describe("extractCouncilResponse", () => {
})
})
describe("#given response body contains literal COUNCIL_MEMBER_RESPONSE tag text", () => {
it("#then extracts the actual tagged response, not the discussed tag", () => {
const text = [
"Here is my exploration log where I discuss the tag format.",
"The system uses <COUNCIL_MEMBER_RESPONSE> tags for extraction.",
"Now here is my actual response:",
"<COUNCIL_MEMBER_RESPONSE>",
"## Finding 1: Tag discussion in body",
"The extractor uses lastIndexOf to find the opening tag.",
"</COUNCIL_MEMBER_RESPONSE>",
].join("\n")
const result = extractCouncilResponse(text)
expect(result).toEqual({
has_response: true,
response_complete: true,
result: "## Finding 1: Tag discussion in body\nThe extractor uses lastIndexOf to find the opening tag.",
})
})
})
describe("#given an empty string", () => {
it("#then returns has_response false and null result", () => {
const result = extractCouncilResponse("")