Skip to content

Record host mac-coordinator-64gb-20260925: hardware profile and five use receipts - #253

Merged
seathatflowsinourveins merged 1 commit into
mainfrom
host-receipts/mac-coordinator-64gb-20260925
Sep 25, 2026
Merged

seathatflowsinourveins merged 1 commit into
mainfrom
host-receipts/mac-coordinator-64gb-20260925

Conversation

@seathatflowsinourveins

@seathatflowsinourveins seathatflowsinourveins commented Sep 25, 2026 •

Copy link
Copy Markdown
Collaborator

Scope

  • What this PR changes: records the replacement coordinator Mac as host mac-coordinator-64gb-20260925 through the new-host loop (docs/contributing-evidence.md section 0): its measured hardware profile and five native_proven use-stage receipts for the components that its replacement checks exercised, plus the regenerated matrix and grand list.
  • Base commit: 720e294b5c10211d8f75a939bc478af734279d74 (the receipts' catalog_revision, where they were recorded); the branch is rebased onto f036e96e (Bind host receipts to landscape winner ids: refuse stack-id aliases, list unbound Mac receipts #214), with the generated files and manifests/evidence.json regenerated there
  • Owned paths touched: evidence/hosts/mac-coordinator-64gb-20260925/, evidence/artifacts/hw-profiles/mac-coordinator-64gb-20260925/, the new hosts[] entry in adoption/hardware-profiles.json, and the generated manifests/evidence.json, catalogs/landscape/component-evidence-matrix.json, catalogs/landscape/new-host-grand-list.json, docs/component-evidence-matrix.md and docs/new-host-grand-list.md.

Recorded from a fresh clone of the default branch, not from a pinned install checkout, as adoption/update.md ("Moving a host to a new release", step 4) requires. The host ID was confirmed by the user on 2026-09-25. adoption/launchd/launchd-agents.sh install was not run. Every command ran on this Mac (macOS 27.0 26A428, arm64) from a Claude Code session outside the Seatbelt sandbox.

Evidence-class table

Claim Evidence class Command / receipt
Hardware: Apple M5 Pro, 18 cores, 64 GB unified memory, arm64 native_proven hardware_profile.py --record-host; evidence/artifacts/hw-profiles/mac-coordinator-64gb-20260925/profile.json
Qdrant 1.19.1 (pin) on the running launchd service created a temporary collection, upserted three passages embedded by this host's Ollama (qwen3-embedding:4b, 2560 dims), ranked the backup passage first, deleted the collection (GET 404, collection count unchanged) native_proven evidence/hosts/mac-coordinator-64gb-20260925/mac-coordinator-64gb-20260925--qdrant--use--20260925.json
QMD 2.8.3 (pin) indexed adoption/ into a temporary index (Indexed: 17 new, from its own collection add output); release tag re-pin returned adoption/update.md first; a nonsense query returned 0 hits native_proven ...--qmd--use--20260925.json
restic 0.19.1 (pin): backup, check --read-data, restore --verify (each exit code printed), byte-identical restore with no extra files; one flipped byte in a pack makes check --read-data exit 1 (positive control); reads selected fields of the backup script's latest receipt on this host (repository on /Volumes/ORICO, exFAT, snapshot 5c15e0b04f3f, all four verification flags true; it does not show which restic binary that script ran) native_proven ...--restic--use--20260925.json
SocratiCode 1.14.0 (pin; a yes/no check confirms the Codex MCP entry launches that build) indexed a three-file temporary project over MCP stdio (59 chunks, Ollama embeddings into Qdrant), answered three questions with the expected file first, then codebase_remove left the Qdrant collection list unchanged native_proven ...--socraticode--use--20260925.json
ai-memory server 2.4.0 answered status (live capture, full FTS coverage, both local providers ok) and MCP initialize, tools/list, scoped memory_status and scoped memory_query (hits returned; counts only in the receipt) native_proven, unbound version ...--ai-memory--use--20260925.json

The ai-memory receipt is recorded with --component-version 2.4.0 --allow-unbound-version: the winner pin is 2.3.2, so it counts toward no derived status (the generated matrix still tallies it as a macOS pass, untested [1/0/0/0], because component_matrix.py counts unbound passes). scripts/receipt_staleness.py lists it under unbound (version 2.4.0). It is here as dated evidence that the service runs on this host.

Not recorded, because there is no catalog component or because the check is not a component's job: Ollama 0.34.4 (no manifests/stack.json or landscape id; it appears as the embedder inside the qdrant and socraticode receipts), and the agent-ecosystem health.py, native_policy.py and access_doctor.py results (repository and configuration checks of that project, not component use). Codex and Claude Code run versions that differ from the pins, and no functional check of them was made here.

Local commands run

$ python3 scripts/hardware_profile.py --record-host mac-coordinator-64gb-20260925 --label "macOS arm64, Apple M5 Pro, 18 cores, 64 GB unified memory (measured)"
{"status": "recorded"}
$ python3 scripts/host_receipts.py record ... (five times; every command in every receipt exits 0)
$ python3 scripts/component_matrix.py --write      -> {"flip_rule_violations": 0, "rows": 32, "status": "written"}
$ python3 scripts/new_host_grand_list.py --write   -> {"status": "written", "layers": 32, "winners": 66}
$ python3 scripts/host_receipts.py validate        -> {"receipts": 42, "status": "passed"}
$ python3 scripts/validate.py                      -> status passed (5447 hashed files after the rebase)
$ python3 scripts/component_matrix.py --check; python3 scripts/new_host_grand_list.py --check   -> checked / passed
$ python3 scripts/validate_catalogs.py; python3 tools/sota-convergence/build_verdicts.py --check; python3 scripts/build_ecosystem.py --check   -> passed
$ adoption/tools/gitleaks-guarded-macos dir evidence/hosts/mac-coordinator-64gb-20260925 --no-banner --redact   -> no leaks found (exit 0)
$ adoption/tools/gitleaks-guarded-macos dir evidence/artifacts/hw-profiles/mac-coordinator-64gb-20260925 --no-banner --redact   -> no leaks found (exit 0)
$ git diff --check   -> clean
$ python3 -m unittest   -> Ran 5169 tests in 617.5s, OK (skipped=746), exit 0, at 27b79a9b before the rebase (a detached worktree); after the rebase onto f036e96e: tests.test_host_receipts, test_component_matrix, test_new_host_grand_list, test_receipt_staleness and test_hardware_profile OK

scripts/verdict_flip_candidates.py lists no row from these receipts: they carry only the recorder's self review.

Decision record

None: evidence only. No verdict, pin or platform_status changes.

Host evidence

  • python3 scripts/host_receipts.py validate passes for every new/changed receipt.
  • Independent review is explicitly requested in this PR: each receipt carries only the recorder's self review. A receipt-level review (scripts/host_receipts.py review, contributing-evidence step 8, four points) needs a session other than the recording one; a subagent of the recording session would inherit its session id and be refused. The PR diff itself was reviewed by a separate headless reviewer session; its findings and their resolution are in a PR comment.
  • No platform_status change is made from a host receipt alone.

Receipts (all native_proven, stage use, second_physical_machine: true, hardware_profile_ref: mac-coordinator-64gb-20260925):

  • evidence/hosts/mac-coordinator-64gb-20260925/mac-coordinator-64gb-20260925--qdrant--use--20260925.json
  • evidence/hosts/mac-coordinator-64gb-20260925/mac-coordinator-64gb-20260925--qmd--use--20260925.json
  • evidence/hosts/mac-coordinator-64gb-20260925/mac-coordinator-64gb-20260925--restic--use--20260925.json
  • evidence/hosts/mac-coordinator-64gb-20260925/mac-coordinator-64gb-20260925--socraticode--use--20260925.json
  • evidence/hosts/mac-coordinator-64gb-20260925/mac-coordinator-64gb-20260925--ai-memory--use--20260925.json (unbound version)

Checklist

  • New/changed GitHub Actions are pinned to a full commit SHA with a version comment (no floating tags). No workflow changes.
  • New/changed workflows declare top-level permissions: contents: read. No workflow changes.
  • No secrets are printed, logged or committed; no new required secret was added. The Keychain was not read; the ORICO repository was not opened.
  • No new paid hosting, subscription or billing surface was introduced.
  • Peer-owned untracked files and worktrees were preserved.

🤖 Generated with Claude Code

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@seathatflowsinourveins
seathatflowsinourveins force-pushed the host-receipts/mac-coordinator-64gb-20260925 branch from 7989aaa to 27b79a9 Compare September 25, 2026 14:19
@seathatflowsinourveins

Copy link
Copy Markdown
Collaborator Author

Independent PR-diff review by a separate headless Claude Code session (Opus, read-only tools, at head 7989aaa9). It ran host_receipts.py validate, validate.py, component_matrix.py --check and new_host_grand_list.py --check (all pass) and reported no blocking issue. This is a diff review, not a receipt-level host_receipts.py review; that is still requested.

# Finding Resolution at 27b79a9b (receipts re-recorded, not hand-edited)
1 restic claim said "first" backup to "the ORICO drive" and "ran restic 0.19.1", which command 4's output did not show Command 4 now also prints the volume mount (/Volumes/ORICO) and repository directory name; the claim drops "first", and the limitation says the receipt does not show which restic binary the backup script ran
2 QMD's 17-file count came from Python counting files on disk Command 2 keeps QMD's own collection add line (Indexed: 17 new ...)
3 SocratiCode claim named Qdrant 1.19.1 with no command recording it Command 1 prints the Qdrant and Ollama versions
4 restic "exit 0" text was fixed in the print statement Command 2 captures and prints the real backup, check and restore exit codes
5 ai-memory "2.5.0 pre-release" wording Now "install directory is labelled 2.5.0 at source commit 19b6429"
6 QMD_CONFIG_DIR could override the temporary XDG config Command 2 unsets it
7 SocratiCode command 1 printed client configuration values Replaced with a yes/no check that the Codex entry launches tools/socraticode-1.14.0
8 Unit-test result missing from the body Added
9 Body pointed at a review comment that did not exist This comment
10 "counts toward no status" vs the matrix tally Body now says it counts toward no derived status but is tallied in the matrix
11 Hashed-file count 5440 Updated to 5443

@seathatflowsinourveins
seathatflowsinourveins force-pushed the host-receipts/mac-coordinator-64gb-20260925 branch from 27b79a9 to 71bb7a3 Compare September 25, 2026 14:37
…eceipts

Measure the replacement coordinator Mac with scripts/hardware_profile.py
--record-host (Apple M5 Pro, 18 cores, 64 GB unified memory, arm64) and
record native_proven use-stage receipts with scripts/host_receipts.py record
for the components its step-6 checks exercised:

- qdrant 1.19.1: temporary collection upsert, search and delete on the
  running server, with the query and passages embedded by this host's
  Ollama.
- qmd 2.8.3: BM25 search over a temporary index of adoption/, with a
  nonsense-query control.
- restic 0.19.1: throwaway backup, check --read-data, restore --verify and
  byte comparison with each exit code printed, a corrupted-pack positive
  control, and a read of this host's latest ORICO backup receipt.
- socraticode 1.14.0: MCP index, search and remove of a three-file
  temporary project through Ollama embeddings and Qdrant.
- ai-memory 2.4.0: status, and scoped MCP memory_status and memory_query.
  Not the 2.3.2 pin, so recorded with --allow-unbound-version; it does
  not count toward the winner's status.

Rerun scripts/component_matrix.py --write and
scripts/new_host_grand_list.py --write. Every receipt carries only the
recorder's self review; macos-arm64 stays drafted_not_accepted.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@seathatflowsinourveins
seathatflowsinourveins force-pushed the host-receipts/mac-coordinator-64gb-20260925 branch from 71bb7a3 to 68be9c0 Compare September 25, 2026 14:48
@seathatflowsinourveins
seathatflowsinourveins merged commit 8c7b7f3 into main Sep 25, 2026
25 of 28 checks passed
@seathatflowsinourveins
seathatflowsinourveins deleted the host-receipts/mac-coordinator-64gb-20260925 branch September 25, 2026 15:16
seathatflowsinourveins added a commit that referenced this pull request Sep 25, 2026
…odel-hosting work through GitHub issues (#266)

* Add a GitHub issue lane for host requests (workstation tracker, form, roles)

Other PCs ask a named host for work through GitHub issues; the GPU
workstation nativestack-5975wx-20260925 tracks, claims and reports them.
The tracker never executes, evaluates or forwards issue text to a model;
execution stays coordinator-run by a Claude session on the target host.

- adoption/host-roles.json: roles (workstation, mac-coordinator) and the
  requesting peers; every host_id is a native_proven hardware profile
  (test-enforced); macos-m5pro-20260924 is superseded by
  mac-coordinator-64gb-20260925 (PR #253 body).
- .github/ISSUE_TEMPLATE/workstation-request.yml: issue form with stable
  field ids and the host:workstation label (no config.yml).
- scripts/host_requests.py: stdlib gh-api tracker with roles, parse,
  compose, status, poll and lanes. Only claim, block, done, decline and
  ensure-labels write, and each takes --dry-run, which makes no GitHub
  call. Trust is the owner's own authorship only (OWNER, User, no GitHub
  App, repository owner); labels, titles and bodies never grant it.
- tests/test_host_requests.py: 39 no-network tests with a fake gh runner.
- adoption/templates/systemd/host-requests-workstation.{service,timer}:
  drafted oneshot poll on a monotonic 10-minute timer; not installed.
- recipes/host-request-lane.md (recipes/README.md row, LINK_DOCS entry)
  and docs/decisions/2026-09-25-host-request-lane.md.
- manifests/evidence.json: recipes/README.md re-registered with
  register_file (hot-file protocol).

Evidence class: a drafted lane (local_integration, synthetic,
source_review). No label, issue, claim, timer or notice was created on
GitHub or on any host.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* Host request lane, repair round 2: close the claim race and the WITHHELD gap

A second independent review of the round-1 fix found seven residual findings.
All seven are resolved:

- scripts/host_requests.py: claim on a currently-claimed request now refuses
  (exit 3) a session that differs from the one the status comment names,
  unless --takeover is given; the same session re-claims idempotently
  (previously any session could silently overwrite another's claim).
- scripts/host_requests.py, recipes/host-request-lane.md: status and lanes
  already replaced an untrusted item's title/requesting-host with
  "<untrusted: withheld>"; this round adds the missing status
  --show-untrusted-text flag (documented for a human reader only) as the one
  way to see the raw text, in text and JSON output alike.
- scripts/host_requests.py: done now requires the request to be currently
  claimed (ACTIONS["done"]["from"] dropped "blocked"). block is reachable
  straight from new, so being blocked was not, by itself, evidence that any
  session had claimed and done the work.
- tests/test_host_requests.py: NoticeTransportTests posts to a loopback
  http.server with http_proxy/HTTP_PROXY set and a 302 responder, asserting
  the notice reaches only the topic and the redirect is not followed.
- .github/ISSUE_TEMPLATE/workstation-request.yml, recipes: the Related
  description stays quoted (round 1); the YAML cross-check test now compares
  description/placeholder text too, and the credential-row note and
  compose --confirm gating from round 1 are otherwise unchanged.
- docs/decisions/2026-09-25-host-request-lane.md: appended a dated,
  counts-only acceptance record for both fix rounds (test counts, a 26/26
  mutation check, systemd-analyze --user verify, SchemaStore re-validation).

Evidence class: local_integration and synthetic (see the decision record).
No label, issue, claim, timer or notice was created on GitHub or any host;
status/lanes were read read-only against the real repository for this check.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Scout <scout@local>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
seathatflowsinourveins added a commit that referenced this pull request Sep 27, 2026
…omparison assertion

GPT-6 cross-family review at 506a524 (needs_changes). Three findings:

- Medium, active configuration remains published: at 506a524, the mcporter
  family had three receipts on disk (the unsuffixed file, -2 and -3, a
  supersession chain with -3 latest). The unsuffixed file and -2 each retold,
  in their own first limitation, why a still-earlier recording (deleted before
  commit 29eeab7, still readable in this branch's history before it) had
  leaked: that still-earlier recording's second command ran a bare
  `mcporter list` with no --config, auto-importing every MCP server from this
  host's live ~/.claude.json and ~/.codex/config.toml into its retained output
  excerpt. The unsuffixed file's and -2's own retelling of that fact itself
  named those same servers in prose, which AGENTS.md:44 bars from evidence
  regardless of whether individual names are otherwise public; -3 described
  the same history only in the abstract and named no server. Owner-delegated
  decision (accepted by GPT-6): withdraw the whole family (unsuffixed, -2 and
  -3) together with their manifests/evidence.json entries, and record one
  fresh generation with the same commands/arguments as -3 and no --supersedes.
  The commands have been unchanged since the still-earlier recording was
  replaced at 29eeab7; only prose was rewritten across the unsuffixed file,
  -2 and -3, each time fixing a different accuracy problem. All withdrawn
  content remains readable, byte-for-byte, in this branch's git history before
  this commit (no purge, per the owner's standing decision); host_receipts.py's
  id assignment reuses the freed unsuffixed id for the third time in this
  family. The new receipt's limitations say this plainly and name no server.
  headroom's own generation-3 cross-reference to "the mcporter receipt" is
  prose-only (no id, no server name) and needed no change.

- Medium, E2E verdict tally lacked retained evidence: mac-child-worker-e2e-20260927
  README.md's 88/83/4/1/0 verifier tally, and the workflow-status deduction that
  depends on it, had no retained verifier evidence backing them. Recovered the
  verify-phase output from this session's own workflow journal
  (wf_a6b18951-948, agent a3829f24d409b7123 -- confirmed against receipt.json's
  transcript_dir and agent ids), sanitized it to evidence/artifacts/mac-child-worker-e2e-20260927/verifier-verdicts.json
  (per claim: a positional id, verdict, cited source; no conversation text, no
  personal paths, no prompts), registered it, and updated the README to cite
  it. A recount script confirms the README's tally matches the file's own
  verdicts array exactly (83 confirmed, 4 corrected, 1 unverifiable, 0
  refuted, 88 total).

- Low, RTK comparison observed but not asserted: mac-coordinator-64gb-20260925--rtk--use--20260927-2.json's
  command 2 printed the host-config-vs-fixture comparison but gated its exit
  code only on the five probe mismatches. Rehearsed a fix (both positive and a
  negative control against a deliberately mismatched fixture) and recorded
  mac-coordinator-64gb-20260925--rtk--use--20260927-3.json, superseding -2 with
  the same arguments; command 2 now also asserts the comparison via its own
  exit code, and commands 1 and 3-6 are unchanged, rerun live.

Also merged origin/main (2 commits: landscape sweep isolation/repo-check fix,
Claude harness settings) per docs/lanes.md's hot-file protocol: took
origin/main's manifests/evidence.json, re-registered this branch's 20 files
with host_receipts.py's register_file (removed files no longer registered),
and re-ran both --write commands.

Full re-verification: host_receipts.py validate (184 receipts, passed),
validate.py (7343 hashed files, passed), component_matrix.py --check /
new_host_grand_list.py --check (32 rows/layers, 66 winners, 0 flip-rule
violations), git diff --check (clean). Grepped evidence/hosts/mac-coordinator-64gb-20260925/
and evidence/artifacts/mac-child-worker-e2e-20260927/ for openaiDeveloperDocs,
node_repl, socraticode and /Users/: no hits in any file this branch owns (one
hit remains in a pre-existing, already-merged file from #253,
mac-coordinator-64gb-20260925--socraticode--use--20260925.json, untouched by
this branch, where the word is that receipt's own component under test, not
the configuration-disclosure pattern this check targets).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017d27CMzkbLezdLv7vAStPu
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