diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..688a442 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,7 @@ +# SPDX-License-Identifier: MPL-2.0 +# Funding platforms for hyperpolymath projects +# See: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository + +github: hyperpolymath +ko_fi: hyperpolymath +liberapay: hyperpolymath diff --git a/EXPLAINME.adoc b/EXPLAINME.adoc new file mode 100644 index 0000000..6d5e089 --- /dev/null +++ b/EXPLAINME.adoc @@ -0,0 +1,55 @@ +// SPDX-License-Identifier: MPL-2.0 +// Copyright (c) Jonathan D.A. Jewell += pons: The Bridge of Asses Static Analyzer + +== What is pons? + +pons (after the _pons asinorum_ / Euclid I.5, the "bridge of asses") is a lightweight, +multi-language static scanner that flags three categories of critical code issues: + +* **Dead work** — Code that does nothing, is unreachable, or produces no effect +* **Self-contradiction** — Inconsistent logic or state that cannot be reconciled +* **Missing escape hatches** — Error paths that don't properly handle failures + +== Design Philosophy + +pons is the depth companion to link:https://github.com/hyperpolymath/panic-attack[panic-attack]: + +| Tool | Focus | Approach | +|------|-------|----------| +| panic-attack | Breadth | 49 languages, security weak points, line-level patterns + relational reasoning | +| pons | Depth | Few languages, parse trees + real dataflow + typestate, waste/contradiction smells | + +== Evidence Tiers + +Every finding carries an explicit evidence class: + +* `PROTOCOL` — Mathematically certain, based on formal specifications +* `DATAFLOW` — High confidence, based on concrete dataflow analysis +* `HEURISTIC` — Moderate confidence, based on pattern matching +* `SPECULATIVE` — Low confidence, visually demoted in all output formats + +**Key principle:** Never dress a heuristic up as a proof. + +== Current Status + +*Planning complete; implementation not started.* This repository contains the ratified v0.1.0 plan. + +== Repository Structure + +include::docs/structure.adoc[] + +== Quick Start + +See link:CONTRIBUTING.md[CONTRIBUTING.md] for development setup. + +== License + +Code: MPL-2.0-or-later (see LICENSE) +Docs: CC-BY-SA-4.0 + +== Contact + +* Issues: https://github.com/hyperpolymath/pons/issues +* Discussions: https://github.com/hyperpolymath/pons/discussions +* Email: j.d.a.jewell@open.ac.uk diff --git a/FUNDING.adoc b/FUNDING.adoc new file mode 100644 index 0000000..6126e72 --- /dev/null +++ b/FUNDING.adoc @@ -0,0 +1,58 @@ +// SPDX-License-Identifier: MPL-2.0 +// Copyright (c) Jonathan D.A. Jewell += Funding the pons Project +:toc: macro +:toclevels: 2 + +pons is a Free and Open Source Software (FOSS) static analysis initiative stewarded by hyperpolymath. +This document explains how the project is funded, how contributions are used, and why community support matters. + +toc::[] + +== Purpose of Funding + +pons exists to detect dead work, self-contradiction, and missing escape hatches in codebases with mathematical precision. +Maintaining a high-quality static analysis tool requires: + +* Research and design work +* Implementation across multiple languages +* Testing infrastructure and benchmarks +* Documentation and accessibility +* Continuous maintenance and updates + +Community support ensures that pons remains stable, trustworthy, and effectively maintained. + +== Ways to Support the Project + +=== Transparent Funding (Recommended) +* **GitHub Sponsors:** `hyperpolymath` + Open accounting, public budgets, and transparent stewardship. + +=== Other Platforms +* **Patreon:** `hyperpolymath` +* **LiberaPay:** recurring micro-donations +* **Ko-fi:** one-time contributions + +These platforms help sustain ongoing development and governance work. + +== How Funds Are Used + +All contributions directly support: + +* Developer time for implementation and maintenance +* CI/CD infrastructure costs +* Documentation improvements +* Community outreach and education +* Legal and compliance review + +== Recognition + +All sponsors are recognized in the repository's SPONSORS file (if they opt in). +Significant contributors may receive commit access based on sustained contributions. + +== Contact + +For funding-related questions, contact: j.d.a.jewell@open.ac.uk + +--- +*Last updated: 2026-08-13* diff --git a/LICENSE.adoc b/LICENSE.adoc new file mode 100644 index 0000000..e86a4cb --- /dev/null +++ b/LICENSE.adoc @@ -0,0 +1,11 @@ +// SPDX-License-Identifier: MPL-2.0 += Mozilla Public License Version 2.0 + +include::LICENSES/MPL-2.0.txt[] + +== Note + +This AsciiDoc version of the MPL-2.0 license is provided for convenience. +The official license text is in LICENSE (plain text format). + +For documentation and content in this repository, see LICENSES/CC-BY-SA-4.0.txt.