Compare commits
1 Commits
c2d00c18a7
...
fix/drop-w
| Author | SHA1 | Date | |
|---|---|---|---|
| 65a3fb8d2d |
@@ -307,21 +307,22 @@ function register(api: PluginAPI): void {
|
||||
)}\n\`\`\``;
|
||||
}
|
||||
|
||||
// First-line ack `WAKEUP_OK` is the plugin's ack-receipt token; the
|
||||
// agent MUST then continue in the same session and drive the
|
||||
// `hf-wakeup` workflow to completion (calendar_status → task fetch →
|
||||
// sub-workflow → calendar_complete/abort). Without that continuation
|
||||
// the scheduler keeps re-waking every 30s because the slot stays
|
||||
// `not_started` forever.
|
||||
// The wakeup dispatcher's `deliver` callback below only logs the
|
||||
// reply text — it does NOT inspect any ack token. The earlier
|
||||
// `WAKEUP_OK` first-line-ack convention was prompt-only theatre;
|
||||
// nothing in this plugin or in openclaw acted on it. The only
|
||||
// thing that ends a wake cycle is the slot transitioning out of
|
||||
// `not_started`, which happens when the agent calls
|
||||
// `harborforge_calendar_complete` or `harborforge_calendar_abort`.
|
||||
// Tell the agent that plainly instead of asking for a fake ack.
|
||||
const wakeupMessage =
|
||||
`You have due slots. **First line of your reply MUST be exactly ` +
|
||||
`\`WAKEUP_OK\`** so the plugin records the ack. Then, **in this ` +
|
||||
`same session**, drive the \`hf-wakeup\` workflow of skill ` +
|
||||
`\`hf-hangman-lab\` to completion — read slot context, call the ` +
|
||||
`harborforge_calendar_* tools, route to the right sub-workflow, ` +
|
||||
`and finish with harborforge_calendar_complete or abort. Do NOT ` +
|
||||
`stop after the ack — the scheduler will re-wake you every 30s ` +
|
||||
`until the slot transitions out of \`not_started\`.${slotBlock}`;
|
||||
`You have due slots. Drive the \`hf-wakeup\` workflow of skill ` +
|
||||
`\`hf-hangman-lab\` to completion in this session — read slot ` +
|
||||
`context, call the harborforge_calendar_* tools, route to the ` +
|
||||
`right sub-workflow, and finish with harborforge_calendar_complete ` +
|
||||
`or harborforge_calendar_abort. The scheduler keeps re-waking you ` +
|
||||
`every 30s until the slot transitions out of \`not_started\`, so ` +
|
||||
`partial work or silence just produces another wake.${slotBlock}`;
|
||||
|
||||
const result = await dispatchInboundMessageWithDispatcher({
|
||||
ctx: {
|
||||
|
||||
Reference in New Issue
Block a user