Repository navigation
skills: wait-for-notification build/test instructions for hosts with wakeup - #21
Conversation
Co-authored-by: c1-squire-dev[bot] <c1-squire-dev[bot]@users.noreply.github.com>
Superseded — see the current review report for commit
|
| 3. Build: call `c1_connector_authoring_build_bundle`, capture `run_id`, then | ||
| poll `c1_connector_authoring_get_run` with `run_id` until the build | ||
| reaches a terminal state (poll with backoff, e.g. every 5-10s; if no | ||
| terminal state after ~10 polls, STOP and report the run state). GATE: | ||
| wait for the completion notification if your host provides one; do not poll | ||
| while waiting. Direct API callers without host wakeup poll | ||
| `c1_connector_authoring_get_run` with `run_id` until the build reaches a | ||
| terminal state, using backoff and a bounded wait; report pending if the wait | ||
| bound is reached rather than redispatching the build. GATE: |
There was a problem hiding this comment.
🟡 Suggestion (medium confidence): If the host has wakeup but the notification never arrives (dropped event, host restart), "do not poll while waiting" leaves the agent with no way out. Add a one-time get_run / get_test_run_evidence check on resume or after a timeout. This edit also drops the concrete bound ("every 5-10s", "~10 polls") in favor of an undefined "bounded wait". Keeping the numbers would keep direct-caller behavior deterministic. The same applies to step 4 and to S5/S10 in author-in-app-connector.
| --- | ||
| name: build-and-test | ||
| description: Use when uploading draft source, building a bundle, or running and polling a draft test sync. Do not use when the task is app/connector provisioning or activation - use deploy-and-activate. | ||
| description: Use when uploading draft source, building a bundle, or running and awaiting a draft test sync. Do not use when the task is app/connector provisioning or activation - use deploy-and-activate. |
There was a problem hiding this comment.
🟡 Suggestion (low-medium confidence): The skill body's behavior changed, but version: 0.2.0 here, author-in-app-connector 0.2.1, and evals/skills-bundle/bundle.json (0.4.0) were not bumped. skills_bundle.test.ts treats bundle.json as the version source of truth for skill bodies. Without a bump, eval baselines and consumers can't tell the polling and notification variants apart. Consider bumping both skills, their bundle entries, and the bundle/scenario version.
Superseded — see the current review report for commit
|
There was a problem hiding this comment.
No blocking issues found — see the full review report
Co-authored-by: c1-squire-dev[bot] <c1-squire-dev[bot]@users.noreply.github.com>
General PR Review:⏳ Provisional — deeper review still in progress. Review in progress; this comment will be replaced with the full summary. |
Co-authored-by: c1-squire-dev[bot] <c1-squire-dev[bot]@users.noreply.github.com>
Superseded — see the current review report for commit
|
| while waiting. If your session resumes with an outstanding dispatch and no | ||
| completion notification, check `c1_connector_authoring_get_run` once before | ||
| re-dispatching. Direct API callers without host wakeup poll |
There was a problem hiding this comment.
🟡 Suggestion (medium confidence): "check get_run once before re-dispatching" reads as if re-dispatching comes next no matter what the check returns. That conflicts with the direct-caller rule a few lines down ("rather than redispatching the build"). Please say what to do for each result: continue on terminal, and wait or report pending on RUNNING/PENDING. Only re-dispatch when the run is not found. Otherwise an agent that resumes mid-build may start a duplicate build. The same wording appears in step 4 and in author-in-app-connector S5/S10.
| @@ -1,10 +1,10 @@ | |||
| { | |||
| "version": "0.4.0", | |||
| "version": "0.5.0", | |||
There was a problem hiding this comment.
🟡 Suggestion (high confidence): the bundle moves to 0.5.0, but evals/skills-bundle/README.md still documents v0.4.0 as current. Line 19 says "The seven prior skills are unchanged; the bundle version is 0.4.0", and line 64 says scenarios pin 0.4.0. evals/README.md:18 also says "v0.4.0 manifest". Please add a v0.5.0 section that notes the build-and-test and author-in-app-connector 0.3.0 bumps, and update the pinned-version references.
General PR Review: skills: wait-for-notification build/test instructions for hosts with wakeupBlocking Issues: 0 | Suggestions: 3 | Threads Resolved: 0 Review SummaryThis PR changes when the agent waits for build and draft-test results. In the build-and-test skill (steps 3/4) and the author-in-app-connector skill (S5/S10), agents on hosts with wakeup now wait for a completion notification instead of polling. Direct API callers still poll The new commits since
I scanned the full PR diff (9 files) for security and correctness problems. The incremental diff was complete ( Security IssuesNone found. Correctness IssuesNone found. Suggestions
Resolved prior findings
Prompt for AI agentsReviewed commit: |
There was a problem hiding this comment.
No blocking issues found — see the full review report
Why
Hosts such as c1aw can resume the connector-authoring specialist when a build or draft test completes. Polling instructions currently override that host contract and spend turns unnecessarily.
What
The orchestrator and build-and-test stage wait for completion notifications when the host provides wakeup. Direct API/BYO callers without wakeup still poll get_run or get_test_run_evidence with a bounded wait. Activation remains a human-only boundary and is unchanged.
Validation
Companion to CXF-353 PR 1 in ductone/c1; this is a new skills-only change after connector-authoring#20. Do not merge automatically.