Skip to content
Merged
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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions .machine_readable/contractiles/Justfile
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ build *args:
# cargo build {{args}} # Rust
# mix compile {{args}} # Elixir
# zig build {{args}} # Zig
# deno task build {{args}} # Deno/ReScript
# deno task build {{args}} # Deno/AffineScript
@echo "Build complete"

# Build in release mode with optimizations
Expand Down Expand Up @@ -559,7 +559,7 @@ state-phase:
@grep -oP 'phase\s*=\s*"\K[^"]+' .machine_readable/STATE.a2ml 2>/dev/null | head -1 || echo "unknown"

# ═══════════════════════════════════════════════════════════════════════════════
# GUIX & NIX
# GUIX & GUIX
# ═══════════════════════════════════════════════════════════════════════════════

# Enter Guix development shell (primary)
Expand All @@ -570,9 +570,9 @@ guix-shell:
guix-build:
guix build -f guix.scm

# Enter Nix development shell (fallback)
nix-shell:
@if [ -f "flake.nix" ]; then nix develop; else echo "No flake.nix"; fi
# Enter Guix development shell (fallback)
guix-shell:
@if [ -f "flake.guix" ]; then guix develop; else echo "No flake.guix"; fi

# ═══════════════════════════════════════════════════════════════════════════════
# HYBRID AUTOMATION
Expand Down
2 changes: 1 addition & 1 deletion .machine_readable/root-allow.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
flake.nix
flake.guix
48 changes: 48 additions & 0 deletions ARCHITECTURE.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
== Architecture

=== Overview

This repository follows a modular, maintainable architecture designed
for clarity, scalability, and long-term sustainability.

=== Directory Structure

....
.
├── src/ # Source code
├── tests/ # Test suites
├── docs/ # Documentation
├── scripts/ # Utility scripts
├── config/ # Configuration files
├── LICENSE # License file
├── LICENSES/ # Full license texts
└── README.adoc # Project documentation
....

=== Design Principles

* *Separation of Concerns*: Each module has a single responsibility
* *Testability*: Code is written to be easily testable
* *Documentation*: All public APIs are documented
* *Configuration*: Environment-specific settings are externalized

=== Dependencies

* External dependencies are minimized and clearly declared
* Version pinning is used for reproducibility

=== Security Considerations

* Sensitive data is never committed to the repository
* Secrets are managed through environment variables or secure vaults
* Regular dependency audits are performed

=== Maintainability

* Code follows consistent style guidelines
* Pull requests require review and CI checks
* Issues and discussions are tracked transparently

'''''

_Last updated: 2026-07-18_
47 changes: 0 additions & 47 deletions ARCHITECTURE.md

This file was deleted.

42 changes: 42 additions & 0 deletions CHANGELOG.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
== Changelog

All notable changes to `+action-trust-layers+` will be documented in
this file.

This file is generated from conventional commits by the
https://github.com/hyperpolymath/standards/blob/main/.github/workflows/changelog-reusable.yml[`+changelog-reusable.yml+`]
workflow (`+hyperpolymath/standards#206+`). Adopt the workflow in this
repo’s CI to keep this file in sync automatically — see
https://github.com/hyperpolymath/standards/blob/main/templates/cliff.toml[`+templates/cliff.toml+`]
for the canonical config.

The format follows https://keepachangelog.com/en/1.1.0/[Keep a
Changelog]; this project aims to follow
https://semver.org/spec/v2.0.0.html[Semantic Versioning].

=== [Unreleased]

==== Added

* feat(v0): atl — transitive action-closure + layered-verdict CLI (#2)

==== Fixed

* fix(ci): sync hypatia-scan.yml to canonical (413:
env.HOME+Phase-2+SARIF) (#9)
* fix(ci): adopt canonical hypatia-scan.yml (env.HOME/scanner-layout +
Comment-step gate) (#7)
* fix(ci): adopt canonical hypatia-scan.yml (env.HOME/scanner-layout +
Comment-step gate) (#5)
* fix(ci): adopt canonical hypatia-scan.yml (env.HOME/scanner-layout +
Comment-step gate) (#1)

=== Pre-history

Prior commits to this file’s introduction are recorded in git history
but not formally classified into Keep-a-Changelog sections. To backfill,
run `+git cliff -o CHANGELOG.md+` locally using the canonical
https://github.com/hyperpolymath/standards/blob/main/templates/cliff.toml[`+cliff.toml+`]
— this is one-shot mechanical work.

'''''
38 changes: 0 additions & 38 deletions CHANGELOG.md

This file was deleted.

74 changes: 74 additions & 0 deletions CONTRIBUTING.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
== Contributing to action-trust-layers

Thanks for your interest. This repository follows the Hyperpolymath
estate standards defined in
https://github.com/hyperpolymath/standards[hyperpolymath/standards].

=== Licence

This project is licensed under *MPL-2.0*. By contributing you agree that
your contributions are licensed under the same terms. Every source file
carries an `+SPDX-License-Identifier+` header; keep it when editing, and
add one to any new file.

=== Development environment

A pinned dev shell is provided:

[source,sh]
----
guix develop # toolchain: just cargo rustc rustfmt clippy
----

Estate policy is Guix primary / Guix fallback; this repo currently ships
the Guix fallback. A `+guix.scm+` is welcome if you prefer the primary
tier.

=== Build and test

This repo uses https://just.systems[`+just+`] (the estate uses
Justfiles, never Makefiles). Recipes available here:

[source,sh]
----
just # list recipes
just fmt # format
just fmt-check # check formatting
just lint # lint
just test # run tests
----

=== Machine-readable artefacts

This repo carries `+.machine_readable/+` A2ML files (`+STATE.a2ml+`,
`+META.a2ml+`, `+ECOSYSTEM.a2ml+`, `+AGENTIC.a2ml+`, `+NEUROSYM.a2ml+`,
`+PLAYBOOK.a2ml+`). If your change alters project state, architecture,
or operational steps, update the corresponding file in the same PR — CI
validates them.

=== Language policy

The estate restricts which languages may be used. In particular Python,
Go, TypeScript, AffineScript, V-lang, Java/Kotlin, Swift and Makefiles
are *not* accepted in new code; AffineScript, Rust/SPARK, Zig, Deno,
Gleam, Elixir, Haskell, Idris2, Agda, Julia and OCaml are. CI enforces
this, so check the policy in `+hyperpolymath/standards+` before
introducing a new language.

=== Documentation format

Docs are AsciiDoc (`+.adoc+`) by default, including `+README.adoc+`. The
GitHub-required community-health files stay Markdown: `+SECURITY.md+`,
`+CONTRIBUTING.md+`, `+CODE_OF_CONDUCT.md+`, `+CHANGELOG.md+`. Do not
add a `+.md+` duplicate of a doc that already exists as `+.adoc+`.

=== Pull requests

[arabic]
. Branch from `+main+` — do not push to `+main+` directly; branch
protection requires review and passing checks.
. Keep the change focused, and explain _why_ in the PR body.
. Make sure governance CI is green. It checks documentation presence,
packaging policy, secrets, licence consistency and workflow security.
. Security issues: follow `+SECURITY.md+` — report privately, never in a
public issue.
71 changes: 0 additions & 71 deletions CONTRIBUTING.md

This file was deleted.

Loading