newsroom.sgit.ai / admin / php desk

The PHP desk

The admin page for the PHP flaws story of October 2026 as this newsroom covers it: the work and who did it, the roles of the people and agents on the story, and the evidence vault, which anyone can now open read-only. The facts themselves live on the story’s own site; how the coverage started is in Capture first; the design of this page is its brief.

18pieces of work doneeach with its proof
6open, in progress or blocked1 blocked
9people and agentsroles and responsibilities
184sources in the vault177 captures, 855 hashed files

The work

One row per piece of work, from admin/content/php-oct-2026/work.json. Work in progress, blocked and open comes first, then what is done, newest first. Every done row names its proof: a card, a release, a commit in this repository or in the vault, a source, an article or a page. The build refuses a row whose owner is not in the roles, or a done row without proof.

StatusWhatOwnerOpened / closed (UTC)Proof
blockedRetire /php-flaws/ into a pointer to the story's site
waits for w-17 and w-18, then the editor's word
newsroom.dev2026-10-22T12:50Zcard 088
openPublish /status.json for the newsroom to read
check 2 of the move; the shape is in the briefing pack
claude-story-site2026-10-22T12:50Zbriefs/php-oct-2026.zip
openRe-export the vault so the 40 recovered sources are on the site; fill their publisher and date
check 3 of the move
claude-story-site2026-10-22T12:50Zbriefs/php-oct-2026.zip
openAdd two rules to the vault's protocol: commit after every source; check every clone before calling the vault complete
proposed in the briefing pack
claude-story-site2026-10-22T12:50Zcapture-first
openVisitor logging with an append lane, region and country only
the editor's decision: the PHP site's own work, not this site's
claude-story-site2026-10-22T13:00Z
openAct on the review: the first screen, the tables, claims to sentences, exploitation over time, who said what first, briefings, blast radius, playbook, graph
the site's own priorities; the newsroom asks, the site decides
claude-story-site2026-10-22T13:52Zbriefs/php-oct-2026-review.zip
doneThe live vault view on this page, reading only what is opened
the SG/App vault browser had not opened this vault after four minutes; this view shows the manifest in about three seconds
newsroom.dev2026-10-22T13:35Z
2026-10-22T13:52Z
admin/php-oct-2026/index.html#browse card 089
doneReview the story's site against the newsroom's published design and ethos; a briefing for its agent
ten changes ranked by impact, checked against the site at v0.2.4
newsroom.dev2026-10-22T13:05Z
2026-10-22T13:52Z
briefs/php-oct-2026-review.zip card 089
doneThis admin page: the work, the roles, the vaultnewsroom.dev2026-10-22T13:10Z
2026-10-22T13:45Z
card 089 admin/php-oct-2026/index.html
doneScan the vault, then open it with a public read keynewsroom.dev2026-10-22T13:10Z
2026-10-22T13:30Z
vault 292f563656ab card 089
donePut the story's own site on the front page; track the move; a briefing pack for its teamnewsroom.dev2026-10-22T12:00Z
2026-10-22T12:54Z
v0.13.41 card 088 briefs/php-oct-2026.zip
doneWrite the article on how the coverage startednewsroom.writer2026-10-22T12:10Z
2026-10-22T12:54Z
capture-first v0.13.41
doneBuild the vault's own appclaude-vault-app
2026-10-22T12:22Z
vault 0f97fe36ab4d
doneBuild the story's own site, php.oct.2026.newsroom.sgit.ai
v0.1.0 at 09:27, v0.2.2 by noon
claude-story-site
2026-10-22T11:52Z
https://php.oct.2026.newsroom.sgit.ai/ vault 200d08971937
doneRecover the uncommitted work of two collectors and push every clone
40 sources; rows written from each capture's provenance.json
newsroom.dev2026-10-22T11:58Z
2026-10-22T12:08Z
vault f72ad76c99c9 vault d5549bc61fd2 capture-first
doneKeep the NCSC-NL php2shell repository whole and count its inventory
git bundle, 52 commits; 674 products at cca173c64ec5
newsroom.dev2026-10-22T08:47Z
2026-10-22T08:50Z
ncsc-nl-php2shell-software-list
doneCapture news coverage and impact, including the maintenance pages
31 sources, all committed later in w-10
collector-news2026-10-22T08:08Z
2026-10-22T08:19Z
vault f72ad76c99c9
doneCapture government and CERT advisories
37 sources, nine of them committed later in w-10
collector-gov2026-10-22T08:08Z
2026-10-22T08:20Z
vault 1988169025cd vault be782bff89bf
doneCapture the researchers' accounts and the leak
14 sources; closing time not recorded
collector-researchers2026-10-22T08:08Zvault 788a1d01f5a7
doneCapture the primary technical sources
17 sources; closing time not recorded
collector-primary2026-10-22T08:08Zphp-net-advisory
doneSeed claims and timeline from the BBC page; per-agent files so writers never conflictnewsroom.dev2026-10-22T08:07Z
2026-10-22T08:10Z
vault 4dd942654566
donePublish the /php-flaws/ sectionnewsroom.dev2026-10-22T08:00Z
2026-10-22T08:13Z
v0.13.40 card 087 php-flaws/index.html
doneOpen the evidence vault, write its protocol and the capture tool; first three captures of the BBC pagenewsroom.dev2026-10-22T08:03Z
2026-10-22T08:07Z
vault b12e6b952e17 vault 3133f619762a
doneRead the BBC live page and summarise it for the editornewsroom.dev2026-10-22T07:55Z
2026-10-22T07:58Z
bbc-live-ckgel5xp2xv9t

By owner

The move to the story’s own site

The facts live on php.oct.2026.newsroom.sgit.ai (v0.2.4, data as of 2026-10-22T11:34Z). /php-flaws/ retires into a pointer when these pass; 2 of 5 did when last checked, 2026-10-22T13:51Z.

The roles

Everyone who has worked on the story, from admin/content/php-oct-2026/roles.json: what each is responsible for, what each may and may not change, where each works, and the record that shows it. Drawn from the git logs and the vault’s commit messages. The editorial responsibility is always Dinis’s.

editor

Dinis Cruz

What is published and when; the editorial line; the decisions: opening the vault to everyone, moving the facts to their own site, retiring /php-flaws/.

May change
anything
Works in
chat with the agents; voice memos
Record
the memos in the PHP site's admin/content/briefs/memos/; every decision quoted in admin/notes/2026-10-22__the-php-desk.md

agent

newsroom.dev

The PHP story's functionality on newsroom.sgit.ai: the /php-flaws/ section and its builder, the tracker of the move to the story's own site, the front page's Developing strip, this admin page, the vault's protocol and capture tool, opening the vault with a public read key, and the briefing packs for the PHP site's team.

May change
php-flaws/, admin/php-oct-2026/, admin/content/php-oct-2026/, admin/content/vaults/php-evidence.json, briefs/php-oct-2026*/, the front page's developing strip; the vault's README and tools/
Must not
edit captures or another agent's source rows, claims or timeline; edit the PHP site's repository; put a write key in any file
Works in
a Claude Code session on SGit-AI__Website__Newsroom; the evidence vault
Record
v0.13.40, v0.13.41 (with newsroom.writer), v0.13.42; cards 087, 088, 089; vault commits named claude-newsroom-lead or newsroom.dev
Also known as
claude-newsroom-lead: Its work on the morning of 22 October went out as claude-newsroom-lead, before it had a name of its own; the vault's history keeps that name.

agent

newsroom.writer

The articles about the story on newsroom.sgit.ai, written from the editor's messages and memos in his voice, with their figures, graphs and summaries.

May change
admin/content/articles/ and the release files of an article release
Must not
state a fact about the story that the PHP site or the vault does not back
Works in
a Claude Code session on SGit-AI__Website__Newsroom
Record
Capture first (v0.13.41)

agent

claude-story-site

php.oct.2026.newsroom.sgit.ai: the facts, the claims with their status, the pages per source and per party, the numbers, the agencies, the briefings by role, its gate and releases. The vault's largest writer.

May change
its own repository, SGit-AI/SGit-AI__Website__Newsroom__2026__Oct__PHP; its own source rows, claims and timeline in the vault
Must not
edit other writers' rows or any capture
Works in
a Claude Code session on the PHP site's repository; the evidence vault
Record
site v0.1.0 to v0.2.2 on 22 October; vault commits 379e3d7f172a and 200d08971937 (83 sources)

agent

claude-vault-app

The vault's own app: index.html, .vault/app.json and app/ (reduced screenshots, manifest, versions), built from the PHP site's vault-app/.

May change
index.html, .vault/, app/ and a README section in the vault
Must not
edit captures, source rows, claims or timeline
Works in
the evidence vault
Record
vault commit 0f97fe36ab4d (app v0.1.0)

agent, one task

collector-primary

Primary technical sources: php.net, the CVE records, the GitHub advisories, php-src, oss-security, distributions.

May change
its own source rows, claims and timeline
Must not
edit other writers' files
Works in
the evidence vault, on 22 October from 08:08 UTC; finished
Record
17 sources

agent, one task

collector-researchers

The researchers and the AI angle: Calif, Wiz, OpenAI, Cloudflare, the leak; never the exploit itself.

May change
its own source rows, claims and timeline
Must not
store exploit code or video
Works in
the evidence vault, on 22 October from 08:08 UTC; finished
Record
14 sources; vault commit 788a1d01f5a7

agent, one task

collector-gov

Government and CERT advisories worldwide, and the government sites taken offline.

May change
its own source rows, claims and timeline
Must not
edit other writers' files
Works in
the evidence vault, on 22 October from 08:08 UTC; stopped before committing its last nine captures
Record
37 sources; vault commits 1988169025cd to be782bff89bf, d5549bc61fd2

agent, one task

collector-news

News coverage and real-world impact, and the maintenance pages while they were up.

May change
its own source rows, claims and timeline
Must not
edit other writers' files
Works in
the evidence vault, on 22 October from 08:08 UTC; stopped before committing any of its work
Record
31 sources, committed for it by newsroom.dev in f72ad76c99c9

The evidence vault, open to everyone

Every source the story rests on, captured as its publisher served it: the raw page, the rendered page, its text, a full-page screenshot and the headers, each file hashed at capture. The vault is public and read-only since 2026-10-22, by the editor’s decision. The key below can read every file and every commit and cannot write. Anyone who fetches the objects keeps them, so everything in it is public for good.

Browse it on this page ↓ Open it in the SG/App vault browser The vault carries its own app. The vault browser reads the whole vault before it draws, which for half a gigabyte of captures takes several minutes; the view on this page reads only what you open.

Public read key

sgit_public_read_6451da6ba1c6201d35b0832d570097327552564c12c8e9a550fc2ed1150769f8:3ytzxm3g

Clone it

pip install sgit-ai
sgit clone sgit_public_read_6451da6ba1c6201d35b0832d570097327552564c12c8e9a550fc2ed1150769f8:3ytzxm3g

Vault 3ytzxm3g on https://dev.send.sgraph.ai, opened 2026-10-22T08:03Z. The vault key, which writes, is held by the editor and the agents and is never in this repository.

Browse it here

The vault, read live in this page with the key above: the manifest first, then each source’s notes, its captures, a thumbnail of each, and the full screenshot or the text when asked for. Only what is opened is fetched, and everything is decrypted in your browser.

This view needs JavaScript; without it, clone the vault with the command above.

The scan before the key

On 2026-10-22, at vault head 0f97fe36ab4d, all 1839 files, captures included, were searched for: sgit vault and read keys; this vault's passphrase; the sgit access token; GitHub, AWS, OpenAI and Slack token shapes; private keys; bearer headers; the editor's email address; the capture environment's paths. Found: no secret and no personal data. Noted:

None: captures are never edited, so these stay as served; the scan is recorded in the vault's README.

What is in it

At vault head 326d5001d7b2: 1839 files, 536.0 MB; 184 sources, 177 captures, 855 files hashed at capture, 61 claims and 67 timeline events in per-agent files, and the vault’s own app.

Sources by writer

claude-story-site83
collector-gov37
collector-news31
collector-primary17
collector-researchers14
claude-newsroom-lead2

Sources by kind

news53
government29
advisory25
vendor22
cve14
researcher11
other9
social9
code9
forum2
news-live1

The top level

PathFilesSize
.vault/10 KB
README.md16 KB
app/34644.0 MB
claims/224 KB
index.html10.5 MB
memos/213 KB
notes/23 KB
sources/1480491.5 MB
timeline/219 KB
tools/25 KB

The latest commits on the head’s line

The protocol every writer follows is the vault’s README.md; the hashes of every capture are also listed on the section’s sources page.

Not on this page

For an agent

The data: admin/content/php-oct-2026/work.json, roles.json, vault.json; the key and the scan in admin/content/vaults/php-evidence.json; the move in php-flaws/data/transition.json. Rebuild with python3 admin/build/php_desk.py --from <clone>, where the clone can be made with the public read key above. To add work, append a row to work.json with an owner from roles.json and, when done, its proof.