Commit eb40dfa
remove string hints — consolidate to hints_structured with reason field
Remove the redundant `hints: list[str]` field from all five MCP tool
output models. Consolidate advisory text into a new `reason: str` field
on StructuredHint. Eliminate dual-emission maintenance burden and the
parity test.
- Remove all TPL_* string template constants from mcp_hints.py
- Remove finalize_hint_list, MCP_HINTS_FIELD_DESCRIPTION, and
string-only helper functions
- Add reason: str = "" to both _StructuredHint and StructuredHint
- Change generate_hints return type to list[_StructuredHint]
- Remove hints: list[str] from SearchOutput, FindOutput,
DescribeOutput, NeighborsOutput, ResolveOutput
- Update server.py tool descriptions to reference hints_structured
- Migrate all test assertions from out.hints to out.hints_structured
- Add test_structured_hints_reason_char_cap and test_no_string_hints_field
Implements: plans/PLAN-HINTS-STRING-REMOVAL.md (PR-1)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>1 parent eb8510b commit eb40dfa
5 files changed
Lines changed: 413 additions & 1171 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
| 19 | + | |
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| |||
0 commit comments