Restore flapii CLI & VSCode extension parity with server#78
Merged
Conversation
- fix(vscode #75): escape nested template literals in endpointTesterPanel so the webview HTML literal no longer desyncs the parser; build @flapi/shared automatically (shared prepare + extension prebuild) so EndpointConfig types resolve. Extension builds and typechecks again (broken since 2025-11-02). - feat(cli #76): add commands for server capabilities that had no CLI surface: health, config env, config filesystem, endpoints parameters, cache audit [path], cache gc. - fix(cli #77): FlapiApiClient.testEndpoint targets the real /template/test route instead of the non-existent /test (would 404). - docs: add CLIENT_PARITY_AUDIT.md documenting findings and resolution.
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.
Summary
Audit of the
flapiiCLI and VSCode extension against the server's ConfigService surface found one P0 breakage and several P1 gaps. This PR files and fixes them. Full findings indocs/CLIENT_PARITY_AUDIT.md.fcebf3a(2025-11-02): a malformed template literal inendpointTesterPanel.tsdesynced the webview HTML literal, and@flapi/sharedwas never built soEndpointConfig.operationfailed to resolve. Fixed by escaping the nested literals and building shared automatically (prepareon shared +prebuildon the extension).health,config env,config filesystem,endpoints parameters <path>,cache audit [path],cache gc <path>.FlapiApiClient.testEndpoint()route fixed (Closes shared FlapiApiClient.testEndpoint() targets non-existent route #77): now targets…/template/test(the route that exists) instead of…/test(404).Test plan
cd cli/shared && npm run build✅cd cli && npm run build && npm test→ 41/41 unit tests pass ✅cd cli/vscode-extension && npm run build✅ (exit 0) andnpx tsc --noEmit→ 0 errors ✅flapi --config-service: all six new CLI commands work;testEndpointroute returns 200 (old/testreturns 404).cache audit/gcon a non-cached endpoint correctly surface the server's 400 "Cache not enabled".Out of scope (follow-ups noted in the audit)
Single shared API client unification, an extension test suite + CI compile gate, version alignment (clients pinned
0.1.0vs serverv26.06.13), and the stale example DuckLake catalog.