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
24 changes: 24 additions & 0 deletions CODE_OF_CONDUCT.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
== Contributor Covenant Code of Conduct

=== Our Pledge

We pledge to make participation a harassment-free experience for
everyone.

=== Our Standards

*Positive behavior:* * Using welcoming language * Being respectful of
differing viewpoints * Accepting constructive criticism * Focusing on
what is best for the community

*Unacceptable behavior:* * Harassment, trolling, or personal attacks *
Publishing private information without permission

=== Enforcement

Report issues to the maintainers. All complaints will be reviewed.

=== Attribution

Adapted from https://www.contributor-covenant.org/[Contributor Covenant]
v2.1.
27 changes: 0 additions & 27 deletions CODE_OF_CONDUCT.md

This file was deleted.

71 changes: 71 additions & 0 deletions CONTRIBUTING.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
== Contributing

Thank you for your interest in contributing! We follow a "`Dual-Track`"
architecture where human-readable documentation lives in the root and
machine-readable policies live in `+.machine_readable/+`.

=== How to Contribute

We welcome contributions in many forms:

* *Code:* Improving the core stack or extensions
* *Documentation:* Enhancing docs or AI manifests
* *Testing:* Adding property-based tests or formal proofs
* *Bug reports:* Filing clear, reproducible issues

=== Getting Started

[arabic]
. *Read the AI Manifest:* Start with `+0-AI-MANIFEST.a2ml+` (if present)
to understand the repository structure.
. *Environment:* Use `+nix develop+` or `+direnv allow+` to set up your
tools.
. *Task Runner:* Use `+just+` to see available commands
(`+just --list+`).

=== Development Workflow

==== Branch Naming

....
docs/short-description # Documentation
test/what-added # Test additions
feat/short-description # New features
fix/issue-number-description # Bug fixes
refactor/what-changed # Code improvements
security/what-fixed # Security fixes
....

==== Commit Messages

We follow https://www.conventionalcommits.org/[Conventional Commits]:

....
<type>(<scope>): <description>

[optional body]

[optional footer]
....

Types: `+feat+`, `+fix+`, `+docs+`, `+test+`, `+refactor+`, `+ci+`,
`+chore+`, `+security+`

=== Reporting Bugs

Before reporting: 1. Search existing issues 2. Check if it’s already
fixed in `+main+`

When reporting, include: - Clear, descriptive title - Environment
details (OS, versions, toolchain) - Steps to reproduce - Expected vs
actual behaviour

=== Code of Conduct

All contributors are expected to adhere to our
link:CODE_OF_CONDUCT.md[Code of Conduct].

=== License

By contributing, you agree that your contributions will be licensed
under the same license as the project (see LICENSE).
66 changes: 0 additions & 66 deletions CONTRIBUTING.md

This file was deleted.

21 changes: 12 additions & 9 deletions SECURITY.md → SECURITY.adoc
Original file line number Diff line number Diff line change
@@ -1,21 +1,24 @@
# Security Policy
== Security Policy

## Supported Versions
=== Supported Versions

| Version | Supported |
|---------|-----------|
| 0.1.x | ✅ |
[cols=",",options="header",]
|===
|Version |Supported
|0.1.x |✅
|===

## Reporting a Vulnerability
=== Reporting a Vulnerability

Please report security vulnerabilities to: j.d.a.jewell@open.ac.uk

Do NOT open a public issue for security vulnerabilities.

## Response Time
=== Response Time

We aim to respond within 48 hours and provide a fix within 7 days for critical issues.
We aim to respond within 48 hours and provide a fix within 7 days for
critical issues.

## Scope
=== Scope

This policy covers the oblibeniser CLI tool and its generated artifacts.
36 changes: 36 additions & 0 deletions TEST-NEEDS.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
== TEST-NEEDS.md — oblibeniser

=== CRG Grade: C — ACHIEVED 2026-04-04

=== Current Test State

[width="100%",cols="42%,29%,29%",options="header",]
|===
|Category |Count |Notes
|Integration tests (Rust) |1 |`+tests/integration_tests.rs+`

|Verification tests |Unit-level |`+verification/tests/+` directory
present

|FFI tests |Present |`+src/interface/ffi/test/+`
|===

=== What’s Covered

* [x] Integration test framework in place
* [x] FFI interface verification tests
* [x] Cargo-based test execution

=== Still Missing (for CRG B+)

* [ ] Property-based testing (proptest)
* [ ] Fuzzing targets
* [ ] Performance benchmarks
* [ ] Cross-platform CI matrix

=== Run Tests

[source,bash]
----
cd /var/mnt/eclipse/repos/oblibeniser && cargo test
----
30 changes: 0 additions & 30 deletions TEST-NEEDS.md

This file was deleted.

26 changes: 15 additions & 11 deletions TOPOLOGY.md → TOPOLOGY.adoc
Original file line number Diff line number Diff line change
@@ -1,14 +1,18 @@
<!-- SPDX-License-Identifier: CC-BY-SA-4.0 -->
<!-- Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk> -->
# TOPOLOGY.md — oblibeniser
== TOPOLOGY.md — oblibeniser

## Purpose
=== Purpose

oblibeniser makes state-mutating operations reversible and auditable via Oblíbený (Czech: "favourite"). Every operation targeted by an `oblibeniser.toml` manifest gets an automatic inverse function, enabling undo/redo with configurable stack depth, hash-chained audit trails for tamper-evident logging, and time-travel debugging by navigating operation history. It targets systems where correctability and auditability are first-class requirements.
oblibeniser makes state-mutating operations reversible and auditable via
Oblíbený (Czech: "`favourite`"). Every operation targeted by an
`+oblibeniser.toml+` manifest gets an automatic inverse function,
enabling undo/redo with configurable stack depth, hash-chained audit
trails for tamper-evident logging, and time-travel debugging by
navigating operation history. It targets systems where correctability
and auditability are first-class requirements.

## Module Map
=== Module Map

```
....
oblibeniser/
├── src/
│ ├── main.rs # CLI entry point (clap): init, validate, generate, build, run, info
Expand All @@ -20,11 +24,11 @@ oblibeniser/
├── verification/ # Proof harnesses
├── container/ # Stapeln container ecosystem
└── .machine_readable/ # A2ML metadata
```
....

## Data Flow
=== Data Flow

```
....
oblibeniser.toml manifest
┌────▼────┐
Expand All @@ -40,4 +44,4 @@ oblibeniser.toml manifest
│ Codegen │ emit generated/oblibeniser/ (inverse wrappers, audit trail module,
│ │ verification script, undo/redo stack)
└─────────┘
```
....
Loading
Loading