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
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.

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

All notable changes to `+network-dashboard+` 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: add RSR scaffolding and update manifest dependencies
* feat: add FlatRacoon manifest, K8s deployment, and Phoenix LiveView
skeleton
* feat: add AI Gatekeeper Protocol manifest
* feat(ci): enable Hypatia scanning
* feat: initial scaffolding for network monitoring dashboard

==== Fixed

* fix(licence): clear scaffold-placeholder leak (Tranche 2) (#33)
* fix(ci): sync hypatia-scan.yml to canonical (kill cd-scanner build
drift) (#31)
* fix(ci): build Hypatia escript from repo root (estate dogfood drift)
* fix(codeql): switch language matrix to '`actions`' (no JS/TS in repo)
(#30)
* fix(codeql): switch language matrix to '`actions`' (no JS/TS in repo)
(#28)
* fix: remove duplicate SCM files from root
* fix(security): update editorconfig SHA and CodeQL language

==== Documentation

* docs(readme): add SPDX header and standard badges
* docs(readme): add SPDX header and/or standard badges
* docs: add CONTRIBUTING.md
* docs: add checkpoint files for state tracking
* docs: update license from AGPL to PMPL

==== CI

* ci: bump actions/upload-artifact SHA to current v4 (#26)
* ci(secret-scanner): drop duplicate –fail from trufflehog extra_args
(#25)
* ci: fix workflow-linter YAML parse error + self-flag bug
* ci: fix workflow-linter self-flag bug

=== 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.

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

This file was deleted.

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.

115 changes: 102 additions & 13 deletions CONTRIBUTING.adoc
Original file line number Diff line number Diff line change
@@ -1,20 +1,109 @@
// SPDX-License-Identifier: CC-BY-SA-4.0
= Contributing Guide
== Clone the repository

== Getting Started
git clone https://github.com/hyperpolymath/network-dashboard.git cd
network-dashboard

1. Fork the repository
2. Create a feature branch from `main`
3. Sign off commits (`git commit -s`)
4. Submit a pull request
== Using Nix (recommended for reproducibility)

== Commit Guidelines
nix develop

* Conventional commits: `type(scope): description`
* Sign all commits (DCO required)
* Atomic, focused commits
== Or using toolbox/distrobox

== License
toolbox create network-dashboard-dev toolbox enter network-dashboard-dev
# Install dependencies manually

Contributions licensed under project license.
== Verify setup

just check # or: cargo check / mix compile / etc. just test # Run test
suite

....

### Repository Structure
....

network-dashboard/ ├── src/ # Source code (Perimeter 1-2) ├── lib/ #
Library code (Perimeter 1-2) ├── extensions/ # Extensions (Perimeter 2)
├── plugins/ # Plugins (Perimeter 2) ├── tools/ # Tooling (Perimeter 2)
├── docs/ # Documentation (Perimeter 3) │ ├── architecture/ # ADRs,
specs (Perimeter 2) │ └── proposals/ # RFCs (Perimeter 3) ├── examples/
# Examples (Perimeter 3) ├── spec/ # Spec tests (Perimeter 3) ├── tests/
# Test suite (Perimeter 2-3) ├── .well-known/ # Protocol files
(Perimeter 1-3) ├── .github/ # GitHub config (Perimeter 1) │ ├──
ISSUE_TEMPLATE/ │ └── workflows/ ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md # This file ├── GOVERNANCE.md ├── LICENSE ├──
MAINTAINERS.md ├── README.adoc ├── SECURITY.md ├── flake.nix # Nix flake
(Perimeter 1) └── Justfile # Task runner (Perimeter 1)

....

---

## How to Contribute

### Reporting Bugs

**Before reporting**:
1. Search existing issues
2. Check if it's already fixed in `main`
3. Determine which perimeter the bug affects

**When reporting**:

Use the [bug report template](.github/ISSUE_TEMPLATE/bug_report.md) and include:

- Clear, descriptive title
- Environment details (OS, versions, toolchain)
- Steps to reproduce
- Expected vs actual behaviour
- Logs, screenshots, or minimal reproduction

### Suggesting Features

**Before suggesting**:
1. Check the [roadmap](ROADMAP.md) if available
2. Search existing issues and discussions
3. Consider which perimeter the feature belongs to

**When suggesting**:

Use the [feature request template](.github/ISSUE_TEMPLATE/feature_request.md) and include:

- Problem statement (what pain point does this solve?)
- Proposed solution
- Alternatives considered
- Which perimeter this affects

### Your First Contribution

Look for issues labelled:

- [`good first issue`](https://github.com/hyperpolymath/network-dashboard/labels/good%20first%20issue) — Simple Perimeter 3 tasks
- [`help wanted`](https://github.com/hyperpolymath/network-dashboard/labels/help%20wanted) — Community help needed
- [`documentation`](https://github.com/hyperpolymath/network-dashboard/labels/documentation) — Docs improvements
- [`perimeter-3`](https://github.com/hyperpolymath/network-dashboard/labels/perimeter-3) — Community sandbox scope

---

## Development Workflow

### Branch Naming
....

docs/short-description # Documentation (P3) test/what-added # Test
additions (P3) feat/short-description # New features (P2)
fix/issue-number-description # Bug fixes (P2) refactor/what-changed #
Code improvements (P2) security/what-fixed # Security fixes (P1-2)

....

### Commit Messages

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

():

{empty}[optional body]

{empty}[optional footer]
Loading
Loading