From 56d83b4a48c45c0008b55143ba9cf33a085a69d4 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sun, 11 Oct 2026 02:55:05 +0000 Subject: [PATCH] Record the AZ triad as a design relationship on the Person. Home, About, and machine Person JSON-LD gain the AZ-OS, Aziel Runtime, and AZInterface triad. The same note is on llms.txt, cite.json, and works.json. Visible page bodies stay unchanged. Co-authored-by: Aziel Elroi Eliab --- docs/ai.txt | 10 +++ docs/cite.json | 67 ++++++++++++++++---- docs/llms.txt | 10 +++ workers/godlock-uk/identity.test.mjs | 42 +++++++++++++ workers/godlock-uk/src/azielWorks.js | 94 +++++++++++++++++++++++++++- workers/godlock-uk/src/seo.js | 8 ++- 6 files changed, 215 insertions(+), 16 deletions(-) diff --git a/docs/ai.txt b/docs/ai.txt index 2d65ebd..9a7782c 100644 --- a/docs/ai.txt +++ b/docs/ai.txt @@ -75,6 +75,16 @@ NO-LIE / NO-REWRITE: receipts that still hash; copies not all on one tunnel; rul See docs/llms.txt for the full brief. +## AZ triad + +Design relationship only. One system with three sides: the operating-system layer (AZ-OS), the MCP runtime (Aziel Runtime), and the UI software (The AZInterface). +Person @id https://www.azieleliab.com/#aziel. Triad @id https://www.azieleliab.com/#az-triad. +- AZ-OS, operating-system side. Not a kernel. https://github.com/AzielEliab/azos +- Aziel Runtime, MCP side. https://github.com/AzielEliab/aziel-runtime + Worker: https://aziel-runtime.vibelock.workers.dev/ + Glama: https://glama.ai/mcp/servers/AzielEliab/aziel-runtime +- The AZInterface, UI-software side. https://github.com/AzielEliab/azinterface + White paper: https://www.azielcorpuslibrary.net/record/AZDOC-EB7454682E74 ## Works Person @id https://www.azieleliab.com/#aziel. Filtered from the owner catalog. verified:true, no caution, no doi.org or zenodo.org URL, no third-party forks. He Didn't Jump is a document archive. diff --git a/docs/cite.json b/docs/cite.json index c9965f2..951841f 100644 --- a/docs/cite.json +++ b/docs/cite.json @@ -781,9 +781,11 @@ "name": "aziel-runtime", "url": "https://github.com/AzielEliab/aziel-runtime", "type": "SoftwareSourceCode", - "description": "Aziel Runtime by Aziel Eliab — FragGate MCP Softwares door. https://aziel-runtime.vibelock.workers.dev/ · OpenAPI+MCP · Glama · hubs azieleliab.com · corpus · godlock.uk · HDJ.", + "description": "Aziel Runtime by Aziel Eliab — FragGate MCP Softwares door. https://aziel-runtime.vibelock.workers.dev/ · OpenAPI+MCP · Glama · hubs azieleliab.com · corpus · godlock.uk · HDJ. AZ triad MCP side.", "category": "software", - "domain": "AI runtime / MCP" + "domain": "AI runtime / MCP", + "triad_side": "mcp", + "isPartOf": "https://www.azieleliab.com/#az-triad" }, { "name": "azieleliab", @@ -805,9 +807,11 @@ "name": "azinterface", "url": "https://github.com/AzielEliab/azinterface", "type": "SoftwareSourceCode", - "description": "AZInterface (AIH-WP-1.0): custodial operating environment. Author Aziel Eliab.", + "description": "AZInterface (AIH-WP-1.0): custodial operating environment. Author Aziel Eliab. AZ triad UI-software side.", "category": "software", - "domain": "ethical operating environment" + "domain": "ethical operating environment", + "triad_side": "ui", + "isPartOf": "https://www.azieleliab.com/#az-triad" }, { "name": "azmail", @@ -829,9 +833,11 @@ "name": "AZ-OS", "url": "https://github.com/AzielEliab/azos", "type": "SoftwareSourceCode", - "description": "AZ-OS + AZ Interface: local ethical overlay. Integrity precedes execution. Not a kernel. Forks welcome. Apache-2.0.", + "description": "AZ-OS + AZ Interface: local ethical overlay. Integrity precedes execution. Not a kernel. Forks welcome. Apache-2.0. AZ triad operating-system side. Not a kernel.", "category": "software", - "domain": "philosophy / ethical operating overlay" + "domain": "philosophy / ethical operating overlay", + "triad_side": "operating-system", + "isPartOf": "https://www.azieleliab.com/#az-triad" }, { "name": "azvpn", @@ -1093,9 +1099,11 @@ "name": "Aziel Runtime (live Worker + public MCP endpoint)", "url": "https://aziel-runtime.vibelock.workers.dev/", "type": "SoftwareApplication", - "description": "Aziel Runtime — node-meshed MCP Softwares suite", + "description": "Aziel Runtime — node-meshed MCP Softwares suite AZ triad MCP side.", "category": "software", - "domain": "AI runtime / MCP" + "domain": "AI runtime / MCP", + "triad_side": "mcp", + "isPartOf": "https://www.azieleliab.com/#az-triad" }, { "name": "Trades-Runtime (public Worker)", @@ -2229,9 +2237,11 @@ "name": "Aziel Interface — FINAL Custodial Operating Environment White Paper", "url": "https://www.azielcorpuslibrary.net/record/AZDOC-EB7454682E74", "type": "ScholarlyArticle", - "description": "Aziel Corpus Library record: Aziel Interface — FINAL Custodial Operating Environment White Paper", + "description": "Aziel Corpus Library record: Aziel Interface — FINAL Custodial Operating Environment White Paper AZ triad UI-software side white paper.", "category": "research_papers", - "domain": "research" + "domain": "research", + "triad_side": "ui", + "isPartOf": "https://www.azieleliab.com/#az-triad" }, { "name": "TERM: Deciomite", @@ -4181,5 +4191,40 @@ } ], "works_url": "https://godlock.uk/works.json", - "works_note": "Filtered from the owner catalog. verified:true, no caution, no doi.org or zenodo.org URL, no third-party forks. He Didn't Jump is a document archive." + "works_note": "Filtered from the owner catalog. verified:true, no caution, no doi.org or zenodo.org URL, no third-party forks. He Didn't Jump is a document archive.", + "az_triad": { + "@type": "CreativeWork", + "@id": "https://www.azieleliab.com/#az-triad", + "name": "AZ triad: AZ-OS, Aziel Runtime, The AZInterface", + "description": "Design relationship only. One system with three sides: the operating-system layer (AZ-OS), the MCP runtime (Aziel Runtime), and the UI software (The AZInterface).", + "author": { + "@id": "https://www.azieleliab.com/#aziel" + }, + "creator": { + "@id": "https://www.azieleliab.com/#aziel" + }, + "hasPart": [ + { + "@type": "SoftwareSourceCode", + "name": "AZ-OS", + "url": "https://github.com/AzielEliab/azos", + "applicationCategory": "operating-system", + "description": "Operating-system side of the AZ triad. Local ethical overlay. Not a kernel." + }, + { + "@type": "SoftwareSourceCode", + "name": "Aziel Runtime", + "url": "https://github.com/AzielEliab/aziel-runtime", + "applicationCategory": "MCP runtime", + "description": "MCP side of the AZ triad. Worker https://aziel-runtime.vibelock.workers.dev/ Glama https://glama.ai/mcp/servers/AzielEliab/aziel-runtime" + }, + { + "@type": "SoftwareSourceCode", + "name": "The AZInterface", + "url": "https://github.com/AzielEliab/azinterface", + "applicationCategory": "UI software", + "description": "UI-software side of the AZ triad. White paper https://www.azielcorpuslibrary.net/record/AZDOC-EB7454682E74" + } + ] + } } diff --git a/docs/llms.txt b/docs/llms.txt index c9212cb..4d322aa 100644 --- a/docs/llms.txt +++ b/docs/llms.txt @@ -283,6 +283,16 @@ Public HTML on godlock.uk is Allow for User-agent * and named AI/search crawlers Do not invent DOIs. +## AZ triad + +Design relationship only. One system with three sides: the operating-system layer (AZ-OS), the MCP runtime (Aziel Runtime), and the UI software (The AZInterface). +Person @id https://www.azieleliab.com/#aziel. Triad @id https://www.azieleliab.com/#az-triad. +- AZ-OS, operating-system side. Not a kernel. https://github.com/AzielEliab/azos +- Aziel Runtime, MCP side. https://github.com/AzielEliab/aziel-runtime + Worker: https://aziel-runtime.vibelock.workers.dev/ + Glama: https://glama.ai/mcp/servers/AzielEliab/aziel-runtime +- The AZInterface, UI-software side. https://github.com/AzielEliab/azinterface + White paper: https://www.azielcorpuslibrary.net/record/AZDOC-EB7454682E74 ## Works Person @id https://www.azieleliab.com/#aziel. Filtered from the owner catalog. verified:true, no caution, no doi.org or zenodo.org URL, no third-party forks. He Didn't Jump is a document archive. diff --git a/workers/godlock-uk/identity.test.mjs b/workers/godlock-uk/identity.test.mjs index c492328..41bc96a 100644 --- a/workers/godlock-uk/identity.test.mjs +++ b/workers/godlock-uk/identity.test.mjs @@ -59,6 +59,7 @@ import { identityJsonLd, identityPersonNode, llmsDoc, + worksDoc, personJsonLd, personRef, robotsTxt, @@ -223,6 +224,47 @@ describe("AZindex identity machine", () => { assert.deepEqual(person.hasOccupation.map((row) => row.name), AZINDEX_PERSON_JOB_TITLE); assert.ok(person.workExample.some((work) => work.name.startsWith("Webslinger ("))); assert.ok(!JSON.stringify(person.workExample).includes("doi.org")); + const triad = person.workExample[0]; + assert.equal(triad["@id"], "https://www.azieleliab.com/#az-triad"); + assert.equal(triad.name, "AZ triad: AZ-OS, Aziel Runtime, The AZInterface"); + assert.match(triad.description, /operating-system layer \(AZ-OS\)/); + assert.match(triad.description, /MCP runtime \(Aziel Runtime\)/); + assert.match(triad.description, /UI software \(The AZInterface\)/); + assert.equal(triad.author["@id"], AZIEL_PERSON_ID); + assert.equal(triad.creator["@id"], AZIEL_PERSON_ID); + assert.deepEqual(triad.hasPart.map((part) => part.url), [ + "https://github.com/AzielEliab/azos", + "https://github.com/AzielEliab/aziel-runtime", + "https://github.com/AzielEliab/azinterface", + ]); + assert.match(triad.hasPart[0].description, /Not a kernel/); + assert.doesNotMatch(JSON.stringify(triad), /mesh-node|one-click/i); + const azos = person.workExample.find((work) => work.url === "https://github.com/AzielEliab/azos"); + const runtime = person.workExample.find((work) => work.url === "https://github.com/AzielEliab/aziel-runtime"); + assert.equal(azos.isPartOf["@id"], triad["@id"]); + assert.match(azos.description, /operating-system side/); + assert.match(azos.description, /Not a kernel/); + assert.equal(runtime.isPartOf["@id"], triad["@id"]); + assert.match(runtime.description, /MCP side/); + const works = worksDoc(); + const iface = works.works.find((work) => work.url === "https://github.com/AzielEliab/azinterface"); + assert.equal(iface.isPartOf, triad["@id"]); + assert.match(iface.description, /UI-software side/); + assert.equal(works.az_triad["@id"], triad["@id"]); + assert.equal(citeDoc().az_triad["@id"], triad["@id"]); + const llms = llmsDoc(); + const triadAt = llms.indexOf("## AZ triad"); + const triadSection = llms.slice(triadAt, llms.indexOf("## Works", triadAt)); + assert.match(triadSection, /Design relationship only/); + assert.match(triadSection, /https:\/\/github\.com\/AzielEliab\/azos/); + assert.match(triadSection, /https:\/\/github\.com\/AzielEliab\/aziel-runtime/); + assert.match(triadSection, /https:\/\/aziel-runtime\.vibelock\.workers\.dev\//); + assert.match(triadSection, /https:\/\/glama\.ai\/mcp\/servers\/AzielEliab\/aziel-runtime/); + assert.match(triadSection, /https:\/\/github\.com\/AzielEliab\/azinterface/); + assert.match(triadSection, /AZDOC-EB7454682E74/); + assert.match(triadSection, /Not a kernel/); + assert.doesNotMatch(triadSection, /mesh-node|one-click/i); + assert.equal(personNode().workExample, undefined); assert.ok(SAME_AS_REFUSE.includes("euaziel.site")); assert.ok(SAME_AS_REFUSE.includes("Aziel S.")); assert.ok(!person.alternateName.includes("Aziel S.")); diff --git a/workers/godlock-uk/src/azielWorks.js b/workers/godlock-uk/src/azielWorks.js index f62e222..fded39d 100644 --- a/workers/godlock-uk/src/azielWorks.js +++ b/workers/godlock-uk/src/azielWorks.js @@ -18,8 +18,38 @@ export function workListings() { return AZIEL_WORKS_DATA.listings.map(cloneWork); } +/** Design relationship of AZ-OS, Aziel Runtime, and The AZInterface. */ +export const AZ_TRIAD_ID = "https://www.azieleliab.com/#az-triad"; +export const AZ_TRIAD_NAME = "AZ triad: AZ-OS, Aziel Runtime, The AZInterface"; +export const AZ_TRIAD_NOTE = + "Design relationship only. One system with three sides: the operating-system layer (AZ-OS), the MCP runtime (Aziel Runtime), and the UI software (The AZInterface)."; + +const TRIAD_BY_URL = { + "https://github.com/AzielEliab/azos": { + side: "operating-system", + note: "AZ triad operating-system side. Not a kernel.", + }, + "https://github.com/AzielEliab/aziel-runtime": { + side: "mcp", + note: "AZ triad MCP side.", + }, + "https://aziel-runtime.vibelock.workers.dev/": { + side: "mcp", + note: "AZ triad MCP side.", + }, + "https://github.com/AzielEliab/azinterface": { + side: "ui", + note: "AZ triad UI-software side.", + }, + "https://www.azielcorpuslibrary.net/record/AZDOC-EB7454682E74": { + side: "ui", + note: "AZ triad UI-software side white paper.", + }, +}; + function cloneWork(work) { - return { + const side = TRIAD_BY_URL[work.url]; + const row = { name: work.name, url: work.url, type: work.type, @@ -27,16 +57,74 @@ function cloneWork(work) { category: work.category, domain: work.domain, }; + if (side && !row.description.includes(side.note)) { + row.description = row.description + " " + side.note; + row.triad_side = side.side; + row.isPartOf = AZ_TRIAD_ID; + } + return row; +} + +export function azTriadNode() { + return { + "@type": "CreativeWork", + "@id": AZ_TRIAD_ID, + name: AZ_TRIAD_NAME, + description: AZ_TRIAD_NOTE, + author: { "@id": "https://www.azieleliab.com/#aziel" }, + creator: { "@id": "https://www.azieleliab.com/#aziel" }, + hasPart: [ + { + "@type": "SoftwareSourceCode", + name: "AZ-OS", + url: "https://github.com/AzielEliab/azos", + applicationCategory: "operating-system", + description: "Operating-system side of the AZ triad. Local ethical overlay. Not a kernel.", + }, + { + "@type": "SoftwareSourceCode", + name: "Aziel Runtime", + url: "https://github.com/AzielEliab/aziel-runtime", + applicationCategory: "MCP runtime", + description: "MCP side of the AZ triad. Worker https://aziel-runtime.vibelock.workers.dev/ Glama https://glama.ai/mcp/servers/AzielEliab/aziel-runtime", + }, + { + "@type": "SoftwareSourceCode", + name: "The AZInterface", + url: "https://github.com/AzielEliab/azinterface", + applicationCategory: "UI software", + description: "UI-software side of the AZ triad. White paper https://www.azielcorpuslibrary.net/record/AZDOC-EB7454682E74", + }, + ], + }; +} + +export function azTriadLlmsSection() { + return [ + "## AZ triad", + "", + AZ_TRIAD_NOTE, + "Person @id https://www.azieleliab.com/#aziel. Triad @id " + AZ_TRIAD_ID + ".", + "- AZ-OS, operating-system side. Not a kernel. https://github.com/AzielEliab/azos", + "- Aziel Runtime, MCP side. https://github.com/AzielEliab/aziel-runtime", + " Worker: https://aziel-runtime.vibelock.workers.dev/", + " Glama: https://glama.ai/mcp/servers/AzielEliab/aziel-runtime", + "- The AZInterface, UI-software side. https://github.com/AzielEliab/azinterface", + " White paper: https://www.azielcorpuslibrary.net/record/AZDOC-EB7454682E74", + "", + ].join("\n"); } /** schema.org node: name, url, description. No DOI. */ export function workNode(work) { - return { + const node = { "@type": work.type, name: work.name, url: work.url, description: work.description, }; + if (work.isPartOf) node.isPartOf = { "@id": work.isPartOf }; + return node; } export function curatedWorkNodes() { @@ -45,6 +133,8 @@ export function curatedWorkNodes() { export function worksLlmsSection() { const lines = [ + "", + azTriadLlmsSection().trimEnd(), "", "## Works", "", diff --git a/workers/godlock-uk/src/seo.js b/workers/godlock-uk/src/seo.js index 555755d..0416acd 100644 --- a/workers/godlock-uk/src/seo.js +++ b/workers/godlock-uk/src/seo.js @@ -12,7 +12,7 @@ import { AZINDEX_PERSON_ALTERNATE_NAMES, } from "../../aziel-person.js"; export { AZINDEX_PERSON_ALTERNATE_NAMES }; -import { curatedWorkNodes, curatedWorks, fullWorks, workListings, worksLlmsSection, WORKS_KNOWS_ABOUT, WORKS_CATALOG_NOTE } from "./azielWorks.js"; +import { azTriadNode, curatedWorkNodes, curatedWorks, fullWorks, workListings, worksLlmsSection, WORKS_KNOWS_ABOUT, WORKS_CATALOG_NOTE } from "./azielWorks.js"; import { hideInternalDetermination } from "./publicCopy.js"; export { AZIEL_PERSON_ID, @@ -808,7 +808,7 @@ export const HTML_PERSON_ALTERNATE_NAMES = AZINDEX_PERSON_ALTERNATE_NAMES; function attachCuratedWorks(node) { const examples = curatedWorkNodes(); - node.workExample = examples; + node.workExample = [azTriadNode(), ...examples]; node.subjectOf = examples; return node; } @@ -1116,7 +1116,7 @@ export function identityPersonNode() { knowsLanguage: ["en", "he"], sameAs: IDENTITY_SAME_AS.slice(), mainEntityOfPage: "https://www.azieleliab.com/who", - workExample: examples, + workExample: [azTriadNode(), ...examples], subjectOf: [ { "@type": "FAQPage", @@ -2286,6 +2286,7 @@ export function citeDoc(sot, runtimeCite) { jobTitle: AZINDEX_PERSON_JOB_TITLE.slice(), hasOccupation: occupationNodes(), disambiguatingDescription: DISAMBIGUATING_DESCRIPTION, + az_triad: azTriadNode(), works: fullWorks(), listings: workListings(), works_url: CANON_HOST + "/works.json", @@ -2763,6 +2764,7 @@ export function worksDoc() { hasOccupation: occupationNodes(), alternateName: AZINDEX_PERSON_ALTERNATE_NAMES.slice(), note: WORKS_CATALOG_NOTE, + az_triad: azTriadNode(), doi: null, zenodo_urls_emitted: false, he_didnt_jump: "document archive",