feat(check): parse vapi-checks.yml check configuration - #60
Open
scott-lowe-vapi wants to merge 1 commit into
Open
scott-lowe-vapi wants to merge 1 commit into
scott-lowe-vapi wants to merge 1 commit into
Conversation
Add the config contract for inline simulation PR checks: a root vapi-checks.yml declaring, per check, the org whose files to read, an optional run org and base URL, the targets (assistants/<id> or squads/<id>), the suites and simulations to run, credential and phone bindings (promotion.yml's shape), extra trigger paths, and run settings (transport, iterations, timeout, tool-mock policy, webhook stripping) with repo-wide defaults. It is a separate file from promotion.yml because single-org customers can't have a valid promotion pipeline. Unknown keys are rejected, including `mode`: checks always build the target from the branch. Nothing reads the config yet; the dry-run CLI that uses it follows. Refs TEST-141 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
scott-lowe-vapi
force-pushed
the
refactor/config-free-engine-modules
branch
from
October 1, 2026 23:11
3e0e277 to
0518af1
Compare
scott-lowe-vapi
force-pushed
the
feat/check-config
branch
from
October 1, 2026 23:11
2fb28f4 to
58e2d36
Compare
This was referenced Oct 1, 2026
Contributor
Author
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
This was referenced Oct 1, 2026
scott-lowe-vapi
marked this pull request as ready for review
October 1, 2026 23:52
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.

Value
V.A.L.U.E. tier: project — PR 4 of 10 for inline simulation PR checks (TEST-141); this PR adds a config parser with no caller yet.
promotion.ymlcan't hold it:promotionConfigParserequires a pipeline of two or more orgs, and most customers have one.src/check-config.tsparses a rootvapi-checks.ymlinto typed check definitions:org, plus an optionalrunOrgandbaseUrl;targets(assistants/<id>orsquads/<id>, nested IDs allowed);suitesand/orsimulations;bindings(promotion's shape, viapromotionBindingsParse);paths;defaults: transportchat, 1 iteration, 20 min,toolMocks: strict,stripWebhooks: true.vapi-checks.example.ymlis the commented starting point: a single-org check, plus a commented CI-org check.mode:key fails with a message explaining that checks always build from the branch, since a "run what's deployed" mode was deliberately left out.Evidence of value
runOrg=org, credentialsbind/ phonesomit); default and per-check overrides; a CI-org check with EUbaseUrland bindingstests/check-config.test.ts)npm testnpm run buildcleanTesting plan
tests/check-config.test.tscovers:mode, slugs, target shape, extension and..in IDs, duplicates, missing suites/simulations, each setting's range,baseUrl,paths, bindings;checksConfigLoad, which returnsnullwhen novapi-checks.ymlexists (checks are opt-in).baseUrlfallback order (.env.<runOrg>,$VAPI_BASE_URL,api.vapi.ai) is applied at run time in PR 7.Stacked on #59.
Refs TEST-141
🤖 Generated with Claude Code