Persist cumulative investigation briefs and trim live bookkeeping

This commit is contained in:
Nico committed 2026-10-16 22:59:28 +02:00
1 parent b3753b1d6d
commit 816f525ef4
21 files changed
+1338 -22

No files matched your search

@@ -9,11 +9,16 @@ PROMPT_VERSION="investigation_v1"
def output_schema(context=None):
name = "investigation-project-output-v1.schema.json" if context and "x-project-bindings" in context["tool_schema"] else "investigation-output-v1.schema.json"
schema=json.loads(files("viano_bug_analysis.schemas").joinpath(name).read_text())
if context and context.get('prompt_version') == 'investigation_project_v12':
if context and context.get('prompt_version') in {'investigation_project_v12','investigation_project_v13'}:
schema['properties']['update']['properties']['causal_review'] = json.loads(
files('viano_bug_analysis.schemas').joinpath('investigation-causal-review-v1.schema.json').read_text())
schema['properties']['update']['required'].append('causal_review')
if context and context.get("prompt_version") in {"investigation_v2","investigation_project_v3","investigation_v3","investigation_project_v4","investigation_project_v5","investigation_project_v6","investigation_project_v7","investigation_project_v8","investigation_project_v9","investigation_project_v10","investigation_project_v11","investigation_project_v12"}:
if context and context.get('prompt_version') == 'investigation_project_v13':
schema['properties']['update']['properties']['working_brief'] = json.loads(
files('viano_bug_analysis.schemas').joinpath('investigation-working-brief-v1.schema.json').read_text())
schema['properties']['update']['required'].append('working_brief')
schema['properties']['update']['properties']['note']['maxLength'] = 400
if context and context.get("prompt_version") in {"investigation_v2","investigation_project_v3","investigation_v3","investigation_project_v4","investigation_project_v5","investigation_project_v6","investigation_project_v7","investigation_project_v8","investigation_project_v9","investigation_project_v10","investigation_project_v11","investigation_project_v12","investigation_project_v13"}:
schema["properties"]["next"]["oneOf"].extend(json.loads(files("viano_bug_analysis.schemas").joinpath("investigation-early-actions-v1.schema.json").read_text())["oneOf"])
if context and context.get('prompt_version') in {'investigation_project_v8','investigation_project_v9'}:
schema['properties']['next']['oneOf'].append({
@@ -27,11 +32,14 @@ def output_schema(context=None):
def build_prompt(context):
schema=output_schema(context)
version = "investigation_project_v1" if "x-project-bindings" in context["tool_schema"] else PROMPT_VERSION
if context.get('prompt_version') in {'investigation_project_v2','investigation_project_v3','investigation_project_v4','investigation_project_v5','investigation_project_v6','investigation_project_v7','investigation_project_v8','investigation_project_v9','investigation_project_v10','investigation_project_v11','investigation_project_v12'}:
if context.get('prompt_version') in {'investigation_project_v2','investigation_project_v3','investigation_project_v4','investigation_project_v5','investigation_project_v6','investigation_project_v7','investigation_project_v8','investigation_project_v9','investigation_project_v10','investigation_project_v11','investigation_project_v12','investigation_project_v13'}:
from .investigation_view import working_view
from .model_context import model_json
version = context['prompt_version']
if version in {'investigation_project_v10','investigation_project_v11','investigation_project_v12'}:
if version == 'investigation_project_v13':
from .working_brief import model_view
visible = model_view(context)
elif version in {'investigation_project_v10','investigation_project_v11','investigation_project_v12'}:
from .investigation_focus import full_history_view
visible = full_history_view(context)
elif version in {'investigation_project_v8','investigation_project_v9'}: