Distills the design from PR #560 onto current main:
- "overview" now expands to every aspect except file_tree (the per-file
listing that alone can push the payload past the MCP output cap).
Previously the token matched nothing and silently degraded to just
{total_nodes,total_edges}. Both aspect gates (want_aspect in store.c,
aspect_wanted in mcp.c) share one predicate,
cbm_store_arch_aspect_in_overview, declared in store.h so the two
sites cannot drift.
- The aspects items schema gains an enum of the 13 valid tokens
(advisory, client-side), mirroring VALID_ASPECTS.
- Server-side validation (authoritative): unknown aspect tokens now
return an isError result listing the valid values instead of a
silent near-empty response. Bounded snprintf; respects the existing
16-token aspects cap.
Reproduce-first tests: overview-subset and unknown-aspect tests fail on
the unfixed code; a parsed tools/list guard pins the schema enum.
Co-authored-by: Kirchlive <roberto.livebox@gmail.com>
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>