release-validation
Skill3.8k starsChanged 20 days agoApache-2.0View on GitHub
Use this skill when validating a MeshLLM release candidate or current HEAD against the last GitHub release, assembling the canonical feature/fix/modification inventory, testing locally built release bundles on user-approved real hosts and private meshes, deciding release readiness, or producing a formal evidence-backed release-validation report.
We split this skill into the rules it gives an agent
16 rules. About 0 are common, 9 are distinctive, and 7 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈9
Distinctive · estimate
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 21
Read references/evidence-and-gates.md in full before planning or executing validation.
- Distinctive: line 40
If host selection, access, or cost authority is missing, complete the read-only inventory and test plan, then stop before remote build or …
- Distinctive: line 45
Read each applicable skill completely before acting:
- Very specific: line 71
Before collecting inventory, resolve the candidate SHA and previous-release tag commit and derive each release base from its merge-base …
- Distinctive: line 95
Use all of these sources, not release notes or commit subjects alone:
- Very specific: line 104
Create one atomic ledger row per externally meaningful claim.
- Very specific: line 127
Use risk to order work: provenance and packaging first, startup/readiness next, then APIs/logs/UI/inference, feature claims, …
- Very specific: line 138
Use just; never invoke ad hoc Cargo builds as release evidence.
- Distinctive: line 147
Use the Windows/platform-specific recipes where the Justfile requires them.
- Very specific: line 157
Use at least two user-approved real hosts when available.
- Distinctive: line 159
Create a private mesh on one candidate bundle, join the other candidate bundle with its invite token, and wait for explicit readiness …
- Very specific: line 199
Write release-validation-report.md from the bundled template and store raw evidence beside it.
- Very specific: line 213
Use SSH aliases supplied by the user or documented in context/COMPUTERS.md.
- Distinctive: line 215
Do not expose invite tokens, API keys, owner keys, release signing material, private paths, or unredacted logs in the report.
- Distinctive: line 217
Do not fix discovered product defects during validation unless the user separately authorizes implementation.
- Distinctive: line 220
Do not dispatch/cancel CI, publish artifacts, push commits/tags, create a release, or mutate GitHub configuration without explicit …
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Release Validation
New release inventory and evidence automation follows ../manage-ci/SKILL.md:
no new Python tooling, including skill-local helpers. Use typed tools/xtask
commands behind thin Just recipes. The raw inventory owner is
cargo xtool release inventory. On Unix, use the positional Just façade
just release-inventory; it preserves argument boundaries. On Windows, use
the portable native command directly until a Windows Just façade is qualified.
The inventory collects read-only evidence; it does not validate a product or
classify release claims.
Validate the candidate as a product, not merely as source code. Every claimed change must have a disposition and direct evidence. Do not publish a release, push a tag, alter production, or use a host the user did not put in scope.
Read references/evidence-and-gates.md in full before planning or executing validation. Copy assets/release-validation-report-template.md for the final report; do not weaken or omit its required tables.
Required Inputs
Resolve these before remote execution:
- candidate ref, defaulting to the current
HEAD; - repository, normally
Mesh-LLM/mesh-llm; - exact user-approved SSH aliases or local hosts, platform/backend on each, and any cost or time limits;
- models suitable for each host and any feature-specific fixtures;
- output directory, defaulting to
target/release-validation/<UTC timestamp>-<short SHA>/; - whether a previous-release mixed-version node is authorized when compatibility testing is required.
If host selection, access, or cost authority is missing, complete the read-only inventory and test plan, then stop before remote build or launch.
Route To Existing Skills
Read each applicable skill completely before acting:
.agents/skills/remote-observable-process/SKILL.mdfor every long-running or interactive SSH build/server session;.agents/skills/deploy-macos/SKILL.md,.agents/skills/deploy-linux-gpu/SKILL.md, or.agents/skills/deploy-windows/SKILL.mdfor the selected host platform;.agents/skills/mesh-join/SKILL.mdfor private-mesh creation and verification;.agents/skills/connect-agents/SKILL.mdfor agent/tool-call validation;.agents/skills/manage-ci/SKILL.mdbefore inspecting CI, release workflows, runners, artifacts, or live workflow results;- the relevant Skippy, plugin, telemetry, configuration, or benchmark skill when the delta touches that subsystem.
Workflow
1. Freeze Provenance
- Record the candidate SHA, branch, remotes, submodule state, dirty paths, toolchain versions, and current UTC time.
- Refuse to present dirty or mismatched builds as reproducible. Either obtain explicit approval to validate the exact dirty tree and record its diff hash, or use a clean checkout at the candidate SHA.
- Inspect the latest published GitHub release, its tag, notes, assets, checksums, publication time, and release workflow conclusion. Distinguish stable, prerelease, draft, and manually superseded releases.
- Before collecting inventory, resolve the candidate SHA and previous-release
tag commit and derive each release base from its merge-base with
origin/main. An off-main candidate must be passed as its explicit release tag or have exactly one local tag pointing at its SHA; use that canonical tag for the subject check and fail closed if it is absent or ambiguous. Allow zero commits above a release base, or exactly one commit whose subject is the tag-specific<tag>: prepare release source. Require the previous-release base to be an ancestor of the candidate base. Fail closed iforigin/mainis unavailable or any tag, subject, commit-count, or base ordering check fails. - From the repository root, run
just release-inventory --head <candidate> --output <evidence-directory>/release-inventory.jsonon Unix, orcargo xtool release inventory --head <candidate> --output <path>on Windows. Optional--repo <owner/name>and--release-tag <tag>select the repository and previous release; without--output, the command writes JSON to stdout. Missing local tags ororigin/mainstop collection. Verify the configured remote before any separately authorized fetch and then rerun. The inventory records the requested candidate separately from the observed working-tree HEAD and dirty snapshot. Its versioned dirty digest identifies observed evidence, not a validated build. PR range uncertainty and capped query scope require reconciliation; the command does not classify changes or declare release readiness.
2. Build The Canonical Delta Ledger
Use all of these sources, not release notes or commit subjects alone:
- GitHub comparison and merged PRs from the release tag through candidate SHA;
- local commit history and changed-file diff;
- PR bodies, linked issues, labels, tests, docs, migrations, and generated artifacts;
- user-visible CLI/API/UI/config/protocol behavior found in the code;
- release, installer, packaging, dependency, security, and observability changes.
Create one atomic ledger row per externally meaningful claim. Merge duplicate
PRs/commits into one item, but split unrelated behavior hidden in one PR.
Classify every row as FEATURE, BUG_FIX, or REVISION:
FEATURE: a newly available user/operator/developer capability;BUG_FIX: behavior that now satisfies an existing contract or removes a defect/regression;REVISION: changed semantics, UX, performance, dependency, packaging, protocol, docs, or operational behavior that is neither of the above.
Give each row a stable ID (RV-FEAT-###, RV-FIX-###, or RV-REV-###), a
precise claim, source PRs/commits/files, affected surfaces, compatibility and
risk notes, and at least one positive and one relevant negative/edge test.
Record internal-only changes as revisions when they can affect release risk;
otherwise list them in the excluded/non-release-impact appendix with rationale.
3. Design Tests Before Building
Map every ledger item to concrete checks and an evidence destination. Cover
the common release matrix in the evidence reference plus all change-specific
paths. Mark a test NOT_APPLICABLE only with a written reason. UNVERIFIED is
not a pass.
Use risk to order work: provenance and packaging first, startup/readiness next, then APIs/logs/UI/inference, feature claims, failure/recovery, mixed-version compatibility, and nonfunctional checks. Do not allow one smoke test to stand in for multiple materially different claims.
4. Build Canonical Products On Real Hosts
- Confirm each host identity, OS/architecture, backend, GPU/driver/runtime, free disk/RAM/VRAM, toolchain, ports, and existing MeshLLM processes.
- Transfer or check out the exact candidate source. Verify the candidate SHA on every host before building.
Use
just; never invoke ad hoc Cargo builds as release evidence. Build the three-layer product with the applicable canonical recipes:just release-host-build just release-runtime-build <backend> just release-bundle <candidate-version> <output-directory>Use the Windows/platform-specific recipes where the Justfile requires them.
- Record commands, exit codes, duration, output archive names and SHA-256,
host-import policy results, product/runtime manifests, ABI/version metadata,
binary version, and archive contents. Run
just check-releaseand any applicable consistency checks. - Execute the extracted packaged object. Do not validate only
target/release/mesh-llm, and do not substitute an older downloaded runtime.
5. Exercise A Private Mesh
Use at least two user-approved real hosts when available. Start foreground, observable processes with JSON logging and isolated ports/data/runtime state. Create a private mesh on one candidate bundle, join the other candidate bundle with its invite token, and wait for explicit readiness rather than sleeping a fixed interval.
Prove on both nodes:
- peer membership and stable readiness;
/api/statusand relevant management APIs;/v1/modelsunion and local/remote model identity;- non-streaming and streaming inference through exact model IDs and
auto; meshand tool-call behavior when supported or affected;- structured logs parse as JSON, contain expected lifecycle/routing events, and contain no panic, secret, unexplained retry storm, or hidden fatal error;
- embedded UI loads, reflects the same state, has no blocking console/network errors, and completes the item-specific interactions;
- graceful stop, peer loss/recovery, restart, and cleanup.
For wire, gossip, routing, discovery, packaging, or compatibility changes, add a separate mixed-version private-mesh check using the last released packaged binary on one host and the candidate on another. Never replace the all-candidate mesh with this compatibility check.
6. Judge Every Claim
Assign exactly one status to each ledger item:
PASS: the claim is complete and directly proven in every required scope;FAIL: observed behavior contradicts the claim or creates a release blocker;PARTIAL: part works, but the claim, platform matrix, UX, docs, or recovery behavior is incomplete;BLOCKED: validation could not run because a named prerequisite is missing;NOT_APPLICABLE: a planned dimension truly does not apply, with rationale;UNVERIFIED: no adequate evidence was obtained.
Link immutable or locally preserved evidence: commands with exit codes, JSON
responses, redacted log excerpts, screenshots, checksums, manifests, test
outputs, and defect references. Never infer PASS from code inspection alone.
7. Produce The Formal Report
Write release-validation-report.md from the bundled template and store raw
evidence beside it. Include an evidence index with relative paths. Redact
tokens, credentials, private addresses when required, and customer data.
Apply the gate rules from the evidence reference. Give one decision:
READY, CONDITIONALLY_READY, NOT_READY, or INCOMPLETE. A conditional
decision requires an explicit waiver owner, rationale, expiry, and bounded
residual risk. Do not call a release ready while any required row is failed,
partial, blocked, or unverified.
Operating Rules
- Preserve unrelated worktree and host state. Use isolated directories, ports, and process identifiers; stop only processes created by this run.
- Use SSH aliases supplied by the user or documented in
context/COMPUTERS.md; never invent a host or use a raw IP when an alias exists. - Do not expose invite tokens, API keys, owner keys, release signing material, private paths, or unredacted logs in the report.
- Do not fix discovered product defects during validation unless the user separately authorizes implementation. Record a reproducible defect and its release impact.
- Do not dispatch/cancel CI, publish artifacts, push commits/tags, create a release, or mutate GitHub configuration without explicit authorization.
- Report ongoing host cost and stop remote processes promptly when evidence is complete or the run is blocked.
Trending
Quiet since April.about the whole repository
Who's talking about michaelneale/mesh-llm
- A Hacker News story“Pool spare GPU capacity to run LLMs at larger scale”Hacker News · Mar 24, 2026 · 11 points
- @rusttrending.bsky.social“michaelneale / mesh-llm: reference impl with llama.cpp compiled to distributed inference across machines, …”Bluesky · Apr 11, 2026 · 2 likes
- @yug1224.com“複数のLLMを連携させてタスクをこなすための分散型エージェントフレームワークらしい 複雑なワークフローを構築する際に役立ちそうかな yug1224 starred michaelneale/mesh-llm…”Bluesky · Apr 8, 2026 · 1 likes
- Mesh-LLM/mesh-llm“Add mesh-llm MoE planning, analysis, and ranking contribution commands”GitHub · Apr 11, 2026
- Mesh-LLM/mesh-llm“Simplify model for node states”GitHub · Apr 10, 2026
The biggest 5 of 18 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 18
Talked about on GitHub, Bluesky and Hacker News (18 times).
On GitHub · 15
- Apr 11, 2026Add mesh-llm MoE planning, analysis, and ranking contribution commands — Mesh-LLM/mesh-llm0 reactions · 1 comment
- Apr 10, 2026Simplify model for node states — Mesh-LLM/mesh-llm0 reactions · 2 comments
- Apr 10, 2026revise mesh publication rules — Mesh-LLM/mesh-llm0 reactions · 1 comment
- Apr 5, 2026Roll out config as local node config first, then reconcile mesh-wide desired state — Mesh-LLM/mesh-llm0 reactions · 2 comments
- Apr 3, 2026CommitLLM sumi capture: working on Apple Silicon Q8_0 — michaelneale/llama.cpp0 reactions
10 more on GitHub
- Apr 2, 2026Add hardware runtime status enrichment without changing model metadata sources — Mesh-LLM/mesh-llm0 reactions
- Apr 2, 2026Design owner identity propagation and direct verification — Mesh-LLM/mesh-llm0 reactions · 4 comments
- Apr 2, 2026Design owner keystore and Rust signed+encrypted message primitives — Mesh-LLM/mesh-llm0 reactions
- Apr 2, 2026Track splitting PR #130 into smaller rollout PRs — Mesh-LLM/mesh-llm0 reactions · 2 comments
- Apr 2, 2026research: mesh-llm integration — p2p inference mesh + model sharding under obol-stack economic layer — ObolNetwork/obol-stack0 reactions
- Apr 2, 2026[WIP] Make PR 103 mergable on top of PR 127 — Mesh-LLM/mesh-llm0 reactions
- Apr 2, 2026refactor: decompose mesh.rs and app/mod.rs into focused submodules — Mesh-LLM/mesh-llm0 reactions · 1 comment
- Mar 28, 2026Autoupdater — Mesh-LLM/mesh-llm0 reactions
- Mar 27, 2026Add a staged auto-updater for release bundles — Mesh-LLM/mesh-llm0 reactions
- Mar 27, 2026Add generic bulk transfer support to mesh plugins — Mesh-LLM/mesh-llm0 reactions
On Bluesky · 2
- Apr 11, 2026michaelneale / mesh-llm: reference impl with llama.cpp compiled to distributed inference across machines, with real end to end demo ★720… — @rusttrending.bsky.social2 likes and reposts
- Apr 8, 2026複数のLLMを連携させてタスクをこなすための分散型エージェントフレームワークらしい 複雑なワークフローを構築する際に役立ちそうかな yug1224 starred michaelneale/mesh-llm… — @yug1224.com1 likes and repost
On Hacker News · 1
- Mar 24, 2026Pool spare GPU capacity to run LLMs at larger scale11 points · 3 comments
Other versions3 projects use a version of this.
Word for word · 1
- Mesh-LLM/mesh-llm★ 3.5k100% same
Edited · 0
None found.
Wrote their own version · 2
- Esonhugh/claude-code★ 61same name
- Azure/AzureLocal-LENS-Workbook★ 22same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository32 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .github/AGENTS.mdAGENTS.md
- mesh/AGENTS.mdAGENTS.md
- skippy/AGENTS.mdAGENTS.md
- benchmark-tuneSkill
- config-settings-managementSkill
- connect-agentsSkill
- deploy-linux-gpuSkill
- deploy-macosSkill
- deploy-windowsSkill
- hf-bf16-gguf-conversion-jobsSkill
- hf-gguf-quant-jobsSkill
- hf-layer-package-jobsSkill
- hf-quant-and-layer-package-jobsSkill
- kv-tool-loop-stabilitySkill
- llama-patch-changesSkill
- llama-stage-patch-changesSkill
- manage-ciSkill
- mesh-joinSkill
- metrics-serverSkill
- plugin-web-ui-extensionSkill
- release-notesSkill
- remote-observable-processSkill
- skippy-cache-family-benchSkill
- skippy-correctnessSkill
- skippy-family-certificationSkill
- skippy-metricsSkill
- skippy-model-packageSkill
- skippy-promptSkill
- skippy-servingSkill
- skippy-spec-benchSkill
- telemetry-privacy-reviewSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

