Skip to content

docs(changelog): tag-based runner placement (Jun 06)#80

Merged
indykish merged 3 commits into
mainfrom
chore/m85-runner-scheduler-changelog
Jun 6, 2026
Merged

docs(changelog): tag-based runner placement (Jun 06)#80
indykish merged 3 commits into
mainfrom
chore/m85-runner-scheduler-changelog

Conversation

@indykish

@indykish indykish commented Jun 6, 2026

Copy link
Copy Markdown
Contributor

Adds a <Update> for the label-based runner placement capability shipping in usezombie PR #371 (M85_001).

What's documented

  • Tag routing — an agent's SKILL.md tags: become its required_tags; a runner claims an agent only when those tags are a subset of the runner's advertised labels. No tags ⇒ any runner (back-compat).
  • Silent wait — if no enrolled runner advertises the required labels, the agent waits rather than running on an unsuitable host (the L4/L5 surfacing guardrails are a fast-follow).
  • Bounds — each tag 1–64 chars, ≤32 per agent; out-of-bounds rejects with UZ-REQ-001.

Voice self-audit: 📝 CHANGELOG: 2 bullet(s) · no marketing words · load-bearing facts kept (UZ-REQ-001, bounds, required_tags) · history append-only.

🤖 Generated with Claude Code

Greptile Summary

This PR documents the tag-based runner placement feature (usezombie PR #371) by adding a <Update> block to the changelog and removes two memory API endpoints from the docs.json navigation.

  • Changelog entry — well-formed <Update> for Jun 06, 2026 covering tag routing via SKILL.md tags:required_tags, silent-wait behavior with an honest <Note>, and required_tags API bounds (1–64 chars per tag, ≤32 per agent, UZ-REQ-001). Terminology, sentence case, and section order align with AGENTS.md.
  • docs.jsonPOST and DELETE memory endpoints are dropped from the "Agent memories" nav group with no changelog entry and no mention in the PR description; it is unclear whether this reflects a confirmed API removal or is an accidental inclusion in this commit.

Confidence Score: 4/5

Safe to merge the changelog entry; the unexplained removal of two memory API endpoints from the navigation needs clarification before merging.

The changelog addition is clean and correct. The concern is in docs.json: POST and DELETE memory endpoints are removed from the nav with no corresponding changelog entry, no PR description mention, and no explanation of whether the underlying API endpoints were actually deprecated. If those endpoints are still live, users lose discoverability; if they were removed, a Breaking changelog entry is required per the project's own companion-docs flow rules.

docs.json — the removal of the POST and DELETE memory endpoint nav entries needs confirmation that it is intentional and tied to a live API change.

Important Files Changed

Filename Overview
changelog.mdx Adds a well-formed <Update> block documenting tag-based runner placement: tag routing, silent-wait behavior with a <Note>, and required_tags API bounds (1–64 chars, ≤32 per agent, UZ-REQ-001). Terminology, sentence case, and section order all match AGENTS.md.
docs.json Removes POST and DELETE memory endpoints from the "Agent memories" nav group without a changelog entry or PR description mention; unclear whether this reflects a live API removal or is an accidental omission.

Sequence Diagram

sequenceDiagram
    participant User
    participant API
    participant Agent
    participant Runner

    User->>API: POST /zombies (SKILL.md with tags: [gpu, us-east])
    API->>Agent: "create agent, derive required_tags=[gpu, us-east]"
    Note over API: Rejects if tag >64 chars or >32 tags (UZ-REQ-001)

    Runner->>API: enroll (labels: [gpu, us-east, ...])
    API->>Runner: registered

    Agent->>Runner: claim? (required_tags is subset of runner.labels)
    Runner-->>Agent: match - run on this runner

    alt No matching runner enrolled
        Agent->>Agent: wait silently
        Note over Agent: No separate status surface today
    end
Loading
Prompt To Fix All With AI
Fix the following 1 code review issue. Work through them one at a time, proposing concise fixes.

---

### Issue 1 of 1
docs.json:196-200
**Unexplained removal of two memory API endpoints from navigation**

The `POST` and `DELETE` memory endpoints were silently dropped from the "Agent memories" nav group with no changelog entry and no mention in the PR description. Per `AGENTS.md`, every public-surface removal is a "Breaking" changelog candidate, and load-bearing endpoint paths must be preserved unless explicitly removed from the API. If these endpoints were deprecated or removed in the companion lead-repo PR, a "Breaking" `<Update>` entry is needed. If they're still live, omitting them from the nav leaves users unable to discover or link to their documentation.

Reviews (3): Last reviewed commit: "docs(api): drop dead agent-memories nav ..." | Re-trigger Greptile

Context used:

  • Context used - AGENTS.md (source)

Agents now route to runners by capability: SKILL.md `tags:` become an
agent's required_tags, and a runner claims an agent only when those tags
are a subset of its advertised labels. Empty tags run anywhere (back-compat).
Notes the silent-wait when no runner matches and the UZ-REQ-001 bounds.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@mintlify

mintlify Bot commented Jun 6, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
megam 🟢 Ready View Preview Jun 6, 2026, 4:43 PM

💡 Tip: Enable Workflows to automatically generate PRs for you.

Comment thread changelog.mdx Outdated
Comment thread changelog.mdx
indykish and others added 2 commits June 6, 2026 22:41
Address greptile review on PR #80:

- Split the conflated tag bounds in the API reference bullet — per-tag
  length (1–64 chars) and per-agent count (≤32) are distinct triggers
  for UZ-REQ-001; "either bound exceeded" now reads unambiguously.
- Add a <Note> on the silent-wait behavior. A waiting agent surfaces
  no separate status today, so the note tells users to confirm a runner
  advertises matching labels rather than mistaking the wait for a
  silent failure.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
POST /v1/.../memories and DELETE /v1/.../memories/{memory_key} were
removed from the upstream openapi.json, leaving the nav referencing
endpoints Mintlify can't generate. This drift failed `make lint`
(openapi-drift gate) and the Mintlify Deployment check on main and
every branch off it. Keep GET /v1/.../memories, which still exists
upstream.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@indykish indykish merged commit a5a2c65 into main Jun 6, 2026
4 checks passed
@indykish indykish deleted the chore/m85-runner-scheduler-changelog branch June 7, 2026 10:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant