Merge remote-tracking branch 'origin/main' into rebase-358
All checks were successful
G12 Leak-Guard / leak-guard (pull_request) Successful in 3s
Lint — undefined names / undefined-names (pull_request) Successful in 10s

# Conflicts:
#	docs/spec/04-analysis-writing.md
This commit is contained in:
2026-06-30 12:16:41 +00:00
15 changed files with 966 additions and 61 deletions

View File

@@ -4678,15 +4678,21 @@ async def api_mcp_blocks():
"block-yod-alef": "Disposition",
"block-yod-bet": "Disposition (signatures)",
}
from legal_mcp.services.block_writer import GENERATION_MODEL
blocks = []
for block_id, cfg in sorted(BLOCK_CONFIG.items(), key=lambda kv: kv[1]["index"]):
is_ai = cfg["model"] == "ai"
blocks.append({
"id": block_id,
"index": cfg["index"],
"title": cfg["title"],
"gen_type": cfg["gen_type"],
"model": cfg["model"],
"temperature": cfg.get("temp"),
# AI blocks are pinned to one model (#204); template blocks = "script".
"model": GENERATION_MODEL if is_ai else cfg["model"],
# The live generation knob (replaces the deprecated `temperature`,
# which is not a real param on Opus 4.7/4.8). None for template blocks.
"effort": cfg.get("effort") if is_ai else None,
"max_tokens": cfg.get("max_tokens"),
"creac_role": CREAC_ROLE.get(block_id),
"jwm_purpose": JWM_PURPOSE.get(block_id),