fix: deduplicate community health files#15
Merged
hyperpolymath merged 1 commit intomainfrom Mar 13, 2026
Merged
Conversation
…ies in .github/) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
hyperpolymath
added a commit
that referenced
this pull request
Apr 19, 2026
FFI: coord_claim_task_ex carries optional confidence (0-100%), dispatch_preference (deliberate/broadcast/auto), and task_difficulty (trivial/routine/challenging/novel). coord_claim_task is now a thin wrapper with the new args defaulted to -1. Reject cooldown: per-client_kind ring of the last 5 rejection timestamps. 5 rejections within 10 min + <30s since the last one => coord_claim_task_ex returns -5 (adapter => HTTP 429). Different client_kinds are isolated — one noisy peer doesn't freeze another. Nickel: three new shape contracts — ConfidenceShape, DispatchPrefShape, TaskDifficultyShape — applied by validate. test-contracts.sh covers one accept + three rejects for the new fields. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
hyperpolymath
pushed a commit
that referenced
this pull request
Apr 19, 2026
…bilities (Tasks #33 + #34) Closes P0 backlog items #33 and #34 in docs/handover/COORD-MCP-TODO.md. Version bumped to 0.7.0 (cartridge.json + cartridge.ncl + boj_cartridge_version). Task #33 — client_kind extension + free-form variant label - ClientKind enum: added openai (4) + mistral (5) in Zig FFI and Idris ABI (SafeLocalCoord.idr); KIND_COUNT bumped 4 → 6 for reject-ring. - Peer struct gains `variant: [32]u8 + variant_len` (alphanumeric + `.`/`-`/`_` only). New FFI: coord_set_variant(token, variant) coord_read_peer_variant(peer_idx, out, cap) - Adapter `coord_register` accepts optional `variant` and `capabilities` blocks — invalid values roll back the register so the caller sees a clean 400. `coord_list_peers` output now includes a `variant` field. - Durable log: peer_variant_set = 15 (new event type), with logPeerVariantSet + decodePeerVariantSet and replay-dispatch wiring so slot reuse after crash reconstructs variant correctly. Task #34 — capability advertisement for cold-start routing - Per-peer storage: class_csv (≤128B), tier (0=unset, 1..5), and prover_strengths CSV (≤256B). CSV alphabets restricted to [A-Za-z0-9._-+/,] so later JSON rendering stays injection-safe. - New FFI: coord_set_capabilities(token, class, tier, provers) coord_read_peer_class / _tier / _provers - Adapter tools (cartridge.ncl + cartridge.json): coord_set_variant — post-register update coord_set_capabilities — post-register update coord_get_peer_capabilities — returns {peer_id, kind, variant, tier, class[], prover_strengths[]} using the server-rebuilt canonical peer_id rather than echoing client input. - Durable log: peer_capabilities_set = 16 with matching encode + decode + replay-dispatch. Tests - Extended `default role derives from client_kind` to cover openai / mistral → apprentice. - New `set and read peer variant (Task #33)` — round-trip, rejection of invalid chars, slot-reuse clears variant. - New `set and read peer capabilities (Task #34)` — round-trip, tier out-of-range rejection retains prior value, bad CSV char (`"`) rejected. Notes - Build + e2e verification deferred: Zig is not on PATH in this environment. Pattern for every new code path mirrors established idioms in the same file (@memcpy slices, std.io.fixedBufferStream, std.mem.splitScalar, std.mem.writeInt with `buf[p_off..][0..2]`). - cartridge.json was hand-synchronised; note the pre-existing drift from cartridge.ncl (extra tools from Tasks #13..#15, #32, #35 live in .json only). Regenerating from Nickel would currently delete them; kept surgical until Nickel toolchain is available. - D3 in TODO says `just cartridge-install` in 007-lang is gated on these tasks shipping — that unblock now applies. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> https://claude.ai/code/session_01DobLJY3jgoso4M3z7xcZi8
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
.github/are retained — GitHub uses that location by defaultTest plan
.github/versions exist before removal.github/🤖 Generated with Claude Code