Repository navigation
test(parity): cross-surface parity, traceability and docs (Spec 109-m) - #1461
Merged
Merged
Conversation
…ame parity (Spec 109-m) Adds the Go source for the tool approval, activity view and client presence enums (internal/contracts/terminology.go), generates them into contracts.ts, pins all six FR-090 families in one golden decoded by Go, and scans UI and CLI string literals for retired names. Deletes the dead NavBar.vue. Related #1383
… and macOS (Spec 109-m) One attention fixture is computed by Compute, served by GET /attention and SSE, and replayed through the CLI, the Web Home list, header pill and sidebar badge, and the macOS Home model, tray group and badge. One registry fixture pins the catalog search order across REST, MCP, CLI, Web and macOS. The Web Activity view and tool tier labels now come from exported tables so the terminology golden can pin them. Related #1383
…rding (Spec 109-m) The last-resort status text on the Web card, ServerDetail header and the macOS tray first line said Connected for a connected-but-unusable server whose payload carried neither a status nor a summary. It now reads Unavailable. Adds the SC-003 forbidden-word tests for the CLI STATUS column, the Web detail header and card, and the tray first line. Related #1383
…filters (Spec 109-m) Adds scripts/check-no-unquarantine-callers.sh (SC-005) with its red/green self-test and a unit-tests.yml job, and makes the native and frontend workflows run when a Go-owned golden they read by path changes. Related #1383
…ec 109-m) TestSpec109Traceability resolves the finding table, every FR citation and a 43-scenario acceptance index to files and test functions; the register test closes every contradiction by an FR that a task traces to a real test. Annotates tasks that moved or were never created with Shipped as paths. Related #1383
…solvers (Spec 109-m) Adds specs/109-ux-navigation-consistency/parity-matrix.json in Spec 108's parity-matrix/v1 schema: every row of the spec table, same ticks, a reason on every dash, a ticked 108 cell for every (108) cell. Identifiers resolve in oas/swagger.yaml, the tool-surface golden, source, the real router, the Swift enums and the --help-json output. The CLI test also pins the --approval, --tier, --view and upstream list --status usage to the terminology golden. Related #1383
…ec 109-m) Adds the attention and catalog CLI pages, the Attention, Review and Catalog REST sections, retitles the Web UI page Home and describes the grouped sidebar, header, palette and redirects. Updates the status and management command pages for the declared table-text changes, puts needs-attention in the sidebar, adds the release notes and a TestSpec109DocsPublished guard. Related #1383
…t the CLI contract Ticks T144-T149d, adds the nine new tasks, recomputes the task count (195), points FR-090 to FR-092, SC-001, SC-005 and SC-012 at their tests, adds the 109-m notes to the checklist, the quickstart recipe and research D34, and aligns contracts/cli.md with the shipped catalog commands. Related #1383
Deploying mcpproxy-docs with
|
| Latest commit: |
3d5e537
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://59c28fee.mcpproxy-docs.pages.dev |
| Branch Preview URL: | https://109-m-parity-docs.mcpproxy-docs.pages.dev |
…s (Spec 109-m) Review round 1: the retired-name scan sees interpolated labels, symbol ids must be declared (not just mentioned), the CLI walk also checks main.go registers every group, the traceability checks hold the non-finding table rows and test-file refs to the same rules, the generator skips empty words, and the self-test refuses to build trees without a temp directory. Docs: the CHANGELOG route placeholder, the empty-query catalog description and the tools alias row. Related #1383
…iew wording fix (Spec 109-m) Related #1383
Move --secret-env before the -- separator in the documented stdio examples (management-commands, catalog-commands): Cobra treats everything after -- as positional stdio args, so the flag was never parsed and the key would land in the config as a plain argument. Add a release-gate docs check that fails when --secret-env/--secret-header follow the separator.
…ndows checkouts pass
|
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
Contributor
📦 Build ArtifactsWorkflow Run: View Run Available Artifacts
How to DownloadOption 1: GitHub Web UI (easiest)
Option 2: GitHub CLI gh run download 36968662312 --repo smart-mcp-proxy/mcpproxy-go
|
7 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Spec 109-m closes the cross-surface parity work of
specs/109-ux-navigation-consistency: it turns the terminology, attention, health wording, catalog order, parity matrix, contradiction register and finding traceability into automated checks, publishes the user docs and writes the release notes. There is no new route, flag or MCP argument, so the frozen tool-surface goldens andoas/swagger.yamlare unchanged.What changes for users
NavBar.vue(it still carried the retired "Dashboard" and "Repositories") is deleted.cli/attention-commandandcli/catalog-commands; new### Attention,### Reviewand### Catalogsections inapi/rest-api;web-ui/dashboardis now titled Home and describes the grouped sidebar, header, palette and redirects;cli/status-command,cli/management-commands,cli/command-referenceandfeatures/registry-adddescribe the declared CLI text changes;features/needs-attentionis finally in the sidebar.upstream listSTATUS shows the status label,statusrenamesMCP EndpointstoEndpoint & modeand starts with aNeeds attention: Nline,doctorleads with the attention list and its diagnostics heading isDiagnostics: N findings. Deprecations:registry search|add,upstream approve,security approve|reject,tools approve|reject,tools list --riskand the old routes. Features: Home and one attention list, Review queue, Clients hub, catalog-first Add, grouped navigation.contracts.tsgains the tool approval, activity view and client presence enums (ToolApprovalState,ActivityView,ClientPresenceState).No Unquarantine Callersjob (SC-005) and the native and frontend workflows now also run when a Go-owned golden they read by path changes.Spec requirements and audit findings closed here
FR-090, FR-091, FR-092 and SC-001 to SC-012 (their proof); audit findings H2 (traceability path), C2 (traceability path), S2 and X12 (SC-005 mechanised), N7 (dead NavBar, retired names), S4 and S5 (SC-003 on every renderer), A3, N6 and N8 (SC-002 parity,
needs-attentionpublished), C1 (SC-008 order), N1, N4 and N5 (CLI and REST docs). Spec:specs/109-ux-navigation-consistency(tasks T144 to T149d, research D34).Tests added
TestSpec109TerminologyGolden,TestSpec109ContractsTSExactLines(these fold in and delete 109-l'sattention_108_contract_test.go),TestSpec109RetiredNames,TestSpec109MCPRESTNames_*,TestAttentionParity_*(runtime, REST, SSE) andTestAttentionParityCLI,TestCatalogOrderParity_*(REST, MCP, CLI),TestUpstreamListForbiddenWords,TestSpec109RegisterDispositions,TestSpec109Traceability_*(findings, FR coverage, acceptance index),TestSpec109ParityMatrix*,TestParity109CLICellsResolve,TestParity109FlagUsageNamesTheValues,TestSpec109DocsPublished. Each has a mutation or self-test showing it can fail.spec109-terminology,attention-parity,catalog-order-parity,sc003-forbidden-renderings,spec109-parity-matrix. XCTest:Spec109TerminologyTests,AttentionParityTests,CatalogOrderParityTests,Spec109ParityMatrixTests, two tray cases inCrossSurfaceRenderedLabelParityTests.internal/contracts/testdata/terminology.json,internal/runtime/testdata/attention_parity_{fixture,rest}.json,internal/registries/testdata/catalog_github_order.json,specs/109-ux-navigation-consistency/{parity-matrix,acceptance-index}.json,internal/httpapi/testdata/spec109_retired_allow.json.scripts/check-no-unquarantine-callers.shwith its self-testscripts/check-no-unquarantine-callers.test.sh.Decisions and deviations from the plan
AllHealthStatuses()is not ininternal/contracts:internal/healthimports it, so the golden test readshealth.StatusOrderandruntime.AttentionKinds()directly.navModel.ts, "Dashboard"), which the spec puts out of scope.catalog addtakes--envonly, not--secret-env;contracts/cli.mdis corrected and the secret toggle's CLI form isupstream add --secret-env|--secret-header.CatalogTestsalready readsinternal/secret/testdata/ref_names.jsonby path.tasks.md: the release-gate Playwright sweep and the macOS app against a scratch core were not run in this PR's session.Related #1383