Client parity follow-ups: API-client unification, TODOs, tests, CI, versions#86
Merged
Merged
Conversation
#81, #83, #85) - refactor(vscode #83): delete the extension's duplicate FlapiApiClient and point extension.ts + yamlValidator at @flapi/shared's client; add slug-based validateEndpointConfig/reloadEndpointConfig and X-Config-Token to setToken. Fixes the local client's broken base-URL (it read non-existent flapi.host/port). - fix(vscode #81): remove dead 'Variables provider' editor-change handler. - chore(#85): align cli, @flapi/shared, and the extension to 26.6.13.
…79, #80) - feat(#80): add a pure extendedYaml resolver that inlines {{include:<section> from <file>}} directives from sibling workspace files; CodeLens now uses it instead of stripping includes and parsing blindly. - feat(#79): when multiple endpoints reference one SQL template, show a QuickPick selector instead of silently using the first.
) - test(vscode #84): set up Vitest and cover the pure logic — extended-YAML include resolution and endpoint-pick label building (12 tests). - ci(#82): add .github/workflows/clients.yaml that builds @flapi/shared, builds and tests the CLI, and typechecks/builds/tests the extension on every PR that touches cli/. This would have caught #75.
Keeps package-lock.json in step with the version bump so 'npm ci' (used by the new clients CI gate) doesn't fail on a version mismatch.
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.
Follow-up to #78, addressing the remaining P2/P3 items from
docs/CLIENT_PARITY_AUDIT.md. Based onfix/client-parity-audit(#78) — merge that first, or this will rebase onto main automatically once #78 lands.Changes
FlapiApiClient;extension.ts+yamlValidatornow use@flapi/shared's client. Added slug-basedvalidateEndpointConfig/reloadEndpointConfigandX-Config-TokentosetToken. Also fixes the old client's broken base-URL (it read non-existentflapi.host/flapi.port).{{include}}directives (Closes CodeLens: resolve extended-YAML {{include}} directives for accurate parsing #80) — new pureextendedYamlresolver inlines{{include:<section> from <file>}}from sibling workspace files; CodeLens uses it instead of stripping includes..github/workflows/clients.yamlbuilds shared, builds/tests the CLI, and typechecks/builds/tests the extension on everycli/**PR. This would have caught VSCode extension fails to build (broken since 2025-11-02) #75.@flapi/shared, and the extension bumped0.1.0→26.6.13(npm-valid form of the server'sv26.06.13).Test plan
@flapi/sharedbuildshealth,config env/filesystem,endpoints parameters,cache gc/audit)tsc --noEmit→ 0 errors, webpack build OK, 12/12 Vitest tests pass@flapi/sharedresolves with real types (noanyfallback)Not included
The single-YAML parse TODO is handled client-side (the resolver) rather than via a new C++ server route, since a server rebuild isn't reliably verifiable in this environment (modified
duckdbsubmodule).