From 83214db7d88f399d6b59ad809eb3771b874e260b Mon Sep 17 00:00:00 2001 From: Olli-Pekka Heinisuo Date: Wed, 14 Oct 2026 14:50:25 +0300 Subject: [PATCH] test: sync the Ask display contract without the follow-up nudge The backend verified-answer notice again ends "open a source only for details this answer does not cover" (githits-backend #561, reverting the follow-up research nudge). In the 2026-10-14 harness benchmark the nudge led 6 of 15 sessions to ask a second research question, mostly confirming details already answered, which took 31% of research time. The fixture is copied from the backend contract unchanged. Co-Authored-By: Claude Opus 5.5 --- .../src/services/fixtures/ask-display-contract.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/core-internal/src/services/fixtures/ask-display-contract.json b/packages/core-internal/src/services/fixtures/ask-display-contract.json index f36ee48a..c472ece1 100644 --- a/packages/core-internal/src/services/fixtures/ask-display-contract.json +++ b/packages/core-internal/src/services/fixtures/ask-display-contract.json @@ -1,16 +1,16 @@ { "cli": { - "display_markdown": "Use the documented helper.\n\nEvidence by question part:\n- How dependencies are resolved: [1]\n- Declaring a dependency: [1], [2]\n\nSources (already read; citations, not next steps):\n 1. npx githits@latest read --lines 100-140 -- pypi:fastapi@0.116.1 --json\n FastAPI library source that builds a Dependant from a path\n ```\n 100| def get_dependant(\n 101| *,\n 102| path: str,\n 103| call: Callable[..., Any],\n 104| name: Optional[str] = None,\n 105| security_scopes: Optional[List[str]] = None,\n 106| use_cache: bool = True,\n 107| ) -> Dependant:\n ```\n 2. npx githits@latest read --lines 20-45 -- --help\n ````\n 20| ## Create a dependency\n 21|\n 22| ```Python\n 23| async def common_parameters(q: str | None = None):\n 24| return {\"q\": q}\n 25| ```\n ````\n\nResearch run ID: 01900000-0000-7000-8000-000000000030\nThread ID: 01900000-0000-7000-8000-000000000031\nUse this thread ID for follow-ups; name a new project or version in the question to change scope.\n\nVerified answer: GitHits already read and checked the cited sources; the evidence and key lines are shown above. Do not re-read or search them again to confirm it. If your task needs a detail this answer does not cover, ask one follow-up research question with the thread ID above instead of searching.\n", + "display_markdown": "Use the documented helper.\n\nEvidence by question part:\n- How dependencies are resolved: [1]\n- Declaring a dependency: [1], [2]\n\nSources (already read; citations, not next steps):\n 1. npx githits@latest read --lines 100-140 -- pypi:fastapi@0.116.1 --json\n FastAPI library source that builds a Dependant from a path\n ```\n 100| def get_dependant(\n 101| *,\n 102| path: str,\n 103| call: Callable[..., Any],\n 104| name: Optional[str] = None,\n 105| security_scopes: Optional[List[str]] = None,\n 106| use_cache: bool = True,\n 107| ) -> Dependant:\n ```\n 2. npx githits@latest read --lines 20-45 -- --help\n ````\n 20| ## Create a dependency\n 21|\n 22| ```Python\n 23| async def common_parameters(q: str | None = None):\n 24| return {\"q\": q}\n 25| ```\n ````\n\nResearch run ID: 01900000-0000-7000-8000-000000000030\nThread ID: 01900000-0000-7000-8000-000000000031\nUse this thread ID for follow-ups; name a new project or version in the question to change scope.\n\nVerified answer: GitHits already read and checked the cited sources; the evidence and key lines are shown above. Do not re-read or search them again to confirm it; open a source only for details this answer does not cover.\n", "tool_call_id": "01900000-0000-7000-8000-000000000030", "thread_id": "01900000-0000-7000-8000-000000000031" }, "mcp": { - "display_markdown": "Use the documented helper.\n\nEvidence by question part:\n- How dependencies are resolved: [1]\n- Declaring a dependency: [1], [2]\n\nSources (already read; citations, not next steps):\n 1. read({\"target\":\"pypi:fastapi@0.116.1\",\"path\":\"--json\",\"start_line\":100,\"end_line\":140})\n FastAPI library source that builds a Dependant from a path\n ```\n 100| def get_dependant(\n 101| *,\n 102| path: str,\n 103| call: Callable[..., Any],\n 104| name: Optional[str] = None,\n 105| security_scopes: Optional[List[str]] = None,\n 106| use_cache: bool = True,\n 107| ) -> Dependant:\n ```\n 2. read({\"target\":\"--help\",\"start_line\":20,\"end_line\":45})\n ````\n 20| ## Create a dependency\n 21|\n 22| ```Python\n 23| async def common_parameters(q: str | None = None):\n 24| return {\"q\": q}\n 25| ```\n ````\n\nResearch run ID: 01900000-0000-7000-8000-000000000030\nThread ID: 01900000-0000-7000-8000-000000000031\nUse this thread ID for follow-ups; name a new project or version in the question to change scope.\n\nVerified answer: GitHits already read and checked the cited sources; the evidence and key lines are shown above. Do not re-read or search them again to confirm it. If your task needs a detail this answer does not cover, ask one follow-up research question with the thread ID above instead of searching.\n", + "display_markdown": "Use the documented helper.\n\nEvidence by question part:\n- How dependencies are resolved: [1]\n- Declaring a dependency: [1], [2]\n\nSources (already read; citations, not next steps):\n 1. read({\"target\":\"pypi:fastapi@0.116.1\",\"path\":\"--json\",\"start_line\":100,\"end_line\":140})\n FastAPI library source that builds a Dependant from a path\n ```\n 100| def get_dependant(\n 101| *,\n 102| path: str,\n 103| call: Callable[..., Any],\n 104| name: Optional[str] = None,\n 105| security_scopes: Optional[List[str]] = None,\n 106| use_cache: bool = True,\n 107| ) -> Dependant:\n ```\n 2. read({\"target\":\"--help\",\"start_line\":20,\"end_line\":45})\n ````\n 20| ## Create a dependency\n 21|\n 22| ```Python\n 23| async def common_parameters(q: str | None = None):\n 24| return {\"q\": q}\n 25| ```\n ````\n\nResearch run ID: 01900000-0000-7000-8000-000000000030\nThread ID: 01900000-0000-7000-8000-000000000031\nUse this thread ID for follow-ups; name a new project or version in the question to change scope.\n\nVerified answer: GitHits already read and checked the cited sources; the evidence and key lines are shown above. Do not re-read or search them again to confirm it; open a source only for details this answer does not cover.\n", "tool_call_id": "01900000-0000-7000-8000-000000000030", "thread_id": "01900000-0000-7000-8000-000000000031" }, "url": { - "display_markdown": "Use the documented helper.\n\nEvidence by question part:\n- How dependencies are resolved: [1]\n- Declaring a dependency: [1], [2]\n\nSources (already read; citations, not next steps):\n 1. https://github.com/fastapi/fastapi/blob/abc123/fastapi/dependencies/utils.py#L100-L140\n FastAPI library source that builds a Dependant from a path\n ```\n 100| def get_dependant(\n 101| *,\n 102| path: str,\n 103| call: Callable[..., Any],\n 104| name: Optional[str] = None,\n 105| security_scopes: Optional[List[str]] = None,\n 106| use_cache: bool = True,\n 107| ) -> Dependant:\n ```\n 2. https://fastapi.tiangolo.com/tutorial/dependencies/\n ````\n 20| ## Create a dependency\n 21|\n 22| ```Python\n 23| async def common_parameters(q: str | None = None):\n 24| return {\"q\": q}\n 25| ```\n ````\n\nResearch run ID: 01900000-0000-7000-8000-000000000030\nThread ID: 01900000-0000-7000-8000-000000000031\nUse this thread ID for follow-ups; name a new project or version in the question to change scope.\n\nVerified answer: GitHits already read and checked the cited sources; the evidence and key lines are shown above. Do not re-read or search them again to confirm it. If your task needs a detail this answer does not cover, ask one follow-up research question with the thread ID above instead of searching.\n", + "display_markdown": "Use the documented helper.\n\nEvidence by question part:\n- How dependencies are resolved: [1]\n- Declaring a dependency: [1], [2]\n\nSources (already read; citations, not next steps):\n 1. https://github.com/fastapi/fastapi/blob/abc123/fastapi/dependencies/utils.py#L100-L140\n FastAPI library source that builds a Dependant from a path\n ```\n 100| def get_dependant(\n 101| *,\n 102| path: str,\n 103| call: Callable[..., Any],\n 104| name: Optional[str] = None,\n 105| security_scopes: Optional[List[str]] = None,\n 106| use_cache: bool = True,\n 107| ) -> Dependant:\n ```\n 2. https://fastapi.tiangolo.com/tutorial/dependencies/\n ````\n 20| ## Create a dependency\n 21|\n 22| ```Python\n 23| async def common_parameters(q: str | None = None):\n 24| return {\"q\": q}\n 25| ```\n ````\n\nResearch run ID: 01900000-0000-7000-8000-000000000030\nThread ID: 01900000-0000-7000-8000-000000000031\nUse this thread ID for follow-ups; name a new project or version in the question to change scope.\n\nVerified answer: GitHits already read and checked the cited sources; the evidence and key lines are shown above. Do not re-read or search them again to confirm it; open a source only for details this answer does not cover.\n", "tool_call_id": "01900000-0000-7000-8000-000000000030", "thread_id": "01900000-0000-7000-8000-000000000031" },