From 34551f0ae086fea811cc4c1ac525529476b3dff2 Mon Sep 17 00:00:00 2001 From: midiakiasat Date: Sat, 11 Jul 2026 14:54:58 +0200 Subject: [PATCH] Bind CONTROL v0.2.51 backlink to Org profile --- README.md | 15 ++++++ package.json | 6 ++- ...ROFILE_MOVE107_CONTROL_V0251_BACKLINK.json | 36 +++++++++++++ ...profile-move107-control-v0251-backlink.mjs | 54 +++++++++++++++++++ ...le-move107-control-v0251-backlink.test.mjs | 10 ++++ 5 files changed, 119 insertions(+), 2 deletions(-) create mode 100644 public/receipts/ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK.json create mode 100755 scripts/verify-org-profile-move107-control-v0251-backlink.mjs create mode 100644 tests/org-profile-move107-control-v0251-backlink.test.mjs diff --git a/README.md b/README.md index 0f0eef5..8a09675 100644 --- a/README.md +++ b/README.md @@ -767,3 +767,18 @@ Org profile 0.0.59 binds the public surface to CONTROL v0.2.50. - No current production claim: true - No starship claim: true - No physical production instructions: true + + +## Move 107 — Org profile binds CONTROL v0.2.51 backlink + +Org profile 0.0.60 binds the CONTROL v0.2.51 public closure into its public backlink chain. + +- CONTROL release: https://github.com/ANTIMATTERIUM/CONTROL/releases/tag/v0.2.51-antimatterium-control-move105-surface-closure +- CONTROL CI: https://github.com/ANTIMATTERIUM/CONTROL/actions/runs/29152869204 +- CONTROL closure ID: 88760f9d9c0dc29d456878503895c5c47bbc5c0a42d33d5050b6fbb95bd1bd2b +- Org profile backlink ID: 67c60e824889be73002b529048bb530363c0923004b4d3debf6db0518e9880ba +- Short public tag required: true +- No local root required: true +- No current production claim: true +- No starship claim: true +- No physical production instructions: true diff --git a/package.json b/package.json index f3f6f3e..058e69b 100644 --- a/package.json +++ b/package.json @@ -95,8 +95,10 @@ "verify:move103-control-v0249-backlink": "node scripts/verify-org-profile-move103-control-v0249-backlink.mjs", "test:move103-control-v0249-backlink": "node --test tests/org-profile-move103-control-v0249-backlink.test.mjs", "verify:move105-control-v0250-backlink": "node scripts/verify-org-profile-move105-control-v0250-backlink.mjs", - "test:move105-control-v0250-backlink": "node --test tests/org-profile-move105-control-v0250-backlink.test.mjs" + "test:move105-control-v0250-backlink": "node --test tests/org-profile-move105-control-v0250-backlink.test.mjs", + "verify:move107-control-v0251-backlink": "node scripts/verify-org-profile-move107-control-v0251-backlink.mjs", + "test:move107-control-v0251-backlink": "node --test tests/org-profile-move107-control-v0251-backlink.test.mjs" }, "type": "module", - "version": "0.0.59" + "version": "0.0.60" } diff --git a/public/receipts/ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK.json b/public/receipts/ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK.json new file mode 100644 index 0000000..a518252 --- /dev/null +++ b/public/receipts/ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK.json @@ -0,0 +1,36 @@ +{ + "protocol": "ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK", + "move": 107, + "surface": "Org profile", + "package": { + "name": "@antimatterium/org-profile", + "version": "0.0.60", + "release_tag": "v0.0.60-antimatterium-org-profile-control-v0251-backlink" + }, + "bound_control": { + "version": "0.2.51", + "release_tag": "v0.2.51-antimatterium-control-move105-surface-closure", + "release": "https://github.com/ANTIMATTERIUM/CONTROL/releases/tag/v0.2.51-antimatterium-control-move105-surface-closure", + "ci_run": "https://github.com/ANTIMATTERIUM/CONTROL/actions/runs/29152869204", + "main_sha": "05be850cd6ee4e1f71dc643859b3ec1e531e05af", + "closure_id": "88760f9d9c0dc29d456878503895c5c47bbc5c0a42d33d5050b6fbb95bd1bd2b" + }, + "membership": { + "control_v0251_release_bound": true, + "control_v0251_member": true, + "move106_closure_bound": true + }, + "constraints": { + "short_public_tag_required": true, + "no_local_root_required": true, + "no_current_production_claim": true, + "no_starship_claim": true, + "no_physical_production_instructions": true + }, + "backlink": { + "id": "67c60e824889be73002b529048bb530363c0923004b4d3debf6db0518e9880ba", + "kind": "move107_org_profile_control_v0251_backlink", + "replayable_without_local_root": true, + "public_release_bound": true + } +} diff --git a/scripts/verify-org-profile-move107-control-v0251-backlink.mjs b/scripts/verify-org-profile-move107-control-v0251-backlink.mjs new file mode 100755 index 0000000..378a358 --- /dev/null +++ b/scripts/verify-org-profile-move107-control-v0251-backlink.mjs @@ -0,0 +1,54 @@ +#!/usr/bin/env node +import fs from "node:fs"; +import crypto from "node:crypto"; +import assert from "node:assert/strict"; + +const receiptPath = "public/receipts/ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK.json"; +const receipt = JSON.parse(fs.readFileSync(receiptPath, "utf8")); + +assert.equal(receipt.protocol, "ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK"); +assert.equal(receipt.move, 107); +assert.equal(receipt.surface, "Org profile"); +assert.equal(receipt.package.name, "@antimatterium/org-profile"); +assert.equal(receipt.package.version, "0.0.60"); +assert.equal(receipt.package.release_tag, "v0.0.60-antimatterium-org-profile-control-v0251-backlink"); + +assert.equal(receipt.bound_control.version, "0.2.51"); +assert.equal(receipt.bound_control.release_tag, "v0.2.51-antimatterium-control-move105-surface-closure"); +assert.equal(receipt.bound_control.release, "https://github.com/ANTIMATTERIUM/CONTROL/releases/tag/v0.2.51-antimatterium-control-move105-surface-closure"); +assert.equal(receipt.bound_control.ci_run, "https://github.com/ANTIMATTERIUM/CONTROL/actions/runs/29152869204"); +assert.equal(receipt.bound_control.main_sha, "05be850cd6ee4e1f71dc643859b3ec1e531e05af"); +assert.equal(receipt.bound_control.closure_id, "88760f9d9c0dc29d456878503895c5c47bbc5c0a42d33d5050b6fbb95bd1bd2b"); + +assert.equal(receipt.membership.control_v0251_release_bound, true); +assert.equal(receipt.membership.control_v0251_member, true); +assert.equal(receipt.membership.move106_closure_bound, true); + +assert.equal(receipt.constraints.short_public_tag_required, true); +assert.equal(receipt.constraints.no_local_root_required, true); +assert.equal(receipt.constraints.no_current_production_claim, true); +assert.equal(receipt.constraints.no_starship_claim, true); +assert.equal(receipt.constraints.no_physical_production_instructions, true); + +const { backlink, ...canonical } = receipt; +const computed = crypto.createHash("sha256").update(JSON.stringify(canonical)).digest("hex"); +assert.equal(backlink.id, computed); +assert.equal(backlink.id, "67c60e824889be73002b529048bb530363c0923004b4d3debf6db0518e9880ba"); +assert.equal(backlink.replayable_without_local_root, true); +assert.equal(backlink.public_release_bound, true); + +const serialized = JSON.stringify(receipt); +const localUserRootToken = ["/", "Users", "/"].join(""); +const localDownloadsAppsToken = ["Downloads", "Apps"].join("/"); +assert.equal(serialized.includes(localUserRootToken), false); +assert.equal(serialized.includes(localDownloadsAppsToken), false); + +console.log("ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK_VERIFY_PASS=true"); +console.log("ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK_CONTROL_V0251_RELEASE_BOUND=true"); +console.log("ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK_CONTROL_V0251_MEMBER=true"); +console.log("ANTIMATTERIUM_SHORT_PUBLIC_TAG_REQUIRED=true"); +console.log("ANTIMATTERIUM_NO_LOCAL_ROOT_REQUIRED=true"); +console.log("ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK_ID=" + backlink.id); +console.log("NO_CURRENT_PRODUCTION_CLAIM=true"); +console.log("NO_STARSHIP_CLAIM=true"); +console.log("NO_PHYSICAL_PRODUCTION_INSTRUCTIONS=true"); diff --git a/tests/org-profile-move107-control-v0251-backlink.test.mjs b/tests/org-profile-move107-control-v0251-backlink.test.mjs new file mode 100644 index 0000000..ffe5943 --- /dev/null +++ b/tests/org-profile-move107-control-v0251-backlink.test.mjs @@ -0,0 +1,10 @@ +import test from "node:test"; +import assert from "node:assert/strict"; +import { spawnSync } from "node:child_process"; + +test("Org profile Move 107 verifier receipt is stable", () => { + const result = spawnSync(process.execPath, ["scripts/verify-org-profile-move107-control-v0251-backlink.mjs"], { encoding: "utf8" }); + assert.equal(result.status, 0, result.stderr || result.stdout); + assert.match(result.stdout, /ANTIMATTERIUM_ORG_PROFILE_MOVE107_CONTROL_V0251_BACKLINK_VERIFY_PASS=true/); + assert.match(result.stdout, /67c60e824889be73002b529048bb530363c0923004b4d3debf6db0518e9880ba/); +});