dependencies: add shared lemonade-ready readiness check - #680
dependencies: add shared lemonade-ready readiness check#680lucbruni-amd wants to merge 7 commits into
Conversation
Introduces a require-able readiness gate under a new dependencies/checks/ namespace (registry category: check). @require:lemonade-ready waits for the Lemonade server on /api/v1/health before dependent steps, instead of failing with 'Could not connect to Lemonade server'. hermes and openclaw lemonade-model-load had no readiness gate (every other lemonade playbook does); they now require it before loading. Refs #666, #668.
|
Seems |
There was a problem hiding this comment.
Pull request overview
Adds a shared “Lemonade server readiness” gate under playbooks/dependencies/checks/ and wires it into the lemonade-model-load tests for hermes-lemonade-server and openclaw-lemonade-server to reduce CI failures caused by the Lemonade server not being reachable yet.
Changes:
- Introduces a new require-able dependency entry
lemonade-ready(categorycheck) inplaybooks/dependencies/registry.json. - Adds the shared readiness check implementation in
playbooks/dependencies/checks/lemonade-ready.md(Windows + Linux). - Updates the two affected playbooks to
@require:lemonade-readyimmediately beforelemonade-model-load.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| playbooks/supplemental/openclaw-lemonade-server/README.md | Adds @require:lemonade-ready before the model load test. |
| playbooks/supplemental/hermes-lemonade-server/README.md | Adds @require:lemonade-ready before the model load test. |
| playbooks/dependencies/registry.json | Registers the new lemonade-ready shared dependency/check. |
| playbooks/dependencies/checks/lemonade-ready.md | Implements the Windows/Linux wait loop against /api/v1/health. |
Suppressed comments (1)
playbooks/dependencies/checks/lemonade-ready.md:34
- The Linux readiness loop currently treats any non-empty response body as "ready". Because
curl -sdoes not fail on HTTP 4xx/5xx, an error response with a body could make$healthnon-empty and incorrectly pass the gate. Add-fso only 2xx responses are accepted.
health="$(curl -s --max-time 2 http://127.0.0.1:13305/api/v1/health || true)"
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…x registry description - curl -sf so only a 2xx health response counts as ready (per review) - move explanatory text to an HTML comment so the check renders nothing on the website (no @github-only wrapper needed by adopters) - broaden registry description (models + AMD developer platforms, not Halo-only)
|
A large number of inline tests eventually becomes unmanageable. If there is a way to accomplish reusability without polluting |
Co-authored-by: Sreeram <sreeram.sivasubramony@amd.com>
|
@sreeram-11 is this PR good to go? Are we on board with the registry.json edits? Do we plan to move more tests to here? |
|
re-ping |
Adds a require-able readiness gate under a new
dependencies/checks/namespace (registrycategory: check).@require:lemonade-readywaits for the Lemonade server on/api/v1/healthbefore dependent steps, instead of failing withCould not connect to Lemonade server.hermes-lemonade-serverandopenclaw-lemonade-serverlemonade-model-loadhad no readiness gate (every other lemonade playbook does); they now@require:lemonade-readybefore loading.Validated locally: the gate resolves and runs immediately before
lemonade-model-loadon windows + linux;validate_playbookspasses.Refs #666, #668 (verify via nightly before closing).