{{define "policy-page"}}
A rule this machine runs against everything automated it can see, and a record of what it would have stopped while nobody was watching. It is a rehearsal: nothing here has any power to close a program.
← This machine · Automated programs running here
This build of the bastion has no way to list processes or connections on this platform. The rule below has nothing to run against, so read the empty list as "nothing looked", never as "nothing is running".
{{.RegistryError}}
Every judgement below needs that record, so this rule cannot judge anything until it is fixed. It is not reporting that there is nothing to judge.
{{.WalkError}}
The rule had nothing to run against on this render, so read the empty list as "nothing looked", never as "nothing would have been stopped". Reload to try again.
{{.CensusError}}{{if .CensusErrorAt}} · {{.CensusErrorAt}}{{end}}
The list further down is whatever was written before that started. Do not read it as up to date.
Nothing has been stopped. This is what the rule would do if it were ever allowed to act, listed so you can decide whether it would have been right.
{{else if .Observed}}{{.Observed}} automated programs were looked at. Every one of them is either something a person is running, or something that has been vouched for.
{{else}}This machine looked; it did not find anything for the rule to run against.
{{end}} {{if .CannotJudge}}{{.CannotJudge}} of {{.Observed}} cannot be judged at all. A term this rule needs could not be read for them. That is a blind spot, not a clean bill of health.
{{end}}A program is proposed for stopping only when all four are true of it at once.
{{.Cmdline}}{{$e}}{{end}}This machine could not read that record, so nothing is listed here and the space below it is not an absence. The banner at the top of the page says why. Until that is fixed the honest answer is "not known".
{{else if not .CensusRan}}The record is written by the running bastion, once a minute. If the bastion is not running here, or has only just started, there is nothing to show — which is not the same as nothing having happened.
Measured since {{.CensusSince}} — {{.CensusWindow}}. Last looked {{.CensusLast}}. A program that appears and exits between two scans is not seen at all, and the times below are kept to about five minutes so that watching this does not mean writing to your disk every minute.
{{if .CensusStale}}The last scan was {{.CensusLast}}, which is longer ago than it should be. What is below is history: it is not what this machine would do now.
{{.PastDropped}} older entries have been dropped to bound the file. The oldest go first.
{{end}} {{if .Past}} {{/* "Vouched for since" is read out of the mark registry, so a registry this machine could not load cannot produce that number — and a 0 there is the same reassuring lie the banner at the top exists to stop. The rows below still render; each one says it cannot be judged. */}} {{if .RegistryError}}Answering that needs the record of what you have marked as yours, which this machine could not read. The rows below are what would have been stopped; what became of each one is not something this page can say right now.
Every one in that second number is a program this rule would have taken away from you by mistake, and that number is what decides whether it should ever be allowed to act. Still a candidate right now: not known — this machine could not read its processes just now. If one of these is yours, say so on the automated programs page — this rule reads the same record.
Every one in that second number is a program this rule would have taken away from you by mistake, and that number is what decides whether it should ever be allowed to act. Still a candidate right now: {{.PastStill}}. If one of these is yours, say so on the automated programs page — this rule reads the same record.
Nothing has been proposed for stopping in that time. This machine looked and found nothing, which is a different sentence from the one above it.
{{end}} {{end}}Checked {{.CheckedAt}}. What this machine can see is deliberately soft: a program that does not want to be noticed can rename itself, and a mark is a convenience, not a lock. This rule inherits every one of those limits.
{{end}}