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
27 changes: 27 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,3 +1,30 @@
# Default ownership
* @anthfuller

# Canonical contracts, policy, workflow, and evidence
/src/canonical/ @anthfuller
/schemas/contracts/ @anthfuller
/config/policies/ @anthfuller
/examples/canonical-workflow/ @anthfuller
/tests/test_canonical_workflow.py @anthfuller
/tests/test_contracts.py @anthfuller
/tests/test_evidence_replay.py @anthfuller
/tests/test_behavioral_scenarios.py @anthfuller

# Licensing, citation, diagrams, traceability, and release metadata
/LICENSE* @anthfuller
/CITATION.cff @anthfuller
/schemas/cff/ @anthfuller
/docs/images/ @anthfuller
/docs/architecture-diagrams.md @anthfuller
/config/control-traceability.json @anthfuller
/scripts/validate-control-traceability.py @anthfuller
/scripts/validate-citation.py @anthfuller
/VERSION @anthfuller
/RELEASE_NOTES.md @anthfuller
/docs/release-process.md @anthfuller
/ROADMAP.md @anthfuller

# Golden dataset & CI guardrails
/tests/golden_dataset/ @anthfuller
/src/demo_runner/run_golden_dataset.py @anthfuller
Expand Down
8 changes: 8 additions & 0 deletions .github/workflows/f7las-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ name: F7-LAS CI
push:
branches:
- main
tags:
- 'v*'
pull_request:
branches:
- main
Expand Down Expand Up @@ -38,6 +40,12 @@ jobs:
- name: Validate documentation
run: python scripts/validate-documentation.py

- name: Validate citation metadata against the official CFF schema
run: python scripts/validate-citation.py

- name: Validate control traceability
run: python scripts/validate-control-traceability.py

- name: Audit dependencies and generate CycloneDX SBOM
run: |
mkdir -p "$RUNNER_TEMP/f7las-sbom"
Expand Down
18 changes: 14 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@

> **Current status:** Established reference model with a **prototype reference implementation**. The repository is not a production agent platform, control plane, SOC product, SIEM/SOAR replacement, or production-ready implementation.

Repository version **4.0.0** is prepared as an unpublished release candidate.
No tag, GitHub release, or Zenodo update is implied by the version file.

F7-LAS™ is Anthony Fuller's vendor-neutral, protocol-agnostic security model for designing, reviewing, and governing agentic AI systems. It separates security responsibilities across seven layers so that generative output is not treated as authority to act.

This is independent personal work. It is not affiliated with, endorsed by, or representative of Microsoft or any other employer.
Expand All @@ -28,12 +31,14 @@ Software supply-chain security is a cross-cutting supplemental domain, **Layer S

- The immutable [F7-LAS whitepaper v3.0](docs/F7-LAS-model-whitepaper_v3.0.pdf)
- A draft [implementation guide](docs/f7-las-implementation-guide/README.md)
- A draft [46-control catalog](docs/F7-LAS-Control-Catalog-v0.1.md)
- A draft catalog of [46 core Layers 1–7 controls plus five supplemental Layer S controls](docs/F7-LAS-Control-Catalog-v0.1.md)
- Current [architecture diagrams](docs/architecture-diagrams.md), with explicit implementation boundaries, and engineering review material
- Canonical v1.0.0 data contracts and one synthetic, offline Python + OPA workflow
- Illustrative prompts, additional policies, validators, and runtime stubs
- Supply-chain CI, behavioral tests, evidence verification, deterministic replay,
and a clean-user acceptance gate for the canonical path
- Machine-readable [control-to-evidence traceability](config/control-traceability.json)
covering all 51 catalog controls

The canonical workflow provides one deliberately constrained executable Layers 1–7 path. It does not make the other examples executable or production-ready. The behavioral scenario matrix exercises the canonical enforcement path; the separate golden-dataset runner validates scenario structure and does not prove the described allow/deny behavior. Non-canonical examples remain illustrative unless they are explicitly reclassified and tested.

Expand Down Expand Up @@ -63,6 +68,8 @@ source .venv/bin/activate
python -m pip install --require-hashes -r requirements-ci.lock
python scripts/validate-supply-chain.py
python scripts/validate-documentation.py
python scripts/validate-citation.py
python scripts/validate-control-traceability.py
python scripts/validate-prompts.py
python scripts/validate-policies.py
python scripts/allowlist-validator.py
Expand All @@ -87,6 +94,9 @@ These commands validate the **current prototype and repository structure**. They
- [Supply-chain and CI controls](docs/supply-chain-and-ci.md)
- [Clean-user acceptance](docs/clean-user-acceptance.md)
- [Architecture diagrams](docs/architecture-diagrams.md)
- [Control-to-evidence traceability](config/control-traceability.json)
- [4.0.0 release-candidate notes](RELEASE_NOTES.md)
- [Release and exact-tag SBOM procedure](docs/release-process.md)
- [Roadmap](ROADMAP.md)
- [Security policy](SECURITY.md)

Expand All @@ -98,10 +108,10 @@ Versions belong to individual artifacts:
|---|---|
| Seven-layer model | Established design baseline |
| Whitepaper | v3.0, immutable historical artifact |
| Implementation guide | Draft; version will be assigned at reviewed release |
| Implementation guide | Draft; bundled with 4.0.0 but not independently versioned |
| Control catalog | v0.1 draft |
| Executable reference implementation | Prototype |
| Repository overhaul target | 4.0.0 after all acceptance gates and approval |
| Executable reference implementation | Prototype included in the 4.0.0 candidate |
| Repository release candidate | 4.0.0; not tagged or published |

Repository version numbers do not silently change the whitepaper, control catalog, or schema versions.

Expand Down
57 changes: 57 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# F7-LAS 4.0.0 Release Candidate

**Status:** Prepared but not tagged or published. This document does not
authorize a GitHub release, Zenodo update, or change to the historical
whitepaper.

F7-LAS 4.0.0 is the intended repository release for the evidence-driven
overhaul. It packages the established seven-layer reference model with one
bounded, deterministic, synthetic Python + OPA reference workflow. It remains
a prototype reference implementation, not a production agent platform.

## Release contents

- Canonical v1.0.0 contracts for request-through-audit records.
- One offline, fail-closed Python + OPA Layers 1–7 path.
- Approval binding to request, action, scope, authority, time window, and the
exact executable policy bundle.
- Behavioral scenarios, evidence integrity verification, and deterministic
replay.
- Hash-locked dependencies, immutable Action references, verified OPA and
Gitleaks downloads, vulnerability scanning, full-history secret scanning,
and a retained CycloneDX SBOM.
- Clean-user acceptance using Python 3.12.14 and OPA 1.20.2.
- Machine-readable traceability for all 46 core Layers 1–7 controls and five
supplemental Layer S controls.
- Corrected executive and layer-specific control-loop diagrams.

## Explicit limitations

- The supported executor is synthetic and in-process. It is not an OS or
container sandbox and does not enforce network isolation.
- No production identity, cloud, SIEM, SOAR, XDR, remediation, or human
approval integration is provided.
- The golden-dataset runner validates scenario and rubric structure; the
behavioral matrix separately exercises canonical enforcement paths.
- Evidence is digest-bound but not digitally signed, externally timestamped,
or backed by a provenance service.
- The control catalog and implementation guide remain draft authored content;
repository version 4.0.0 does not silently revise their independent versions
or the immutable whitepaper v3.0.

## Required publication gate

Publication requires all of the following after the release-candidate branch
is independently reviewed:

1. merge the exact approved tree through a protected pull request;
2. verify the push-triggered `main` workflow against the resulting merge SHA;
3. create `v4.0.0` at that exact approved `main` SHA without additional files;
4. verify the tag-triggered workflow and its complete validation job;
5. download the CycloneDX artifact produced by that tag run, verify its run,
commit, name, and digest, and attach it unchanged to the GitHub release;
6. publish these notes only after the release assets and target SHA are
independently verified.

The detailed procedure is in
[`docs/release-process.md`](docs/release-process.md).
4 changes: 2 additions & 2 deletions ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ The target is an **Executable Reference Implementation**: one offline, determini

## Release boundary

The intended repository release after all acceptance gates is **4.0.0**. The whitepaper remains **v3.0** until it is separately reviewed and revised. No milestone authorizes a merge to `main`, a release, or a Zenodo update without explicit approval.
Repository version **4.0.0** is prepared as an unpublished release candidate. The whitepaper remains **v3.0** until it is separately reviewed and revised. No milestone authorizes a merge to `main`, a tag, a release, or a Zenodo update without explicit approval. See [RELEASE_NOTES.md](RELEASE_NOTES.md) and the [release process](docs/release-process.md).

## Completion standard

Completion requires a clean-user install and walkthrough, meaningful behavior tests, control-to-evidence traceability, accurate diagrams, consistent licensing/versioning, independent review, and explicit merge approval. Test counts alone are not a maturity measure.
Completion requires a clean-user install and walkthrough, meaningful behavior tests, validated control-to-evidence traceability, accurate diagrams, consistent licensing/versioning, protected-branch enforcement, independent review, and explicit merge and release approval. Test counts alone are not a maturity measure.
1 change: 1 addition & 0 deletions VERSION
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
4.0.0
Loading