feat(server): settings pack — 22 environment tools behind TOOL_PACKS, lean grows to 55, three groups, golden set +10
Task 24 (merge sanity) on main after the five track E groups merged.
- TOOL_PACK_NAMES = ("core", "pid", "settings"); PACK_TOOL_NAMES["settings"]
is exactly the 22 SECTION 20 tools. Styles and page setup stay in core.
- LEAN_TOOL_NAMES += page_setup_apply, batch_plot (53 -> 55).
- _GROUP_TAG_PRIORITY / _GROUP_TAG_LABELS: "style" moved up next to "pid",
"pagesetup" -> page_setup and "environment" -> environment added; the 28
SECTION 19/20 decorators gain their section tag, so _tool_groups() reports
styles 10 / page_setup 6 / environment 22 (23 groups, 204 tools) and
pack == group == section for the settings pack.
- SECTION headers, backends/base.py composition, contracts/__init__.py
exports and the layer_states feature entry were already correct after the
merge (read and confirmed, nothing edited).
- Pack text: config.py, .env.example, README config row; README <sub> line
204 tools in 23 groups; release snapshot 3259 collected tests (measured).
- docs/tool-inventory.json regenerated; registry snapshot re-derived.
- tests: test_tool_packs.py replaced (11 tests), test_capability_contract.py
+3 (composition, the agreed capability flags, layer_states honesty),
golden set +10 tuning cases (81 = 66 tuning + 15 holdout); all ten route
in the top 3 without alias edits.
Deviation from the plan text: TRACK_E_KEYS carries five keys, not six. The
plan's "mleaderstyle" (ezdxf True / com False) contradicts spec §8.1, which
retracted that key because the ActiveX route exists (§4.2); measured on the
tree: capability_keys() == {boundary_trace, chspace, interactive_prompt,
live_application, preferences, revcloud, wipeout}, and
ComBackend.mleaderstyle_create is a native implementation
(backends/com_backend.py:6752, is_capability_default -> False). The test now
also asserts the key is absent.
No new ActiveX call was written in this task, so no live probe was needed.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FKFStjEFzpGyLq5bMpWxTd
This commit is contained in:
co-authored by
Claude Opus 5
parent
90c1194f7f
commit
70afd57831
@@ -1,6 +1,6 @@
|
||||
"""Golden query set for tool discovery: English in, one right tool out.
|
||||
|
||||
Seventy-one cases (56 tuning + 15 holdout) split into a **tuning** set and a
|
||||
Eighty-one cases (66 tuning + 15 holdout) split into a **tuning** set and a
|
||||
**holdout** set. The split is
|
||||
the point of the file. Ranking work is measured against
|
||||
:data:`TUNING_CASES` only; :data:`HOLDOUT_CASES` were written at the same time,
|
||||
@@ -155,6 +155,25 @@ TUNING_CASES: tuple[GoldenCase, ...] = (
|
||||
),
|
||||
GoldenCase("create a text style that uses the isocp font", "textstyle_create", "paraphrase"),
|
||||
GoldenCase("which dimension styles are defined", "dimstyle_list", "counting", risk="read"),
|
||||
# v1.6 track E — styles, page setup, templates, environment. Written
|
||||
# before the alias records were measured against them; a miss here is
|
||||
# fixed by adding vocabulary to the tool's record in discovery/aliases.py,
|
||||
# never by moving the expectation.
|
||||
GoldenCase("PAGESETUP", "page_setup_apply", "command"),
|
||||
GoldenCase("PUBLISH", "batch_plot", "command"),
|
||||
GoldenCase("MLEADERSTYLE", "mleaderstyle_create", "command"),
|
||||
GoldenCase("STYLE", "textstyle_create", "command"),
|
||||
GoldenCase("iso 25 dimension style", "dimstyle_create", "synonym"),
|
||||
GoldenCase("layer snapshot", "layer_state_save", "synonym"),
|
||||
GoldenCase("save this drawing as a template", "drawing_template_save", "paraphrase"),
|
||||
GoldenCase("switch to the other open drawing", "document_activate", "paraphrase"),
|
||||
GoldenCase("ask the operator to click a point on screen", "user_pick_point", "paraphrase"),
|
||||
GoldenCase(
|
||||
"what does the LTSCALE variable mean",
|
||||
"system_variable_describe",
|
||||
"counting",
|
||||
risk="read",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user