11# SPDX-License-Identifier: PMPL-1.0-or-later
22# Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk>
33#
4- # ANCHOR.a2ml - authoritative anchor for this repository
4+ # ANCHOR.a2ml - authoritative anchor for halideiser
55
66[metadata]
77version = "1.0.0"
8- last-updated = "{{CURRENT_DATE}} "
8+ last-updated = "2026-03-21 "
99
1010[anchor]
1111schema = "hyperpolymath.anchor/1"
1212repo = "hyperpolymath/halideiser"
1313authority = "upstream-canonical"
1414
1515purpose = [
16- "Define canonical semantics and policy boundaries for this repository .",
17- "Declare what downstream/satellite repos can extend but not redefine .",
18- "Provide a stable golden path and invariant contract for release readiness .",
16+ "Define canonical semantics for Halide pipeline compilation .",
17+ "Declare ABI contract for pipeline stage types, scheduling primitives, and buffer layouts .",
18+ "Provide golden- path validation for generated Halide code and compiled artifacts .",
1919]
2020
2121[identity]
22- project = "{{PROJECT_NAME}} "
23- kind = "{{PROJECT_KIND}}" # language | library | service | tool
24- one-sentence = "{{PROJECT_PURPOSE}} "
25- domain = "{{PROJECT_DOMAIN}} "
22+ project = "halideiser "
23+ kind = "tool"
24+ one-sentence = "Compile image/video processing pipelines to optimised Halide schedules "
25+ domain = "image-processing, video-processing, halide, acceleration "
2626
2727[semantic-authority]
2828policy = "canonical"
2929
3030owns = [
31- "Project semantics and specification",
32- "Invariant definitions and contractiles",
33- "Reference implementation behavior",
31+ "Pipeline stage type definitions (PipelineStage, SchedulePrimitive, HardwareTarget)",
32+ "Halide buffer_t layout proofs and dimension compatibility",
33+ "Schedule generation heuristics and auto-tuning strategy",
34+ "halideiser.toml manifest schema",
3435]
3536
3637[implementation-policy]
37- allowed = ["Rust", "Idris2", "Zig", "Scheme", "Shell", "Just", "AsciiDoc", "Markdown"]
38- forbidden = ["Node.js", "npm"]
38+ allowed = ["Rust", "Idris2", "Zig", "C++", " Scheme", "Shell", "Just", "AsciiDoc", "Markdown"]
39+ forbidden = ["Node.js", "npm", "TypeScript", "Python" ]
3940
4041[golden-path]
4142smoke-test-command = [
@@ -44,7 +45,9 @@ smoke-test-command = [
4445]
4546
4647success-criteria = [
47- "Core tests pass",
48+ "Rust CLI builds and passes tests",
49+ "Zig FFI library builds and passes unit + integration tests",
50+ "Idris2 ABI type-checks with no holes",
4851 "Quality gates pass",
4952 "No unresolved critical security findings",
5053]
@@ -56,7 +59,7 @@ must-have-anchor = true
5659must-have-golden-path = true
5760
5861[semantic-authority-files]
59- language-spec = "SPECIFICATION.md "
60- formal-proofs = "docs/proofs/PROOFS.adoc "
61- type-theory = "docs/theory/THEORY.adoc "
62- algorithms = "docs/theory/ALGORITHMS.adoc "
62+ formal-proofs = "src/interface/abi/ "
63+ ffi-implementation = "src/interface/ffi/ "
64+ manifest-schema = "src/manifest/ "
65+ codegen = "src/codegen/ "
0 commit comments