Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
36 changes: 3 additions & 33 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,34 +1,4 @@
# SPDX-License-Identifier: MPL-2.0
# CODEOWNERS - Define code review assignments for GitHub
# See: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners

# Default: sole maintainer for all files
* @hyperpolymath

# Security-sensitive files require explicit ownership
SECURITY.md @hyperpolymath
.github/workflows/ @hyperpolymath
.machine_readable/ @hyperpolymath
contractiles/ @hyperpolymath

# License files
LICENSE @hyperpolymath
LICENSES/ @hyperpolymath

# Configuration
.gitignore @hyperpolymath
.github/ @hyperpolymath

# Documentation
README* @hyperpolymath
CONTRIBUTING* @hyperpolymath
CODE_OF_CONDUCT* @hyperpolymath
GOVERNANCE* @hyperpolymath
MAINTAINERS* @hyperpolymath
CHANGELOG* @hyperpolymath
ROADMAP* @hyperpolymath

# Build and CI
Justfile @hyperpolymath
Makefile @hyperpolymath
*.sh @hyperpolymath
# Solo-maintained hyperpolymath repo: no owner lines by policy.
# See hyperpolymath/standards CODEOWNERS-POLICY.adoc (Rule 1).
# Sole-maintainer review is moot; SPDX headers carry attribution.
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ effects = "The estate-wide rollup (1/28 specs scored, 50% system coverage) canno

[[should]]
id = "S1"
text = "Placeholder tokens (e.g. {{PROJECT_NAME}}, {{CODE_STYLE}}, {{AGENT_ID}}, {{TIMESTAMP}}, {{PRIMARY_LANGUAGE}}) SHOULD be consistently named and documented across all *.a2ml.template files so tooling can auto-fill them."
text = "Placeholder tokens (e.g. Hyperpolymath Standards, {{CODE_STYLE}}, {{AGENT_ID}}, {{TIMESTAMP}}, {{PRIMARY_LANGUAGE}}) SHOULD be consistently named and documented across all *.a2ml.template files so tooling can auto-fill them."
system = "none"
status = "manual-only"
effects = "Without a documented placeholder contract, any future 'a2ml init' automation (referenced as 'to be written' in STATE.a2ml.v2.spec.adoc under k9-init) has to reverse-engineer naming conventions from each template file individually, risking inconsistent substitution across the 7 files."
Expand Down
4 changes: 2 additions & 2 deletions .machine_readable/scorecards/agentic-a2ml.scorecard.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ effects = "Licence compliance for redistribution of individual files (e.g. by do
[[must]]
id = "M5"
text = "A reference implementation or parser for AGENTIC.a2ml MUST exist so the format is machine-actionable, not merely descriptive."
system = "none — ffi/zig and ffi/rsr-adapter.ad[bs] are unfilled `{{PROJECT}}`/template scaffolding, not a working parser; ncl/lib files are generic Rhodium-standard templates unrelated to AGENTIC.a2ml semantics"
system = "none — ffi/zig and ffi/rsr-adapter.ad[bs] are unfilled `STANDARDS`/template scaffolding, not a working parser; ncl/lib files are generic Rhodium-standard templates unrelated to AGENTIC.a2ml semantics"
status = "fail"
effects = "The project's own STATE.a2ml (.machine_readable/6a2/STATE.a2ml) lists 'Begin reference implementation design', 'Implement basic Deno parser for AGENTIC.scm', and 'Complete validation tooling' as still-open critical-next-actions, and records completion-percentage=85 with maturity='experimental'. Any downstream repo attempting to actually gate agent actions per this spec has no runnable reference to integrate against or test conformance."

Expand Down Expand Up @@ -72,7 +72,7 @@ id = "S4"
text = "Cross-language FFI bindings SHOULD be functional (compilable/testable) rather than unfilled templates."
system = "ffi/zig/build.zig `zig build test` / `zig build test-integration` (would need the `{{project}}` placeholders resolved and src/main.zig to implement the extern functions referenced in test/integration_test.zig)"
status = "fail"
effects = "ffi/zig/test/integration_test.zig and ffi/zig/build.zig still contain unresolved `{{PROJECT}}`/`{{project}}` template placeholders (would not compile as-is), and ffi/rsr-adapter.ad[bs] implements an unrelated repository-customisation helper (AI_Target enum for Claude/Copilot) rather than an AGENTIC.a2ml gating adapter; no language binding for this spec is currently buildable."
effects = "ffi/zig/test/integration_test.zig and ffi/zig/build.zig still contain unresolved `STANDARDS`/`{{project}}` template placeholders (would not compile as-is), and ffi/rsr-adapter.ad[bs] implements an unrelated repository-customisation helper (AI_Target enum for Claude/Copilot) rather than an AGENTIC.a2ml gating adapter; no language binding for this spec is currently buildable."

[[could]]
id = "C1"
Expand Down
2 changes: 1 addition & 1 deletion .machine_readable/scorecards/anchor-a2ml.scorecard.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ id = "S4"
text = "FFI bindings provided for the format SHOULD be a working, project-specific implementation rather than an unfilled template."
system = "none"
status = "fail"
effects = "ffi/zig/src/main.zig, build.zig and test/integration_test.zig are entirely templated with literal '{{project}}'/'{{PROJECT}}' placeholders (e.g. 'export fn {{project}}_init()') and reference a nonexistent 'src/abi/Foreign.idr' Idris2 ABI — this is uncompiled, unrunnable boilerplate, not an anchor-a2ml FFI. Any consumer expecting a usable Zig binding for ANCHOR parsing will find none; 'zig build test' would fail to even parse given the template placeholders."
effects = "ffi/zig/src/main.zig, build.zig and test/integration_test.zig are entirely templated with literal '{{project}}'/'STANDARDS' placeholders (e.g. 'export fn {{project}}_init()') and reference a nonexistent 'src/abi/Foreign.idr' Idris2 ABI — this is uncompiled, unrunnable boilerplate, not an anchor-a2ml FFI. Any consumer expecting a usable Zig binding for ANCHOR parsing will find none; 'zig build test' would fail to even parse given the template placeholders."

[[should]]
id = "S5"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ id = "M3"
text = "The C-ABI FFI implementation (ffi/zig) MUST be a compilable, non-template implementation matching the declared Idris2 ABI."
system = "none"
status = "fail"
effects = "ffi/zig/build.zig and ffi/zig/src/main.zig still contain unfilled template placeholders (`{{PROJECT}}`, `{{project}}`) and ffi/zig/test/integration_test.zig likewise references `{{project}}_init` etc. — this cannot compile as-is. (Contrast: avow-lib/ffi/zig/src/main.zig is a real, filled-in 'STAMP FFI Implementation'.) Any downstream binding (Rust example in avow-lib/examples/rust, Deno example in avow-lib/examples/deno) that expects a working libstamp/libavow shared library from ffi/zig will fail to build."
effects = "ffi/zig/build.zig and ffi/zig/src/main.zig still contain unfilled template placeholders (`STANDARDS`, `{{project}}`) and ffi/zig/test/integration_test.zig likewise references `{{project}}_init` etc. — this cannot compile as-is. (Contrast: avow-lib/ffi/zig/src/main.zig is a real, filled-in 'STAMP FFI Implementation'.) Any downstream binding (Rust example in avow-lib/examples/rust, Deno example in avow-lib/examples/deno) that expects a working libstamp/libavow shared library from ffi/zig will fail to build."

[[must]]
id = "M4"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ effects = "Regressions in DNS TXT parsing or schema validation logic (both core
[[must]]
id = "M3"
text = "The reference Zig FFI layer MUST have integration tests that actually compile and run against the exported ABI."
system = "none — ffi/zig/test/integration_test.zig is an unsubstituted template (contains literal `{{PROJECT}}`/`{{project}}` placeholders), so it cannot compile with `zig build test` as-is; no CI workflow invokes zig build/test"
system = "none — ffi/zig/test/integration_test.zig is an unsubstituted template (contains literal `STANDARDS`/`{{project}}` placeholders), so it cannot compile with `zig build test` as-is; no CI workflow invokes zig build/test"
status = "fail"
effects = "Downstream systems-integration consumers relying on the advertised 'Zig FFI — C-compatible systems integration layer' have no evidence the FFI boundary works or is tested at all."

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ id = "S3"
text = "The documented Idris2-ABI/Zig-FFI layer SHOULD be a working implementation, not a placeholder template."
system = "none"
status = "fail"
effects = "ABI-FFI-README.md, ffi/zig/src/main.zig, and ffi/zig/test/integration_test.zig all still contain literal unfilled `{{PROJECT}}`/`{{project}}` template tokens and there is no src/abi/ (Idris2) directory at all; any consumer expecting a cross-language C ABI for AIBDP enforcement (as RSR-COMPLIANCE.md's 'Interoperability (iSOS)' section implies is planned) will find only scaffolding, not code that builds."
effects = "ABI-FFI-README.md, ffi/zig/src/main.zig, and ffi/zig/test/integration_test.zig all still contain literal unfilled `STANDARDS`/`{{project}}` template tokens and there is no src/abi/ (Idris2) directory at all; any consumer expecting a cross-language C ABI for AIBDP enforcement (as RSR-COMPLIANCE.md's 'Interoperability (iSOS)' section implies is planned) will find only scaffolding, not code that builds."

[[should]]
id = "S4"
Expand Down
2 changes: 1 addition & 1 deletion .machine_readable/svc/k9/examples/ci-config.k9.ncl
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ K9!
name = "ci-config",
version = "1.0.0",
description = "CI/CD configuration with runtime validation",
author = "{{AUTHOR}} <{{AUTHOR_EMAIL}}>",
author = "Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>",
},
},

Expand Down
6 changes: 3 additions & 3 deletions .machine_readable/svc/k9/examples/project-metadata.k9.ncl
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ K9!
name = "project-metadata",
version = "1.0.0",
description = "Pure data configuration for project metadata",
author = "{{AUTHOR}} <{{AUTHOR_EMAIL}}>",
author = "Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>",
},
},

Expand All @@ -35,8 +35,8 @@ K9!
},

author = {
name = "{{AUTHOR}}",
email = "{{AUTHOR_EMAIL}}",
name = "Jonathan D.A. Jewell",
email = "j.d.a.jewell@open.ac.uk",
organization = "{{AUTHOR_ORG}}",
},

Expand Down
6 changes: 3 additions & 3 deletions .machine_readable/svc/k9/examples/setup-repo.k9.ncl
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ K9!
name = "setup-repo",
version = "1.0.0",
description = "Automated repository setup with RSR standards",
author = "{{AUTHOR}} <{{AUTHOR_EMAIL}}>",
author = "Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>",
},
warnings = [
"This component has full system access",
Expand Down Expand Up @@ -104,8 +104,8 @@ K9!
description = "Initialize Git repository",
commands = [
"git init -b %{config.git.default_branch}",
"git config user.name '{{AUTHOR}}'",
"git config user.email '{{AUTHOR_EMAIL}}'",
"git config user.name 'Jonathan D.A. Jewell'",
"git config user.email 'j.d.a.jewell@open.ac.uk'",
"echo '✓ Git initialized'",
],
},
Expand Down
2 changes: 1 addition & 1 deletion .machine_readable/svc/k9/template-hunt.k9.ncl
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ K9!
name = "TODO: component-name",
version = "1.0.0",
description = "TODO: Detailed description of what this component does",
author = "{{AUTHOR}} <{{AUTHOR_EMAIL}}>",
author = "Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>",
},
warnings = [
"This component has full system access",
Expand Down
2 changes: 1 addition & 1 deletion .machine_readable/svc/k9/template-kennel.k9.ncl
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ K9!
name = "TODO: component-name",
version = "1.0.0",
description = "TODO: Brief description of what this component contains",
author = "{{AUTHOR}} <{{AUTHOR_EMAIL}}>",
author = "Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>",
},
},

Expand Down
2 changes: 1 addition & 1 deletion .machine_readable/svc/k9/template-yard.k9.ncl
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ K9!
name = "TODO: component-name",
version = "1.0.0",
description = "TODO: Brief description with validation details",
author = "{{AUTHOR}} <{{AUTHOR_EMAIL}}>",
author = "Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>",
},
},

Expand Down
17 changes: 17 additions & 0 deletions 0-AI-MANIFEST.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -100,3 +100,20 @@ flag, never edit."**
- **Maintained By:** Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk>
- **Licence:** see `LICENSE`
- **Protocol:** https://github.com/hyperpolymath/0-ai-gatekeeper-protocol

<!-- BEGIN requires-initialisation -->

## PRIORITY ACTION — this repository is not fully initialised

54 substitution token(s) still have no value. **Read
`REQUIRES_INITIALISATION.md` in the repository root before doing anything
else here** — it lists every outstanding token, what it means, and which
files it belongs in.

Do not fabricate values for them, and do not delete the sections that
contain them to quiet a gate. They are unfilled because they need a
decision, not because they were overlooked. Resolve what you legitimately
can, leave the rest, and delete `REQUIRES_INITIALISATION.md` only when
nothing outstanding remains.

<!-- END requires-initialisation -->
4 changes: 2 additions & 2 deletions 0-ai-gatekeeper-protocol/ABI-FFI-README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{{~ Aditionally delete this line and fill out the template below ~}}

# {{PROJECT}} ABI/FFI Documentation
# STANDARDS ABI/FFI Documentation

## Overview

Expand Down Expand Up @@ -247,7 +247,7 @@ gcc -o example example.c -l{{project}} -L./zig-out/lib
### From Idris2

```idris
import {{PROJECT}}.ABI.Foreign
import STANDARDS.ABI.Foreign

main : IO ()
main = do
Expand Down
8 changes: 4 additions & 4 deletions 0-ai-gatekeeper-protocol/CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Replace all {{PLACEHOLDER}} values:
Standards - Your project name
hyperpolymath - GitHub/GitLab username or org
standards - Repository name
{{CONDUCT_EMAIL}} - Email for conduct reports
j.d.a.jewell@open.ac.uk - Email for conduct reports
{{CONDUCT_TEAM}} - Name of conduct team/committee
{{RESPONSE_TIME}} - Initial response SLA (e.g., 48 hours)
2026 - Current year
Expand Down Expand Up @@ -136,7 +136,7 @@ If you experience or witness unacceptable behaviour, or have any other concerns,

| Method | Details | Best For |
|--------|---------|----------|
| **Email** | {{CONDUCT_EMAIL}} | Detailed reports, sensitive matters |
| **Email** | j.d.a.jewell@open.ac.uk | Detailed reports, sensitive matters |
| **Private Message** | Contact any maintainer directly | Quick questions, minor issues |
| **Anonymous Form** | [Link to form if available] | When you need anonymity |

Expand Down Expand Up @@ -231,7 +231,7 @@ For contributors with elevated access (Perimeter 2 or 1):
If you believe an enforcement decision was made in error:

1. **Wait 7 days** after the decision (cooling-off period)
2. **Email** {{CONDUCT_EMAIL}} with subject line "Appeal: [Original Report ID]"
2. **Email** j.d.a.jewell@open.ac.uk with subject line "Appeal: [Original Report ID]"
3. **Explain** why you believe the decision should be reconsidered
4. **Provide** any new information not previously available

Expand Down Expand Up @@ -311,7 +311,7 @@ We thank these communities for their leadership in creating welcoming spaces.
If you have questions about this Code of Conduct:

- Open a [Discussion](https://github.com/hyperpolymath/standards/discussions) (for general questions)
- Email {{CONDUCT_EMAIL}} (for private questions)
- Email j.d.a.jewell@open.ac.uk (for private questions)
- Contact any maintainer directly

---
Expand Down
2 changes: 1 addition & 1 deletion 0-ai-gatekeeper-protocol/ffi/zig/build.zig
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// {{PROJECT}} FFI Build Configuration
// STANDARDS FFI Build Configuration
// SPDX-License-Identifier: MPL-2.0

const std = @import("std");
Expand Down
4 changes: 2 additions & 2 deletions 0-ai-gatekeeper-protocol/ffi/zig/src/main.zig
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// {{PROJECT}} FFI Implementation
// STANDARDS FFI Implementation
//
// This module implements the C-compatible FFI declared in src/abi/Foreign.idr
// All types and layouts must match the Idris2 ABI definitions.
Expand All @@ -9,7 +9,7 @@ const std = @import("std");

// Version information (keep in sync with project)
const VERSION = "0.1.0";
const BUILD_INFO = "{{PROJECT}} built with Zig " ++ @import("builtin").zig_version_string;
const BUILD_INFO = "STANDARDS built with Zig " ++ @import("builtin").zig_version_string;

/// Thread-local error storage
threadlocal var last_error: ?[]const u8 = null;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// {{PROJECT}} Integration Tests
// STANDARDS Integration Tests
// SPDX-License-Identifier: MPL-2.0
//
// These tests verify that the Zig FFI correctly implements the Idris2 ABI
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{{~ Aditionally delete this line and fill out the template below ~}}

# {{PROJECT}} ABI/FFI Documentation
# STANDARDS ABI/FFI Documentation

## Overview

Expand Down Expand Up @@ -247,7 +247,7 @@ gcc -o example example.c -l{{project}} -L./zig-out/lib
### From Idris2

```idris
import {{PROJECT}}.ABI.Foreign
import STANDARDS.ABI.Foreign

main : IO ()
main = do
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// {{PROJECT}} FFI Build Configuration
// STANDARDS FFI Build Configuration
// SPDX-License-Identifier: MPL-2.0

const std = @import("std");
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// {{PROJECT}} FFI Implementation
// STANDARDS FFI Implementation
//
// This module implements the C-compatible FFI declared in src/abi/Foreign.idr
// All types and layouts must match the Idris2 ABI definitions.
Expand All @@ -9,7 +9,7 @@ const std = @import("std");

// Version information (keep in sync with project)
const VERSION = "0.1.0";
const BUILD_INFO = "{{PROJECT}} built with Zig " ++ @import("builtin").zig_version_string;
const BUILD_INFO = "STANDARDS built with Zig " ++ @import("builtin").zig_version_string;

/// Thread-local error storage
threadlocal var last_error: ?[]const u8 = null;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// {{PROJECT}} Integration Tests
// STANDARDS Integration Tests
// SPDX-License-Identifier: MPL-2.0
//
// These tests verify that the Zig FFI correctly implements the Idris2 ABI
Expand Down
4 changes: 2 additions & 2 deletions 0-ai-gatekeeper-protocol/repo-guardian-fs/ABI-FFI-README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{{~ Aditionally delete this line and fill out the template below ~}}

# {{PROJECT}} ABI/FFI Documentation
# STANDARDS ABI/FFI Documentation

## Overview

Expand Down Expand Up @@ -247,7 +247,7 @@ gcc -o example example.c -l{{project}} -L./zig-out/lib
### From Idris2

```idris
import {{PROJECT}}.ABI.Foreign
import STANDARDS.ABI.Foreign

main : IO ()
main = do
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// {{PROJECT}} FFI Build Configuration
// STANDARDS FFI Build Configuration
// SPDX-License-Identifier: MPL-2.0

const std = @import("std");
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// {{PROJECT}} FFI Implementation
// STANDARDS FFI Implementation
//
// This module implements the C-compatible FFI declared in src/abi/Foreign.idr
// All types and layouts must match the Idris2 ABI definitions.
Expand All @@ -9,7 +9,7 @@ const std = @import("std");

// Version information (keep in sync with project)
const VERSION = "0.1.0";
const BUILD_INFO = "{{PROJECT}} built with Zig " ++ @import("builtin").zig_version_string;
const BUILD_INFO = "STANDARDS built with Zig " ++ @import("builtin").zig_version_string;

/// Thread-local error storage
threadlocal var last_error: ?[]const u8 = null;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// {{PROJECT}} Integration Tests
// STANDARDS Integration Tests
// SPDX-License-Identifier: MPL-2.0
//
// These tests verify that the Zig FFI correctly implements the Idris2 ABI
Expand Down
Loading
Loading