Repository navigation
docs(security): publish the security dossier, standards assessment, proposal and remedy ultraplan #295
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs(security): publish the security dossier, standards assessment, proposal and remedy ultraplan #295
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,56 @@ | ||||||||||||||
| <!-- SPDX-License-Identifier: CC-BY-SA-4.0 --> | ||||||||||||||
| <!-- SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk> --> | ||||||||||||||
|
|
||||||||||||||
| # Security dossier | ||||||||||||||
|
|
||||||||||||||
| A read-first set for anyone who has to decide whether this tool may hold data | ||||||||||||||
| belonging to other people, and what it would take for it to hold the most | ||||||||||||||
| sensitive material in the country. | ||||||||||||||
|
|
||||||||||||||
| | Document | Answers | | ||||||||||||||
| | --- | --- | | ||||||||||||||
| | [`recon-report.md`](recon-report.md) | What the system is, what protects it today, what does not, and how that scores against GDPR, the HIPAA Security Rule, and the UK TOP SECRET (Tier 3) baseline behaviours. Every finding cites a file and line, and every absence claim has the grep that proves it. | | ||||||||||||||
| | [`colour-teams.md`](colour-teams.md) | The CyBOK-referenced colour-team exercise: white (governance), red (adversary), blue (detection), purple (validation), green (build/crypto), gold (human/insider) — including where the teams disagree and how each conflict resolves. | | ||||||||||||||
| | [`../proposals/security-and-integrity-programme.md`](../proposals/security-and-integrity-programme.md) | The case for doing any of this at all, written for the people who carry institutional risk rather than the ones who run the pipeline: research office, DPO, research integrity, IT security, and an industry or KEC partner doing due diligence. | | ||||||||||||||
| | [`../proposals/security-and-integrity-ultraplan.md`](../proposals/security-and-integrity-ultraplan.md) | The remedy schedule for the same programme: twenty remedies keyed to the findings, nine independently fundable packages, three gates that state what may and may not be claimed at each, a partner answer pack, and the signature points an assessor will ask for. | | ||||||||||||||
| | [`ultraplan-secure-private.md`](ultraplan-secure-private.md) | The plan to close the gaps, ordered by rung on a capability ladder, under a hard **zero-friction** rule (eliminate, substitute, or notify — never "ask the user to be careful"). Each workstream names its files, its ledger events, its acceptance tests and its PR decomposition. | | ||||||||||||||
|
|
||||||||||||||
| ## Read in this order | ||||||||||||||
|
|
||||||||||||||
| If you are deciding whether to fund or deploy any of this, start at | ||||||||||||||
| [the proposal](../proposals/security-and-integrity-programme.md), then | ||||||||||||||
| [the remedy ultraplan](../proposals/security-and-integrity-ultraplan.md) §3 | ||||||||||||||
| (what may and may not be claimed) and §4 (the partner answer pack). | ||||||||||||||
|
|
||||||||||||||
| If you are implementing or reviewing it: | ||||||||||||||
|
|
||||||||||||||
| 1. `recon-report.md` §1 (executive summary) and §5 (standards matrices). | ||||||||||||||
| 2. `colour-teams.md` §7 (conflicts) and §8 (heat map) — this is the argument for | ||||||||||||||
| the plan's ordering. | ||||||||||||||
| 3. `ultraplan-secure-private.md` §1 (the four rules) and §5 (PR order). | ||||||||||||||
| 4. `../proposals/security-and-integrity-ultraplan.md` §1 (the remedy register) | ||||||||||||||
| and §2 (the packages), for who owns each harm. | ||||||||||||||
| 5. `recon-report.md` §9 to re-run the evidence yourself. | ||||||||||||||
|
|
||||||||||||||
| ## The three sentences that matter | ||||||||||||||
|
|
||||||||||||||
| 1. The scientific code is well built; the **architecture** has no identity, no | ||||||||||||||
| audit, no encryption and no classification, and every serious finding follows | ||||||||||||||
| from one of those four. | ||||||||||||||
| 2. **TOP SECRET is an accreditation of a system, not a property of an | ||||||||||||||
| application.** The achievable statement today is a *rung* on a ladder, not a | ||||||||||||||
| classification. | ||||||||||||||
|
Comment on lines
+40
to
+42
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🔎 Supported by static analysis
Reword the TOP SECRET headline to separate classification from accreditation. Line 40 calls TOP SECRET "an accreditation of a system." TOP SECRET is a classification tier. Accreditation is the approval of a system to handle information at a given tier. The intended point is that accreditation applies to systems, not applications. The headline states this loosely, so a reader can take "accreditation" as a property of the tier. The dossier's assurance scope is not at material risk. The same document already disclaims certification and accreditation elsewhere, so this is a wording correction. --- "a/docs/security/README.md"
+++ "b/docs/security/README.md"
@@ -37,9 +37,9 @@
1. The scientific code is well built; the **architecture** has no identity, no
audit, no encryption and no classification, and every serious finding follows
from one of those four.
-2. **TOP SECRET is an accreditation of a system, not a property of an
- application.** The achievable statement today is a *rung* on a ladder, not a
- classification.
+2. **TOP SECRET is a classification tier, not a property of an application.
+ Accreditation applies to a system.** The achievable statement today is a
+ *rung* on a ladder, not a classification.
3. The first PR (`ultraplan-secure-private.md` W1) removes six live attack paths with security
headers, size caps and refusals, adds no user friction, and does not touch a
single line of analysis code.Committable suggestion
|
||||||||||||||
| 3. The first PR (`ultraplan-secure-private.md` W1) removes six live attack paths with security | ||||||||||||||
| headers, size caps and refusals, adds no user friction, and does not touch a | ||||||||||||||
| single line of analysis code. | ||||||||||||||
|
Comment on lines
+43
to
+45
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Mark W1 as proposed, not completed. The sentence uses present tense: “removes”, “adds”, and “does not touch”. The PR objective states that the plan is proposed and is not applied. Readers can interpret this summary as evidence that six attack paths are already closed. Use “is intended to remove”, “would add”, and “would not touch”. Based on the PR objectives, the proposed plan is not applied.
|
||||||||||||||
|
|
||||||||||||||
| ## Provenance of this dossier | ||||||||||||||
|
|
||||||||||||||
| Written against `main` at `d6e8671`. The review was **static**: no Julia, R or | ||||||||||||||
| bun runtime was available, the clone is shallow, and no request was sent to a | ||||||||||||||
| running server. `recon-report.md` §0.3 lists what that means for each claim, and | ||||||||||||||
| §10 lists what is explicitly *not* claimed. Do not cite this dossier as a | ||||||||||||||
| penetration test, an accreditation, or a clean bill of health. | ||||||||||||||
|
|
||||||||||||||
| Corrections are welcome as ordinary pull requests: if a finding is wrong, the | ||||||||||||||
| grep that proves it wrong belongs in the same commit. | ||||||||||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔎 Supported by static analysis
Script executed:
Repository: hyperpolymath/MetaManifold-WebUI
Length of output: 42297
Script executed:
Repository: hyperpolymath/MetaManifold-WebUI
Length of output: 31418
Disambiguate the four route citations before publishing this claim.
The basename-only citations for
doi.jl,config.jl,databases.jl, andreport.jlare ambiguous because same-named files exist elsewhere. Use full paths such assrc/server/routes/<name>for each affected citation.