create-issues: serialize issue/milestone creation with 3s pacing #105

Closed
opened 2026-08-28 11:32:37 +00:00 by david · 0 comments
Owner

Summary

Update the create-issues skill so the agent serializes issue/milestone creation and waits 3 seconds after each create, preventing race conditions that produce non-sequential issue numbers (a later step ending up with a lower number than an earlier one).

Problem

When the agent fires several issue-create calls in one parallel tool block, the host assigns issue numbers in non-deterministic order (observed on Forgejo). A post-create sleep alone does not fix this — creates must also be serialized, one per turn, so no two creates are in flight at once.

Change

  • Phase 6.3 — add a bolded Serialization and pacing subsection:
    • One create per turn (never batch multiple milestone/issue creates in one parallel tool block).
    • Wait 3 seconds after each create (e.g. bash sleep 3) before issuing the next.
    • Applies to all three hosts (Forgejo, GitHub, GitLab) and to milestone creates as well as issue creates (a just-created milestone may not be visible immediately).
    • Phase 6.4 backfill edits are exempt (they are edits, not creates).
  • Quick Reference — add one line summarizing the pacing rule.

Scope / non-goals

  • Hardcoded 3s constant — no config plumbing (no piloop-config key, no env var).
  • No dedicated test — the next real create-issues run doubles as validation.
  • Merging the PR stays the repo owner's decision (per AGENTS.md).

Acceptance criteria

  • skills/create-issues/SKILL.md Phase 6.3 contains the bolded "Serialization and pacing" subsection with the one-create-per-turn + 3s-wait rule.
  • Quick Reference includes the pacing line.
  • Next real create-issues run produces sequential issue numbers in creation order.
## Summary Update the `create-issues` skill so the agent **serializes** issue/milestone creation and **waits 3 seconds after each create**, preventing race conditions that produce non-sequential issue numbers (a later step ending up with a lower number than an earlier one). ## Problem When the agent fires several issue-create calls in one parallel tool block, the host assigns issue numbers in non-deterministic order (observed on Forgejo). A post-create sleep alone does not fix this — creates must also be serialized, one per turn, so no two creates are in flight at once. ## Change - **Phase 6.3** — add a bolded **Serialization and pacing** subsection: - One create per turn (never batch multiple milestone/issue creates in one parallel tool block). - Wait **3 seconds** after each create (e.g. `bash sleep 3`) before issuing the next. - Applies to **all three hosts** (Forgejo, GitHub, GitLab) and to **milestone creates as well as issue creates** (a just-created milestone may not be visible immediately). - Phase 6.4 backfill edits are exempt (they are edits, not creates). - **Quick Reference** — add one line summarizing the pacing rule. ## Scope / non-goals - Hardcoded 3s constant — no config plumbing (no piloop-config key, no env var). - No dedicated test — the next real create-issues run doubles as validation. - Merging the PR stays the repo owner's decision (per AGENTS.md). ## Acceptance criteria - [ ] `skills/create-issues/SKILL.md` Phase 6.3 contains the bolded "Serialization and pacing" subsection with the one-create-per-turn + 3s-wait rule. - [ ] Quick Reference includes the pacing line. - [ ] Next real create-issues run produces sequential issue numbers in creation order.
david closed this issue 2026-08-28 11:56:20 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
david/pi-extensions-and-skills#105
No description provided.