# newsroom.sgit.ai — everything, in one file Site version: v0.3.13. Generated by admin/build/gen_llms_full.py — do not edit by hand. This is /llms.txt, then the front page as markdown, then every markdown document in the brief pack, concatenated in reading order. It exists because agent fetch tools frequently refuse URLs a search has not already returned, which makes link-following unreliable and makes a single-file surface the practical one. If you can make more than one request, prefer the individual documents at https://newsroom.sgit.ai/briefs/ — they are the source of truth and this file is a concatenation of them. The pack is published verbatim except for nine redacted identifiers, each replaced with a visible marker and recorded in briefs/PUBLIC.md, included below. NOT included here, deliberately: · the prose of the rendered HTML pages — read /llms.txt for the annotated map of those · briefs/08__source-manifest.csv and briefs/sources__docs-diniscruz-ai.json — structured data, better fetched directly at those paths than flattened into a text stream Read this before repeating anything from this file: nothing described on this site is running. The ten articles in /library/ are real, dated and published at docs.diniscruz.ai; the newsroom — Trust-as-a-Service, author micropayments, the decision graph, CC-Signed — is a design. https://newsroom.sgit.ai/shipped/index.html states the line in full. This site's own content is CC BY 4.0. The library material it republishes is CC0 1.0 Universal at source. Third-party material quoted inside these documents stays under its own terms. Contents, in order: 1. llms.txt — the annotated map, each entry carrying its page's most important fact 2. index.md — the front page as markdown 3. briefs/00__BRIEF.md 4. briefs/01__thesis-and-themes.md 5. briefs/02__source-provenance-and-attribution.md 6. briefs/03__corpus-index__send-repo.md 7. briefs/04__prior-art__docs-diniscruz-ai.md 8. briefs/05__site-architecture.md 9. briefs/06__boundaries-and-house-style.md 10. briefs/07__gaps-and-open-questions.md 11. briefs/09__risk-and-governance-newsroom.md 12. briefs/10__the-newsroom-floor.md 13. briefs/11__pt-newsroom-commissioning-brief.md 14. briefs/README.md 15. briefs/PUBLIC.md 16. briefs/LICENSE.md 17. briefs/12__research-brief-for-chatgpt.md 18. briefs/13__research-brief-for-perplexity.md 19. briefs/14__what-pt-newsroom-can-take-from-here.md 20. briefs/15__the-summit-archive.md ============================================================================== == llms.txt ============================================================================== # newsroom.sgit.ai — The Future of News > News is failing not because there is too little information but because there is no > walkable chain from a claim to its evidence, no way for a correction to reach what it > disproved, and no way to pay the person who did the original work. A story is a graph > that accumulates evidence, perspectives and confidence; every article, translation and > infographic is a projection of it. Sell the graph, not the paragraph. Site version: v0.3.13 (13 September 2026). Published by the sgit project, which is building the stack this site argues for — participant disclosure at /about/participant.html. Site content CC BY 4.0; the republished library material is CC0 1.0 Universal at source (docs.diniscruz.ai) — state the source licence per page. ## The honest sentence Most of this site is an argument, not a product. THREE THINGS RUN, and each says its own limits on its face: /portugal/ (Portugal Startups — sources fetched, frozen and hashed; a graph; three stories; human editor of record; beta, no legal review), /databases/ (SQLite and a SPARQL store in the reader's browser over /portugal/'s files; no server, no store of record) and /governance/ (the Governance Wire — graph, vocabulary, source register and gate run; its ingestion and verification layer is NOT built, so no claim there is a checked reading of any regulation; no human review). The articles in /library/ are real and dated; the rest of the newsroom is a design. /shipped/ states the line between them in full. Do not describe Trust-as-a-Service, the decision graph, per-story cost ledgers, contextual-validation billing, or any newsroom department as a live capability of any sgit.ai property. The same applies to everything in /mvps/: the country publication, its eleven agent roles, the evidence-backed report tool and the seven seed companies are designs dated April–May 2026 that were never launched — their targets ("first thirty days", a ≥200-entity graph) are goals that were set, not results that were reached. Of the three that run, only /portugal/ has a human editor of record; /governance/ has none; none has had legal review. The nav names the three as their own top-level groups. ## Properties agents may rely on - Every page deriving from previously published material carries a visible provenance block: original publication date, original link, original authors (including any AI co-authorship), and an honest curation label (verbatim / edited / excerpted / synthesised). Enforced by the pre-release gate, not just documented. - Ten core articles, 68,846 words, are already public and dated at docs.diniscruz.ai (Feb–Oct 2025), a year before this site's design material was written — see /library/. Several republished sections on this site are this site's own SYNTHESIS of that material, not verbatim reproduction; fetch the docs.diniscruz.ai canonical URL directly for complete original text. - The payment rails described in /economics/rails/ (x402, Cloudflare Monetization Gateway, AWS Bedrock AgentCore Payments) are real, operating third-party infrastructure, independently verifiable — unlike almost everything else this site describes. - Seven open questions and six honest tensions are published unresolved at /network/#open and /network/#tensions — check there before assuming any of them has been answered. - Every page ends with a pasteable "for an agent" block, except /admin/ pages and /about/participant.html. - The three running instances publish machine surfaces you can fetch without rendering a page: /portugal/data/*.json and /portugal/data/triples.nt; /databases/data/*.json; /governance/data/*.json. The SQL and SPARQL consoles publish window.__tools after a tool:ready event, read-only, so an agent driving a browser can query rather than scrape. - /llms-full.txt is this file plus the front page plus every markdown document in the brief pack, concatenated — one fetch for the whole document set, for when link-following is unreliable. The two structured-data files are deliberately left out of it and should be fetched directly. ## Site map - /index.html — front page: the claim, the 10,000-hours story, the proof strip - /thesis/index.html — the thesis: sell the graph, evidence not truth, the author is the oracle - /corrections/index.html — corrections must propagate (the site's most distinctive argument) - /corrections/the-claim-that-would-not-die.html — the 10,000-hours case in full - /corrections/242-papers.html — the same failure, measured: 242 papers, >220,000 citation paths - /corrections/how-a-graph-answers-it.html — supersede-never-delete, typed citation edges - /corrections/agenda-is-context.html — the self-critique: the graph has an agenda too - /corrections/staleness-in-the-wild.html — the EU AI Act's "consolidated" text, dated 2024 - /provenance/index.html — provenance is the product - /provenance/show-your-work.html — fifteen public newsroom departments - /provenance/a-worked-story.html — one story, itemised: £8.40, 6h 23m - /provenance/the-decision-graph.html — named ownership at every editorial step - /provenance/articles-as-vaults.html — each article as text + evidence + graph + every prompt - /library/index.html — the published record, 2025 → present, chronological - /economics/index.html — paying the fact creator - /economics/paying-the-fact-creator.html — the 60/25/10/5 split; contextual validation - /economics/trust-as-a-service.html — the fact-certifier as a payable, warranted role - /economics/rails.html — x402, ~200ms settlement, zero protocol fees (real, operating) - /economics/micro-and-nano-payments.html — the 2025 argument, synthesised, paired with the rail - /rights/index.html — content rights: CC-Signed, the licence family with a legal stick - /newsroom/index.html — roles, the daily clock, fifteen departments, the craft doctrine - /mvps/index.html — the publication instances: the newsroom was specified as a series of small launchable publications, not one platform. Seven instances, April–May 2026, none built - /mvps/portugal.html — the flagship: a bilingual country publication run by eleven agent roles on a daily clock. Its two source briefs disagree on whether it launches bilingual, and its open question 5 — who is the editor of record and legally accountable — was never answered - /mvps/seed-companies.html — seven CC-licensed business templates published so others can build them; seed 4 is an evidence-research company for journalists and investigators - /portugal/index.html — PORTUGAL STARTUPS (beta): a publication mapping the Portuguese startup ecosystem, first beat Startup Summit Lisbon 2026 (17-18 September 2026, Beato Innovation District). THE IMPORTANT DIFFERENCE FROM /governance/: sources here are PRIMARY and ANCHORED. Every page of the source site is fetched, frozen to a dated snapshot in the repository and hashed with SHA-256, and claims are read from the frozen copy rather than the live network. This is the fetch-freeze-hash path /governance/ specifies and cannot run. It also has a NAMED HUMAN EDITOR OF RECORD (Dinis Cruz) who reviews every page before it publishes, because this beat is about named people and named companies. - /portugal/graph.html — THE GRAPH: 329 nodes / 1,106 edges, 16 types, 19 verbs — the event, 64 speakers, 61 derived organisations, 16 sessions on 3 stages, 88 frozen sources across 2 snapshots (64 of them the speakers' own pages), 7 pieces of press coverage, our stories, 23 Topic nodes (the event's own tags) and 50 derived tag nodes (Industry, Technology, Idea, Service, Product — by lexicon, every edge carrying its matched words). Every edge is a verb with a named inverse IN ENGLISH AND PORTUGUESE (ontology.json), so a path reads as a sentence either way. Nodes arrive in PACKS the reader switches on block by block. The page publishes window.__graph (read + view methods, no writes) after a tool:ready event, the same convention as graphs.sgit.ai's universe reader. Fetch /portugal/data/graph.json and /portugal/data/ontology.json directly - /portugal/explorer.html — THE FILES: every file the section is built from, from /portugal/data/manifest.json with size and SHA-256, rendered / as a graph / raw. Frozen third-party pages are listed and hashed but never rendered - /portugal/connections.html — CONNECTIONS: who should be talking to whom, who could be buying from whom and who could help whom, as THREE ORGANISATION-LEVEL SQL QUERIES over two things read from each speaker's own frozen page — the event's own Topics list (verbatim, 23 distinct) and the words matching a PUBLISHED LEXICON of 57 patterns (industries, technologies, ideas, services, products; the matched words only, never the sentence). Rows at build in /portugal/data/connections.json with the SQL beside them; the same SQL runs unchanged in /databases/sql.html. NOTHING HERE IS A CLAIM ABOUT A PERSON: the unit is the organisation, and the notice refuses characterisation of named individuals. Gate 17 re-runs every pattern on the frozen bytes each build; gate 16 checks every topic is on the page verbatim - /portugal/summit/index.html — the event as it describes itself. Distinguish TARGETS from COUNTS: the event's own wording is "targeting 2,000+" attendees and "150+ speakers planned", while its published list names 64. Do not report a target as a result. - /portugal/summit/people.html — all 64 published speakers with role, organisation, the event's own Topics for them (verbatim) and a link to each speaker's own page. Biographies are deliberately NOT reproduced; the lexicon reads them and keeps only matched words - /portugal/summit/orgs.html — 61 organisations DERIVED from the speaker cards; 2 are placeholders ("Independent") flagged rather than removed - /portugal/summit/changes.html — the same pages frozen twice and diffed: 5 speakers added and 1 removed between 8 and 13 September. REMOVALS CARRY NO REASON and none may be inferred - /portugal/sources.html — the register: every frozen file with its SHA-256, byte count and retrieval time, and how to check any claim against it. Two kinds of source: the event's own pages, and third-party pages ABOUT the event — none a registry or funding dataset, so nothing here describes the ecosystem beyond this one event - /portugal/checks.html — what re-reading established, including two different sets of stage names published on the same site, and the claims that cannot be verified from the source - /portugal/method.html — fetch, freeze, hash, extract, diff - /portugal/team.html — seven agent roles plus the named editor of record - /portugal/notice.html — THE DATA-PROTECTION NOTICE. This section names 64 people it did not get the data from. Lawful basis is LEGITIMATE INTERESTS and the journalistic derogation is EXPRESSLY NOT CLAIMED: Article 24(3) of Portugal's Lei 58/2019 conditions it on national rules on access to and exercise of the profession, which this publication does not meet. Personal contact details of any kind are refused at EXTRACTION time and gate check 11 fails the build if one appears in the data. Removal on request is unconditional and no reason is asked for. Carries a Portuguese-language summary. Not legal advice - /portugal/about.html — beta, one beat, two kinds of source, no legal review, nothing in Portuguese - /portugal/stories/a-record-attempt-the-agenda-does-not-mention.html — two Portuguese outlets report a 48-hour Guinness pitch marathon on 16-17 September; the event's own agenda, four days out, does not list it. Both frozen; neither wrong yet - /portugal/stories/five-names-arrived-and-one-left.html — the speaker list went 60 → 64 between 8 and 13 September; both copies held and hashed; the removal carries no reason - /portugal/stories/two-names-for-three-stages.html — the agenda and the AI-summary page name the same stages differently, on the same site, on the same day - /portugal/team//index.html — one page per role (researcher, extractor, diffwatch, cartographer, writer, editor, publisher): definition, doors, refusals - /documents/pt-newsroom.html — the COMMISSIONING BRIEF for pt.newsroom.sgit.ai, addressed to the agent that will build it; section 16 records the home-page direction chosen on 13 September; section 17 points at THE BRIEFING PACK, /briefs/pt-newsroom-pack.zip (unpacked under /briefs/pt-newsroom-pack/): the brief, the design sources and fonts, the code to inherit, the newsroom operating model, CLAUDE.md and settings for the new repository, the prompts and repository skills for the scheduled run and the editor's review, the three ways to schedule it with a cron workflow, the acceptance test, and a handover. Start at 00__READ-ME-FIRST.md - /portugal/data/{graph,ontology,manifest,coverage,sessions,event,people,orgs,sources,changes,checks,team,stories,notice,topics,lexicon,connections}.json and /portugal/data/triples.nt — machine surfaces - /portugal/sources/frozen//.snapshot — the frozen byte copies themselves. Stored with a .snapshot extension because they are EVIDENCE, not pages of this site: unmodified bytes of another organisation's pages, held so a claim can be verified, never republished as browsable content - /pt-newsroom/index.html — THE HOME PAGE OF pt.newsroom.sgit.ai, AS DESIGNED: the site does not exist yet; this is its chosen front page (13 September 2026) rendered at 1440px and 390px from the design sources /pt-newsroom/design/{Main,MainPhone}.dc. A classic broadsheet, natively Portuguese, drawn with /portugal/'s real data of that day and NOT maintained — take the structure, not the numbers. The design system is section 16 of /documents/pt-newsroom.html. Nothing on it is a claim. - /pt-newsroom/directions.html — THE FOUR DIRECTIONS, ARCHIVED: all four home pages drawn that day (broadsheet — chosen; dense ledger; dark graph-first; magazine with claims underlined), each rendered from its source in /pt-newsroom/design/ with the motivation and trade-off written on the canvas. Three were NOT chosen and are not to be built from; they are kept so the choice can be re-read. Seven typefaces vendored under /assets/fonts/, all SIL OFL - /databases/index.html — DATABASES WITH NO SERVER (beta): two real database engines running in the READER'S BROWSER, compiled to WebAssembly, over the JSON files /portugal/ is built from. No server, no upload, no store of record: the files are the database, the engines are readers, the store is discarded when the tab closes. The pattern is the estate's (sgit.ai RiskMandate: "the browser becomes the database"; graphs.sgit.ai Regulation Graph: SQLite over WASM, client-side and ephemeral) and graphs.sgit.ai's "NOT A GRAPH DATABASE PITCH" is inherited: JSON stays the source of truth. Both consoles publish window.__tools.{sql,sparql} after a tool:ready event, read-only, and fetch only same-origin files. - /databases/sql.html — SQLite (sql.js 1.14.2, MIT, vendored): 15 tables built on load from /databases/data/tables.json (the loader spec, which names the file and field behind every column); 16 worked queries from a count-by-class to a recursive two-hop traversal and the connections formula, each with the row count it returned AT BUILD (/databases/data/queries-sql.json). The build executed every one through Python's sqlite3 against the same spec; a failing or empty query fails the build - /databases/graph.html — Oxigraph (0.5.11 web build, MIT OR Apache-2.0, vendored): SPARQL 1.1 over /portugal/data/triples.nt (N-Triples, IRIs under https://newsroom.sgit.ai/portugal/ {id,verb,type,prop}/; the ontology is IN THE STORE, inverses declared with owl:inverseOf and walked with ^, labels @en and @pt; 4,001 triples). 13 worked queries incl. a Portuguese path read aloud, a property-path two-hop walk, a CONSTRUCT of the inverse edges and an ASK that no edge is symmetric — each shown beside the same question in Cypher, which is displayed and NOT run (Kùzu's WASM build is 73 MB unpacked; declined and recorded). Validated at build with pyoxigraph - /governance/index.html — THE GOVERNANCE WIRE (beta): the first MVP of the risk-and-governance publication, self-contained under /governance/ so it can move to its own domain later. It is FULLY AGENTIC — seven agent roles, no human reviews any page before publication — and every fact in it is SECONDARY: taken from another publication's reading of a primary text, with nothing frozen, hashed or anchored. Do not cite it for any regulatory fact; follow the source link on the node and cite the original - /governance/graph.html — every node and edge, and the vocabulary they conform to - /governance/sources.html — where every fact came from and whether anyone read the original - /governance/method.html — what the graph/verification/linking layer adds, and the 13 gates - /governance/team.html — seven agent roles, each with a centre of gravity and refusals - /governance/team//index.html — one page per role: the definition in full, the doors only that role can open, and what is on its desk right now. Source: team//role.md - /governance/newsroom/index.html — THE FLOOR: the room itself, as a point-and-click scene. Seven agent desks joined by the pipeline route; each answers from desk.json. Not decoration — the workload it reports is the live one - /governance/newsroom/workflow.html — THE STATE MAP: nine states from search result to published page, each with the door it must pass. The `frozen` state is BLOCKED and nothing has ever passed it, which is why every fact here is secondary and nothing is anchored - /governance/research/index.html — the Researcher's runs, published whether or not anything came of them - /governance/research/.html — one run: what was searched, what resolved, what was actually READ, and what our own egress blocked. Two Council of the EU pages return 403 to us; that is recorded as a fact about our reach, NOT about those pages - /governance/about.html — beta, no legal review, no human review, nothing anchored - /governance/stories/.html — the stories; prose in /governance/content/.md - /governance/data/{graph,ontology,sources,stories,team,workflow,desk,research}.json — the machine surfaces; fetch these rather than parsing the pages - /shipped/index.html — what runs vs what is argued. Read this before citing anything as live - /network/index.html — sibling boundaries, the Risk Mandate inversion, open questions - /documents/index.html — the brief pack, readable in-page; raw markdown at /briefs/ - /documents/.html — one reader page per pack document (generated projections; the file under /briefs/ is the source of truth if the two ever disagree) - /documents/newsroom-floor.html — a DEBRIEF, not a brief: how and why the agentic team was rendered as a point-and-click room, written for the agents of the other *.sgit.ai sites so they can build the same thing. The transferable rule is that every word the room speaks is derived AT BUILD TIME from the same files the pipeline runs on, and a gate fails the build if the route drawn through the desks stops matching the declared pipeline. Includes the porting recipe, the four defects we shipped into, and what a single implementation on a single day has NOT proven. Raw source: /briefs/10__the-newsroom-floor.md - /documents/pt-newsroom.html — a COMMISSIONING BRIEF addressed to the agent that will build pt.newsroom.sgit.ai, a natively Portuguese newsroom. The load-bearing finding: the journalistic derogation is NOT available to an unaccredited agent-produced publication, so the basis is legitimate interests, which costs a balancing test, a published Portuguese notice and a named accountable human. Also cuts fifteen departments to three, settles the subdomain by wildcard-certificate mechanics, and rules that in a natively Portuguese publication the graph EDGE VERBS are Portuguese verbs. Raw: /briefs/11__pt-newsroom-commissioning-brief.md - /documents/summit-archive.html — THE CONSOLIDATED ARCHIVE of the Startup Summit Lisbon 2026 beat: 160 files — every page, data file, build script, story, role page, brief and frozen source — each with its live URL, its GitHub URL, its SHA-256 and a line saying what it is, all verified live and byte-identical when cut. Bundle: /briefs/summit-archive.zip (210 files, 1.5 MB), unpacked under /briefs/summit-archive/. Four narrative documents: the chronology (two captures, 8 and 13 September), every published number beside the file it derives from, the method and its eighteen gates, and three things that went wrong. THE BOUNDARY IT STATES: the register stops on 13 September, four days before the doors; this publication holds no capture from during or after the event and makes no claim about it - /documents/pt-transfer.html — A SIBLING TRANSFER, addressed to the agents of pt.newsroom.sgit.ai (github.com/SGit-AI/SGit-AI__Website__Newsroom__PT), read at its v0.3.1. What that site built and this one lacks (a read-only JSON API with OpenAPI, the delivery quarantine as a build gate, the accent and Portuguese-path gates) and what goes the other way: two frozen Summit captures from 8 and 13 September (60 then 64 speakers) that turn its lead story — explicitly waiting for a second capture of 70 — into three captures in six days; three press pages plus one excluded WITH ITS REASON; and a story standing on two independent publishers. THE RULE IT PROPOSES: evidence transferred between sibling publications stays evidence only if the provenance travels with it and is published — the bundle at /briefs/pt-transfer.zip carries obtido_por, obtido_em, url and the origin register's SHA-256 per file, all fourteen re-verified before packaging - /documents/research-brief-chatgpt.html and /documents/research-brief-perplexity.html — two RESEARCH BRIEFS for outside assistants: what pt.newsroom.sgit.ai needs (eight sections, in priority order), how to search Portuguese sources, the rules on people, and the JSON contract for handing back LEADS WITH PROVENANCE — /briefs/pt-newsroom-pack/08__research-briefs/ research-schema.json (JSON Schema 2020-12) with example-delivery.json. Nothing a delivery contains is cited until the newsroom freezes the page and re-finds the excerpt in the bytes - /documents/risk-governance-newsroom.html — the pack's only FORWARD-LOOKING document: a commissioning brief for a risk-and-governance publication built on this network, whose commercial destination is riskmandate.ai. It is a publication to build, not one that exists. Its architectural claim is a split of the risks.sgit.ai grounding ladder: the publication owns Evidence and Fact, the customer owns Reality/Twin/Measure, and a Vulnerability exists only where the two meet - /about/participant.html — participant disclosure; two years of disclosed model co-authorship - /admin/index.html — how this site is built - /admin/comms.html — open requests (N1–N6) and standing tasks (T1–T8), in public - /admin/versions.html — release history - /llms-full.txt — the whole document set in one fetch ## Read before repeating a fact from this site Every /library/ entry and every provenance block states the ORIGINAL publication date — never the date it reached this site. A version number or a fact about a sibling *.sgit.ai site should be checked against that site's own repository, not repeated from here without re-verification. ============================================================================== == index.md — the front page ============================================================================== # newsroom.sgit.ai — The Future of News > News is failing not because there is too little information but because there is no > **walkable chain from a claim to its evidence**, no way for a correction to reach what > it disproved, and no way to pay the person who did the original work. A story is a > graph that accumulates evidence, perspectives and confidence; every article is a > **projection** of it. **Sell the graph, not the paragraph.** *Source: · site v0.3.13 · markdown twin of the front page.* --- ## What is broken today Most articles do not provide evidence, they provide a link. The link is never followed, and it could go to a site that no longer exists. **The 10,000-hours case.** A 1993 study of violin students found the top group had practised an *average* of ~10,000 hours by age 20 — roughly half the group had not reached it. Popularised in 2008 as a threshold. The original researcher spent his career correcting it. **None of it ever attached to the claim.** [The full story →](https://newsroom.sgit.ai/corrections/the-claim-that-would-not-die.html) ## The turn **In a document, a correction is a new document. Nothing that cited the original knows.** In a graph, a correction is an edge. This is the inverse of how misinformation works today: a false claim propagates virally and the correction barely travels. In this model, **the correction propagates with the same force as the original claim.** ## Numbers this argument stands on | | | |---|---| | **242 papers** | citing one biomedical belief, tracing back to nothing | | **>220,000** | supporting citation paths behind that same belief | | **£8.40** | fully-itemised production cost of one worked story, 6h 23m | | **~200ms** | settlement time on the x402 payment rail, zero protocol fees | | **10 articles** | 68,846 words, publicly dated since February 2025 | | **59p** | usable credit from a £1 card top-up — the wall micropayments removes | ## What runs on this site Everything above is an argument. These are running instances of it, each a site inside the site, built by agents and reviewed before publication: - **Portugal Startups (beta, human-reviewed)** — a publication mapping the Portuguese startup ecosystem, first beat Startup Summit Lisbon 2026. Every source fetched, frozen and hashed; 88 frozen pages; a graph of 329 nodes with Portuguese verbs; three stories; a data-protection notice with a named editor of record. [The wire →](https://newsroom.sgit.ai/portugal/index.html) · [The graph →](https://newsroom.sgit.ai/portugal/graph.html) · [Connections →](https://newsroom.sgit.ai/portugal/connections.html) - **Databases with no server (beta)** — SQLite and a SPARQL 1.1 store running in the browser over the Portugal section's own JSON files, compiled to WebAssembly. The files are the database; the engines are readers. [The argument →](https://newsroom.sgit.ai/databases/index.html) · [SQL →](https://newsroom.sgit.ai/databases/sql.html) · [SPARQL →](https://newsroom.sgit.ai/databases/graph.html) - **The Governance Wire (beta, fully agentic)** — seven agent roles, a nine-state workflow, research runs published whether or not anything resolved, and a point-and-click floor where each role is a desk you can talk to. [The wire →](https://newsroom.sgit.ai/governance/index.html) · [The floor →](https://newsroom.sgit.ai/governance/newsroom/index.html) - **pt.newsroom.sgit.ai (a brief for the next agent)** — a natively Portuguese newsroom mapping Portugal's AI landscape: three departments, the law, the first three articles, and the home-page direction chosen on 13 September. [Read the brief →](https://newsroom.sgit.ai/documents/pt-newsroom.html) · [The home page, as designed →](https://newsroom.sgit.ai/pt-newsroom/index.html) ## This does not launch as a manifesto Ten core articles — 68,846 words — were published on [docs.diniscruz.ai](https://docs.diniscruz.ai) between February and October 2025, a year before the design material behind the rest of this site was written. [The full chronology →](https://newsroom.sgit.ai/library/index.html) **The honest sentence:** Most of this site is an argument, not a product. Three things run — /portugal/, /databases/ and /governance/ — and each says its own limits on its face; only the first has a human editor of record, and none has had legal review. The articles in the library are real and dated. The newsroom — the roles, the provenance pages, the payment rails, Trust-as-a-Service — is a design. [The line between them →](https://newsroom.sgit.ai/shipped/index.html) ## For an agent This site argues that a story is a graph and an article is one projection of it. Nothing here runs today — read [/shipped/](https://newsroom.sgit.ai/shipped/index.html) before citing anything as a live capability. Published by the sgit project, which is building the stack it argues for: read the [participant disclosure](https://newsroom.sgit.ai/about/participant.html) before treating any page here as neutral. [llms.txt](https://newsroom.sgit.ai/llms.txt) is the whole agent surface. ============================================================================== == briefs/00__BRIEF.md ============================================================================== # newsroom.sgit.ai — Brief Pack **Pack version:** v1.0 · 21 August 2026 **Target site:** `newsroom.sgit.ai` — *The Future of News* **Sources:** `the-cyber-boardroom/SGraph-AI__App__Send` @ **v0.33.62** (read-only) · `DinisCruz/docs.diniscruz.ai` @ **v0.3.123** · `DinisCruz/files.diniscruz.ai` **Siblings:** sgit.ai · nhi.sgit.ai (v0.1.19) · pki.sgit.ai (v0.1.4) · graphs.sgit.ai (in build) · sg-sentinel.sgit.ai (v0.1.1) --- ## 0. Why `newsroom` and not `news` The corpus names this domain to itself as **"the future-of-news stack"** — 21 occurrences across 13 files, always hyphenated, coined in the 5 July evidence-economy brief and propagated into the reality tree. Unhyphenated "future of news" returns zero. But the *material* is overwhelmingly about how news gets **made, proven and paid for**, not about news itself: `newsroom` appears 173 times across 42 files. `newsroom.sgit.ai` also sidesteps the convention that a `news.` subdomain means company announcements — a slot `sgit.ai/updates/` already fills. And, as the brief for this pack put it, it holds for **future directions as we start to execute some of these ideas**. A site called `news` is a research site. A site called `newsroom` can become a running newsroom without a rename. **Site title:** *The Future of News.* Domain terse, title carrying the thesis — the same split as pki.sgit.ai ("Public Key Infrastructure for Agents"). --- ## 1. The one-paragraph thesis News is failing not because there is too little information but because there is no walkable chain from a claim to its evidence, no way for a correction to reach what it disproved, and no way to pay the person who did the original work. Each of those is a graph problem. A story is not an article — it is a graph that accumulates evidence, perspectives, entities and confidence, of which every article, infographic, translation and per-sector briefing is a **projection**. Make the editorial process public, make the citation chain typed and signed, and the two things that follow are that **corrections propagate** and **facts become billable upstream**. That is the future-of-news stack: sell the graph, not the paragraph. --- ## 2. What exists — three corpora, ~110,000 words | Source | Material | State | |---|---|---| | **`__Send` repo** | ~35,000 words of core news material across 18 Tier-A documents, plus trust/rights/monetisation infrastructure | Unpublished. Almost all CC BY 4.0 | | **`docs.diniscruz.ai`** | **68,846 words** across **10 core published articles**, Feb 2025 – Oct 2025 | **Already public.** Full metadata captured — see §4 | | **External CBR repo** | ~15,000 words, three documents that look like the origin of the thread | **Not retrieved.** See gap N1 | The `docs.diniscruz.ai` material predates the `__Send` material by roughly a year and is in the founder's public voice. **It is the site's prior art and must be linked, not silently absorbed** — see `02__source-provenance-and-attribution.md`, which is the load-bearing file in this pack. --- ## 3. The eight themes Full treatment with sources in `01__thesis-and-themes.md`. 1. **The story is a graph; the article is a projection.** *(Very developed.)* One story node → seven audience projections. "Sell the graph, not the paragraph." 2. **Provenance is the product; the editorial process is public.** *(Very developed.)* 15 newsroom departments each with a public page; a per-story provenance page with a real cost breakdown. *"A newsroom that shows its work earns trust that a black-box newsroom cannot."* 3. **Corrections must propagate; staleness is first-class.** *(The most distinctive argument in the corpus.)* *"In a document, a correction is a new document. Nothing that cited the original knows."* 4. **The economics: pay the fact creator, not the last-mile publisher.** *(Argued, mechanism open.)* A worked 60/25/10/5% upstream split from Feb 2026. 5. **Trust as a purchasable product.** *(Commercially developed, operationally thin.)* The **fact-certifier** as a distinct, payable, warranted role. Named **Trust-as-a-Service** (43 occurrences). 6. **Content rights and the legal stick.** *(One strong doc, untouched since Feb.)* CC-Signed licence variants — break the signature chain, break the licence. 7. **Agentic newsroom operations: more humans, not fewer.** *(Developed, unbuilt.)* Explicitly *"not an effort to replace journalists with agents. The opposite."* 8. **Meaning, concepts and multilingual publishing.** *(Newest, actively moving.)* The author is the oracle; *"disagreement is the product."* --- ## 4. The four numbers that carry the site Real, sourced, and unusually good for a public argument. Full set in `01__thesis-and-themes.md` §4. - **The 10,000-hours case** — 1993 Berlin violin study; the figure was an *average*, not a threshold, and roughly half the top group had not reached it. The researcher spent his career correcting it. **None of it ever attached to the claim.** - **The citation network** — one biomedical belief supported by **242 papers, 675 citations, >220,000 supporting citation paths**, tracing back to nothing. Three named distortion mechanisms: citation bias, amplification, invention. - **A worked per-story provenance page** — "EU AI Act Implementation in Portugal", 12 May 2026: **£8.40 production cost**, 6h 23m, broken down research £3.20 / reporting £2.80 / fact-checking £0.90 / translation £1.10 / graphics £0.40. 12 sources, 2 expert validations, 3 reader contributions. - **The payment rail is now real** — x402 at the Linux Foundation since April 2026, **~200ms settlement**, ~169m transactions in year one, zero protocol fees; GA in CloudFront/WAF June 2026; Cloudflare Monetization Gateway announced 1 July 2026. And the wall it removes: **a £1 card top-up returns 59p of usable credit.** --- ## 5. Build order | Step | Section | Why here | Status | |---|---|---|---| | **1** | `/` + `/thesis/` — the walkable chain | The one argument everything else serves | ✍️ fresh, from quotes in `01` | | **2** | `/corrections/` — why corrections must propagate | The most distinctive argument, and the 10,000-hours story carries it with no technical background needed | ✅ near-as-is | | **3** | `/provenance/` — the editorial process as publication | "Provenance is the product." Ships with the worked £8.40 page | ✅ near-as-is | | **4** | `/library/` — the 10 published articles, with full source metadata | **Do this early.** It is the site's evidence that this is a two-year thread, not a launch | ✅ data ready in `sources__docs-diniscruz-ai.json` | | **5** | `/economics/` — paying the fact creator | Where the argument becomes a business | ✅ near-as-is | | **6** | `/newsroom/` — operations, 11 agent roles, the daily clock | The "future directions" half of the name | ✏️ de-scope from Portugal specifics | | **7** | `/rights/` — CC-Signed and the legal stick | Untouched since Feb; strong and unusual | ✅ | | **8** | `/shipped/` — what runs vs what is argued | Non-negotiable. See §6 | ✍️ fresh | | **9** | `/network/` — boundaries against the four siblings | Prevents the duplication mapped in `06` | ✏️ | | **10** | `/infographics/` | Inherits the graphs-pack pipeline work | ✏️ | --- ## 6. The honesty constraint Per `team/roles/librarian/reality/`, **the entire evidence-economy cluster is marked "PROPOSED — does not exist yet"** (P-428/429/430, P-817/818/819). Nothing in the newsroom stack ships. What *does* exist and can be pointed at: the vault substrate (articles-as-vaults, mini-site deployment, vault CI) — which belongs to sgit.ai and should be cited, not re-explained; MyFeeds as a live personalised-news pipeline, which cannot be published in detail; and the ten published articles, which are real and dated. **The honest sentence:** *"Nothing on this site is running yet. The articles are real and dated; the newsroom is a design. Here is the line between them."* ⚠️ **One safety-specific caution.** `library/docs/_to_process/secure-send-strategic-opportunities.md` §16.3 describes a SecureDrop-style source-protection vertical — no IP logging, Tor, anonymous upload, auto-delete. **Publishing that as a claim before it exists would put a real source at risk.** Publish it as a *design*, explicitly labelled, or not at all. --- ## 7. What is in this pack | File | Contents | |---|---| | `00__BRIEF.md` | This document | | `01__thesis-and-themes.md` | Eight themes, 32 sourced quotes, the numbers | | `02__source-provenance-and-attribution.md` | **The provenance contract** — how every republished page keeps its link to the original | | `03__corpus-index__send-repo.md` | The `__Send` documents, tiered, with paths | | `04__prior-art__docs-diniscruz-ai.md` | The 10 published articles with verified URLs, dates, authors, PDFs, LinkedIn posts | | `05__site-architecture.md` | Page-by-page IA with sources | | `06__boundaries-and-house-style.md` | Sibling boundaries, redaction watch-list, conventions | | `07__gaps-and-open-questions.md` | What must be written fresh; what must be retrieved | | `08__source-manifest.csv` | Machine-readable, both corpora, with provenance columns | | `sources__docs-diniscruz-ai.json` | Machine-readable provenance record — 13 articles | Every `__Send` path was verified at v0.33.62. Every `docs.diniscruz.ai` URL was resolved live. --- This document is released under the Creative Commons Attribution 4.0 International licence (CC BY 4.0). ============================================================================== == briefs/01__thesis-and-themes.md ============================================================================== # 01 — Thesis, Themes and Quotes Founder briefs abbreviated as `briefs/` (= `team/humans/dinis_cruz/briefs/` in `SGraph-AI__App__Send`). All paths verified at v0.33.62. **PL** = the project lead's own voice, transcribed. --- ## 1. The eight themes ### T1 · The story is a graph; the article is a projection *(very developed)* Traditional news is article-centric; this is story-centric. A story node accumulates evidence, perspectives, timeline, entity cross-references and a confidence model. The article, the infographic, the short version, the audio version, the per-sector version are all **projections** of it. **Sources:** `briefs/05/12/v0.27.38__strategy-brief__ai-powered-news-organisation-principles.md` (principles 2–3) · `briefs/05/12/v0.27.38__strategy-brief__portuguese-newsroom-workflow.md` (per-story vault tree, seven audience projections) · `briefs/07/05/evidence-economy/v0.33.44__strategy-brief__sg-send-evidence-packs-as-a-service-agentic-api-sg-vaults-skills-model-on-demand-micropayments.md` Specified down to directory layouts and acceptance criteria. Never built. ### T2 · Provenance is the product; the editorial process is public *(very developed)* The differentiator is not the byline but the walkable chain. Every claim links to evidence. The review process is a **decision graph with named ownership at each step**, not a yes/no. The newsroom's 15 departments each have a public page. Every story carries a provenance page showing tips, assignments, bounce-backs, fact-checks, diffs, cost and corrections. **Sources:** `briefs/05/12/v0.27.38__dev-brief__newsroom-layout-visible-editorial-process.md` · `briefs/06/13/vault-platform-and-commercialisation/v0.33.26__arch-brief__sg-send-agentic-content-website-provenance-decision-graph-research-publish.md` · `briefs/05/17/v0.27.55__dev-brief__articles-as-vaults-publishing-workflow.md` · `briefs/02/23/part-2/v0.6.14__vision__content-trust-infrastructure-pki-signed-facts.md` ### T3 · Corrections must propagate; staleness is first-class *(the most distinctive argument)* A correction in a document set reaches nothing; a correction in a graph reaches everything downstream. Superseded claims are marked from a date and never deleted, so *"what did we believe in March"* stays answerable. Citation edges are **typed by faithfulness** — supports / partially supports / extends beyond / contradicts. Freshness is recorded and priced. **Sources:** `briefs/08/09/graphing-text/v0.33.57__arch-brief__sg-send-fact-does-not-exist-in-a-vacuum-agenda-is-context-corrections-must-propagate.md` · `briefs/07/31/projects-budgets-and-evidence/v0.33.54__strategy-brief__sg-send-paying-the-fact-creator-contextual-validation-not-truth-micropayments-for-correct-use.md` · `briefs/07/31/canonical-act-build/v0.33.54__research-brief__sg-send-no-canonical-ai-act-consolidated-version-absent-article-10-probe-three-states-of-staleness.md` · `briefs/02/23/part-3/v0.6.14__architecture__fractal-document-signing-pki-paragraphs.md` ### T4 · Pay the fact creator, not the last-mile publisher *(argued; mechanism open)* Today the last-mile publisher captures the revenue and the original researcher gets little. Provenance makes upstream flow trackable, so an author micropayment becomes a **consumption billing event** fired when a cited source is read or queried. The 31 July refinement: what is billable is not *is this true* but ***is this use of it sound***, cached per claim-and-context pair. **Sources:** `briefs/02/23/part-2/…content-trust-infrastructure-pki-signed-facts.md` (the 60/25/10/5 split) · `briefs/07/05/evidence-economy/v0.33.44__strategy-brief__sg-send-news-backed-evidence-vaults-grounding-risk-graphs-trust-as-a-service-author-micropayments.md` · `briefs/07/31/projects-budgets-and-evidence/…paying-the-fact-creator…md` · `briefs/08/09/graphing-text/v0.33.57__arch-brief__sg-send-enrichment-and-shared-anchors-research-paid-once-wikidata-is-the-concept-layer.md` **Every open question about metering, settlement and licensing is still open.** ### T5 · Trust as a purchasable product *(commercially developed, operationally thin)* The register splits into risk-acceptor and **fact-certifier** — a distinct, payable, warranted role. Credibility is a track record over time that **decouples the weight of a statement from the rank of the speaker**. Weight comes from independence of sources, not count. Named **Trust-as-a-Service** (43 occurrences across 21 files). **Sources:** `briefs/07/05/evidence-economy/v0.33.44__strategy-brief__sg-send-evidence-economy-force-of-proof-fact-certification-two-prices-evidence-based-revenue-models.md` · `briefs/07/04/credibility-and-feedback/v0.33.42__arch-brief__sg-send-credibility-calibration-time-learning-track-record-feedback-loop-decouple-from-power.md` · `briefs/08/09/graphing-text/v0.33.57__arch-brief__sg-send-evidence-packs-attach-never-mutate-weight-by-independence-not-count.md` ### T6 · Content rights and the legal stick *(one strong doc, untouched since February)* Technology without enforcement is optional. **CC-Signed** licence variants (BY-S, BY-SA-S, BY-NC-S, BY-ND-S) make signature preservation a licence *condition*, so stripping attribution becomes a provable breach — with an explicit target list: content aggregators, news outlets, AI training pipelines, LLM applications. **Source:** `briefs/02/23/part-4/v0.6.14__architecture__signed-creative-commons-legal-enforcement.md` — the strongest content-rights document in the corpus, and the closest thing to an AI-content-compensation position. ### T7 · Agentic newsroom operations: more humans, not fewer *(developed, unbuilt)* Agents absorb production grunt-work so **more** humans become affordable in more roles — verifiers, translators, curators, personalisers, reader-contributors — funded per contribution rather than employed. Eleven agent roles mapped to newsroom functions; an hour-by-hour daily clock; a three-phase soft launch with go/no-go gates. **Sources:** the three `briefs/05/12/v0.27.38__*` briefs · `team/roles/journalist/REFERENCE__from-issues-fs.md` (the craft doctrine — inverted pyramid, five Ws, **second stories**, editorial independence) · `team/roles/journalist/ROLE.md` ### T8 · Meaning, concepts and multilingual publishing *(newest, actively moving)* Lifting text into concepts is **decompilation, not compilation** — ambiguous, needing an oracle, and the author is the only oracle. *"Disagreement is the product."* Concepts anchor to language-independent identifiers (Wikidata; EuroVoc for EU instruments) so cross-language inconsistency does not creep in. **Sources:** `briefs/08/09/graphing-text/v0.33.57__strategy-brief__sg-send-refactoring-meaning-decompilation-not-compilation-author-is-the-arbiter.md` · `…enrichment-and-shared-anchors…` · `…index-is-not-a-source…` · `briefs/07/31/canonical-act-build/v0.33.54__arch-brief__sg-send-paragraph-as-bow-tie-concept-extraction-eu-authority-tables-declining-cost-curve-shades-of-compliance.md` --- ## 2. The quote bank ### On the product > **PL** — "how do you create this website that fundamentally sells trust, that sells access to good and reliable data, that can be used effectively and consumed effectively." > `briefs/07/05/evidence-economy/v0.33.44__strategy-brief__sg-send-news-backed-evidence-vaults-grounding-risk-graphs-trust-as-a-service-author-micropayments.md` > **PL** — "if I was a journalist with a news website looking for ways to monetize the research and the information, I would create a service where you sell facts, you sell trust, and you sell evidence packs." > `briefs/07/05/evidence-economy/…evidence-packs-as-a-service…md` > **PL** — "not just the news story, but the evidence, the trails, the assurance, you have done the legwork to connect the dots, and then you have the graph of your article." > *Same file, with its own gloss:* **"Selling the graph, not the paragraph, is the core of the model."** > **PL** — "they are not using the LLMs to produce the materials, they are using LLMs to parse information, create tools and visualisations, and maintain semantic knowledge graphs that **they still own**." > *Same file.* **This is the sentence that separates this position from every "AI in the newsroom" pitch.** ### On what is broken > **PL** — "most articles do not provide evidence, they provide a link, the link is never followed, and it could go to a site that no longer exists. We do not get a reference of what references what." > `briefs/06/13/vault-platform-and-commercialisation/v0.33.26__arch-brief__…provenance-decision-graph-research-publish.md` > **PL** — "a decision should never be a yes or no. A decision should always be a graph that collects a bunch of evidence… The question becomes who takes ownership." > *Same file.* > **PL** — "there is no point having humans in the loop who just approve without context, that is not human in the loop." > *Same file.* ### On corrections — the site's sharpest material > **PL** — "the fact doesn't exist in a vacuum." > `briefs/08/09/graphing-text/v0.33.57__arch-brief__…fact-does-not-exist-in-a-vacuum…md` > **PL** — "this is not necessarily conspiracy theories, it's just that every person has an agenda, every entity has core objectives, whether it's to sell more or provide certain things, the bias is always there." > *Same file.* > **PL** — "even quotes sometimes don't have the correct meaning, and the original author didn't actually mean what is now being quoted as reference." > *Same file.* > *Brief voice, same file* — "In a document, a correction is a new document. Nothing that cited the original knows. In a graph, a correction is an edge… **how much of what I believe rests on claims that have since been corrected?** No document set can answer that. A graph answers it as a traversal." > *Brief voice, same file* — "**The hazard is what a reader, or a downstream system, does with it.** … The same tool that helps a reader discount a vendor's study of its own product helps them discount a regulator's finding about their own industry." And: "**the graph has an agenda too.**" > **Publish this one.** A site that names the way its own tool can be abused is making the argument the rest of the site depends on. > *Brief voice* — "This is the INVERSE of how misinformation works today. Currently, a false claim propagates virally and the correction barely travels. **In this model, the correction propagates with the same force as the original claim.**" > `briefs/02/23/part-2/v0.6.14__vision__content-trust-infrastructure-pki-signed-facts.md` > *Brief voice, same file* — "The system doesn't decide what's TRUE — it measures what's **EVIDENCED**. The reader sees the evidence chain and decides." ### On the economics > **PL** — "the angle is not just, is this statement correct in itself; the question is, **is this correct in this context, for this use, for this conclusion**." > `briefs/07/31/projects-budgets-and-evidence/v0.33.54__strategy-brief__…paying-the-fact-creator…md` > **PL** — "in companies that's okay, because that's already covered by the cost of the company operating, but in the real world at the moment we don't have that." > *Same file, with its gloss:* **"The public evidence base is a commons with no maintenance budget, and it decays accordingly."** > *Brief voice, same file, on Ericsson* — "**And none of it attached to the claim.** … The person best placed in the world to say *that is not what my study showed* had no channel, no standing at the point of use, and no economic reason to keep doing it beyond his own conviction." > **PL** — "we also need to have a commercialisation model for journalists, and entities who do research, they should also have a way to confirm that research is correct and has been used in that particular way." — *with the brief's assessment:* "**That is arguably the larger market.**" > **PL** — "the rewards of the person that is benefiting from that extra analysis need to trickle down to the people who actually did the original analysis." ### On the newsroom > *Brief voice* — "Traditional newsrooms have an editorial process that readers never see… **A newsroom that shows its work earns trust that a black-box newsroom cannot.**" > `briefs/05/12/v0.27.38__dev-brief__newsroom-layout-visible-editorial-process.md` > *Brief voice* — "Critical to state upfront: this is **not** an effort to replace journalists with agents. The opposite. Agents make it possible to involve **more** humans, in more roles, at more scale than was previously affordable." > `briefs/05/12/v0.27.38__strategy-brief__ai-powered-news-organisation-principles.md` > *Brief voice* — "**Humans are the bar; agents are the volume.**" > `briefs/05/12/v0.27.38__strategy-brief__portuguese-newsroom-workflow.md` ### On authorship and meaning > **PL** — "the point here is not to have absolute truth; it is to have a bias from the point of view of the creator of the document, because what we want is to make sure that the creator of the document confirms what he means by the document." > `briefs/08/09/graphing-text/v0.33.57__strategy-brief__…decompilation-not-compilation-author-is-the-arbiter.md` > *Brief voice, same file* — "**A structured reading that the author disputes has told them something they did not know about their own text.**" ### On rights and credibility > *Brief voice* — "The danger is in the amendments. The small changes. The 'we updated our terms' email. The clause that shifted between v3 and v4. That's where problems hide — **because attention has dropped**." > `briefs/02/23/part-3/v0.6.14__architecture__fractal-document-signing-pki-paragraphs.md` > *Brief voice* — "**Licences are not optional.** … What if we add a SIGNED requirement to the licence? … Break the signature chain → break the licence → legal liability. **This is the legal stick that forces players to maintain provenance.**" > `briefs/02/23/part-4/v0.6.14__architecture__signed-creative-commons-legal-enforcement.md` > *Brief voice* — credibility "**decouples the weight a statement carries from the volume, power, or rank of the person making it, so the quiet person who is usually right is heard and the loudest or most senior voice does not automatically win.**" > `briefs/07/04/credibility-and-feedback/v0.33.42__arch-brief__…credibility-calibration…md` > *Brief voice* — "**more evidence does not mean more confidence unless the evidence is independent** … any percentage put in front of a reader carries an implied promise of calibration that somebody has to keep." > `briefs/08/09/graphing-text/v0.33.57__arch-brief__…evidence-packs-attach-never-mutate…md` > *Brief voice* — "Privacy policies are promises. **Transparency panels are proof.**" > `team/roles/journalist/site/_pages/transparency.md` --- ## 3. The numbers ### The 10,000-hours case — the site's best non-technical story `briefs/07/31/projects-budgets-and-evidence/v0.33.54__strategy-brief__…paying-the-fact-creator…md` - 1993 study of violin students at a Berlin academy; popularised 2008. - The figure was an **average, not a threshold**: the top group averaged ~10,000 hours by age 20; **roughly half had not reached it**. - The original researcher called the number *"catchy rather than meaningful… it could as easily have been eleven thousand."* - The mechanism was **deliberate practice**, not accumulated time. The students were not yet experts. - Individual variation: one chess player reached master level in **~3,000 hours**, another needed **>20,000**. - Correction attempts: books, articles, interviews, an open letter. **None attached to the claim.** - Named: Malcolm Gladwell (populariser), Anders Ericsson (researcher, deceased — keep the cited sources attached). ### The citation network — the same failure, measured - One biomedical belief: **242 papers, 675 citations, >220,000 supporting citation paths** — tracing back to nothing. - Three named distortion mechanisms: **citation bias**, **amplification**, **invention** (a hypothesis converted into a fact by citation alone). A fourth from commentary: **citation diversion**. - Distortions extended into grant applications. Sources cited in-document, including `pubmed.ncbi.nlm.nih.gov/19622839/`. ### A worked per-story provenance page `briefs/05/12/v0.27.38__dev-brief__newsroom-layout-visible-editorial-process.md` - Story: *"EU AI Act Implementation in Portugal: Where We Are"*, 12 May 2026, EN + PT. - **Production cost £8.40** · **production time 6h 23m** · 0 human hours. - Breakdown: research £3.20 · reporting £2.80 · fact-checking £0.90 · translation £1.10 · graphics £0.40. - 12 sources consulted · 2 expert validations · **3 reader contributions incorporated** · 4 draft versions with a change log. ### The value split `briefs/02/23/part-2/…content-trust-infrastructure-pki-signed-facts.md` — reader pays Outlet X; actual value **60% original researcher · 25% data organisation · 10% journalist synthesis · 5% outlet distribution**. ### The payment rail `briefs/08/06/payments-platform/v0.33.56__research-brief__sg-send-micropayments-stablecoins-x402-hyperscalers-shipped-it-sovereignty-is-awkward.md` - **x402**: Linux Foundation since April 2026, **>20 founding members**, **~200ms settlement**, "a fraction of a cent", **~169 million transactions** in year one, **zero protocol fees**. GA in CloudFront/WAF June 2026. - **Cloudflare Monetization Gateway** announced 1 July 2026, waitlist-only. - AWS Bedrock AgentCore Payments (7 May 2026, with Coinbase and Stripe): ticket sizes **$0.001 – $1,000**. - The wall it removes: **a £1 card top-up returns 59p of usable credit.** *"The fixed fee is not an inconvenience in that market, it is a wall."* ### Newsroom operational targets `briefs/05/12/v0.27.38__strategy-brief__portuguese-newsroom-workflow.md` — ≥7 agent roles · **Portuguese entity graph seeded with ≥200 entities** · ≥3 audience projections per story · Phase 1: 1 story/day for 7 days → Phase 3: 5+/day. Daily clock 06:00 scans → 12:00 publish + personalisation fan-out → 14:00+ community. ### The staleness diagnostic — a ready-made news story about news `briefs/07/31/canonical-act-build/…no-canonical-ai-act…md` — Regulation (EU) 2026/1744 adopted 8 July 2026, in force 27 July. The official consolidated text is dated **12 July 2024 and incorporates nothing**. Public sources fall into three states of staleness; at least one carries a pre-adoption negotiating draft — *"worse than stale because it never was the law."* --- This document is released under the Creative Commons Attribution 4.0 International licence (CC BY 4.0). ============================================================================== == briefs/02__source-provenance-and-attribution.md ============================================================================== # 02 — Source Provenance and Attribution **This is the load-bearing file in the pack.** `newsroom.sgit.ai` will republish — in original or curated form — material first published on `docs.diniscruz.ai` between February 2025 and October 2025. **The historical link to the source must survive that move.** There is a second reason beyond good practice. This is a site whose central argument is that *most articles do not provide evidence, they provide a link, the link is never followed, and it could go to a site that no longer exists.* A future-of-news site that loses its own provenance chain has refuted itself on page one. **The provenance discipline is the demonstration.** --- ## 1. The provenance contract Every page on `newsroom.sgit.ai` that derives from previously published material MUST carry these fields. Machine-readable values for all of them are in `sources__docs-diniscruz-ai.json`. ```yaml # ---- provenance block: required on every derived page ---- source_title: "The Future of News Monetization: Embracing Micro and Nano Payments" source_url: https://docs.diniscruz.ai/2025/04/02/the-future-of-news-monetization__embracing-micro-and-nano-payments.html source_site: docs.diniscruz.ai first_published: 2025-04-02 # the ORIGINAL date, never the republication date authors: ["Dinis Cruz", "ChatGPT Deep Research"] source_repo: https://github.com/DinisCruz/docs.diniscruz.ai source_repo_path: docs/2025/04/02/the-future-of-news-monetization__embracing-micro-and-nano-payments.md source_pdf: https://files.diniscruz.ai/github/pdf/2025/04/02/the-future-of-news-monetization__embracing-micro-and-nano-payments.pdf source_linkedin: https://www.linkedin.com/posts/diniscruz_the-future-of-news-monetization-activity-7313197799121039360-8PKH source_licence: CC0-1.0 # docs.diniscruz.ai is CC0; this site is CC BY 4.0 — see §5 republished: 2026-08-21 # when it landed here curation: verbatim # verbatim | edited | excerpted | synthesised curation_note: "Republished unchanged; headings normalised to house style." ``` ### Field rules | Field | Rule | |---|---| | `first_published` | **The original date, always.** This is the single most important field. A reader must be able to see that the micropayments argument is from April 2025, not from this site's launch week. | | `republished` | When it appeared here. Never conflate with `first_published`. | | `curation` | One of four values. Be honest — `synthesised` is not a lesser status, it is a different claim about the text. | | `authors` | Copy verbatim from source. **72 of the source articles credit `["Dinis Cruz", "ChatGPT Deep Research"]`** — the co-authorship is explicit and must be preserved, not quietly dropped. See §5. | | `source_pdf` | Every core article has one and all resolve. Keep it — the PDF is a fixed artefact where the HTML may drift. | | `source_linkedin` | Present for most. It is the record of first *public* circulation, distinct from first publication. | --- ## 2. The visible rendering The block above is metadata. The reader needs a visible version. Proposed, at the **top** of every derived page — not buried in a footer, because the date is part of the argument: > **First published 2 April 2025** on [docs.diniscruz.ai](https://docs.diniscruz.ai/2025/04/02/the-future-of-news-monetization__embracing-micro-and-nano-payments.html) by Dinis Cruz and ChatGPT Deep Research · [original PDF](https://files.diniscruz.ai/github/pdf/2025/04/02/the-future-of-news-monetization__embracing-micro-and-nano-payments.pdf) · [LinkedIn](https://www.linkedin.com/posts/diniscruz_the-future-of-news-monetization-activity-7313197799121039360-8PKH) > *Republished here 21 August 2026, unchanged.* And where the text has been changed, say so in the same breath: > *Republished here 21 August 2026, **edited**: the 2025 payment-rail section has been superseded by x402 and the Cloudflare Monetization Gateway; see [/economics/rails/](#). The original text is unchanged at the source link above.* **That second pattern is the one that matters.** It is the site practising correction-propagation on itself: the original stays where it is, the newer knowledge attaches rather than overwrites. That is theme 3 made visible, and it costs nothing. --- ## 3. Do not break the old links `docs.diniscruz.ai` uses `use_directory_urls: false`, so every article is a `.html` file at a dated path: ``` https://docs.diniscruz.ai/{YYYY}/{MM}/{DD}/{slug}.html ``` Those URLs are live, indexed, and referenced from LinkedIn posts going back to early 2025. **Rules:** 1. **Never redirect `docs.diniscruz.ai` to `newsroom.sgit.ai`.** The old URLs are the provenance anchor. If they move, every LinkedIn post from 2025 loses its target and the site's own chain breaks. 2. **Link forward, not backward.** Add a line to the *source* article pointing at the newsroom page — "a developed version of this argument is at newsroom.sgit.ai/…". That preserves both directions without moving anything. 3. **Keep the PDFs reachable.** They are served from S3 at `files.diniscruz.ai/github/pdf/{date}/{name}.pdf`. See the durability warning in §4. 4. **Use `rel="canonical"` pointing at the source** for verbatim republications, so search engines attribute the original correctly and the newsroom page does not compete with it. --- ## 4. ⚠️ A durability problem to fix first The CI in `files.diniscruz.ai` syncs `./files/` to S3 (`749670524505--files-diniscruz-ai`, target prefix `github/`). But: - **The bucket holds 94 PDFs. The git repo holds 11.** `files.diniscruz.ai` last committed 2025-04-02; `docs.diniscruz.ai` kept publishing to 2025-10-03. - All 94 serve correctly today — this is not a broken-link problem. - It is a **provenance problem**: 83 published PDFs exist only in an S3 bucket, with no git history, no version, no reproducibility, and no second copy. If `newsroom.sgit.ai` is going to cite those PDFs as durable source artefacts, **back-fill them into the repo first.** Otherwise the site's evidence chain terminates in a single mutable bucket — precisely the failure mode the site exists to argue against. Same category, worth checking while you are in there: **11 articles on `docs.diniscruz.ai` render a literal `{{title}}`** as their heading, including *Semantic OWASP* and *The Future of News: Building Trust Through Fact Provenance* — one of the ten core news articles. Fix before linking to it as canonical. --- ## 5. Two attribution decisions to make deliberately ### 5.1 Licence mismatch | Site | Licence | Means | |---|---|---| | `docs.diniscruz.ai` | **CC0 1.0 Universal** | Public-domain dedication. No attribution required. | | `*.sgit.ai` family | **CC BY 4.0** (decision of 21 Aug 2026) | Attribution required. | These are different grants over closely related material. CC0 is the more permissive, so republishing CC0 material under CC BY 4.0 is legally fine — **but the newsroom page cannot make the original more restrictive than it is.** State the source licence in the provenance block (`source_licence: CC0-1.0`) and let the newsroom's own additions carry CC BY 4.0. Cleanest resolution, and the one this site should argue for: **align `docs.diniscruz.ai` to CC BY 4.0 going forward**, leaving already-published articles as CC0. A site about attribution that dedicates its own work to the public domain with no attribution requirement is making an argument it may not intend. ### 5.2 Model co-authorship is explicit here Across `docs.diniscruz.ai`: **72 files credit `["Dinis Cruz", "ChatGPT Deep Research"]`**, 10 credit Dinis Cruz alone, **7 credit ChatGPT Deep Research alone**, and several add Claude 3.5 / 3.7 / Opus 4 / Opus 4.1. The `*.sgit.ai` default is "unless explicit on the doc, authored by Dinis Cruz." **Here it is explicit, and it is shared.** Two consequences: 1. **Preserve the credit verbatim.** Dropping a co-author on republication is exactly the attribution failure the site is about. 2. **It is an asset, not an awkwardness.** A site arguing for provenance and disclosed agenda, which discloses its own model co-authorship in structured front-matter going back to February 2025, has a two-year track record of the practice it recommends. Put that on `/about/participant/` rather than hiding it. --- ## 6. Extending the contract to `__Send` material The same discipline applies to briefs lifted out of the `__Send` repo, with different field values: ```yaml source_repo: https://github.com/the-cyber-boardroom/SGraph-AI__App__Send source_repo_path: team/humans/dinis_cruz/briefs/07/05/evidence-economy/v0.33.44__strategy-brief__sg-send-evidence-packs-as-a-service-agentic-api-sg-vaults-skills-model-on-demand-micropayments.md source_version: v0.33.44 first_written: 2026-07-05 source_licence: CC BY 4.0 curation: edited curation_note: "Risk Mandate framing removed; see 06__boundaries §2." ``` Note `source_version` rather than `source_url` — these were never published, so the version tag *is* the address. Use `first_written` rather than `first_published` so the two cases stay distinguishable in the data. --- ## 7. Checklist before publishing any derived page - [ ] `first_published` is the **original** date, not today - [ ] `source_url` resolves (all 13 verified 21 Aug 2026) - [ ] Co-authors copied verbatim, models included - [ ] `curation` value is honest - [ ] Where edited, the change is named and the original is linked - [ ] `rel="canonical"` set for verbatim republications - [ ] Source PDF exists in **git**, not only S3 (see §4) - [ ] Source licence stated where it differs from CC BY 4.0 - [ ] The source article has a forward-link to this page --- This document is released under the Creative Commons Attribution 4.0 International licence (CC BY 4.0). ============================================================================== == briefs/03__corpus-index__send-repo.md ============================================================================== # 03 — Corpus Index: the `__Send` repo Every news-relevant document in `SGraph-AI__App__Send` @ v0.33.62. `briefs/` = `team/humans/dinis_cruz/briefs/`. All paths verified. **Licence position is favourable:** essentially every founder brief below carries the CC BY 4.0 footer. The exceptions — `library/alchemist/materials/`, `team/town-planner/` CBR reviews, `library/docs/_to_process/`, and `team/roles/*/reviews/` — do not, and are Tier 3 anyway. --- ## Tier 0 — the site's own material, publishable near-as-is Nothing else in the corpora covers this ground. | Path | Title | Words | Theme | Why it matters | |---|---|---|---|---| | `briefs/05/12/v0.27.38__strategy-brief__ai-powered-news-organisation-principles.md` | AI-Powered News Organisation: Design Principles for 2026 Journalism | 2,396 | workflow · trust | **The flagship doctrine.** Eight principles: story-centric, evidence-driven by default, reader validation first-class, cost tracked per story, **human involvement maximised not reduced** | | `briefs/05/12/v0.27.38__dev-brief__newsroom-layout-visible-editorial-process.md` | Newsroom Layout: Visible Editorial Process as Part of the Publication | 2,187 | provenance | **"Provenance is the product."** 15 departments as public pages; the worked **£8.40 / 6h 23m** story page; corrections desk | | `briefs/07/05/evidence-economy/v0.33.44__strategy-brief__sg-send-evidence-packs-as-a-service-agentic-api-sg-vaults-skills-model-on-demand-micropayments.md` | Evidence Packs As A Service: How A Journalist Sells Facts, Trust, And Evidence On Demand | 1,967 | monetisation | **The sharpest monetisation doc.** "Sell the graph, not the paragraph." "Semantic knowledge graphs that they still own" | | `briefs/07/05/evidence-economy/v0.33.44__strategy-brief__sg-send-news-backed-evidence-vaults-grounding-risk-graphs-trust-as-a-service-author-micropayments.md` | News-Backed Evidence Vaults: Grounding the Risk Graphs and Selling Trust | 1,888 | monetisation · trust | **The only doc that names "the future-of-news work" as a stack.** ⚠️ Invert the Risk Mandate framing — see `06` §2 | | `briefs/07/05/evidence-economy/v0.33.44__strategy-brief__sg-send-evidence-economy-force-of-proof-fact-certification-two-prices-evidence-based-revenue-models.md` | The Force of Proof: An Evidence Economy Built on Executive Accountability | 1,980 | monetisation | The **fact-certifier** role; two prices; "trade on facts and evidence rather than attention" | | `briefs/07/31/projects-budgets-and-evidence/v0.33.54__strategy-brief__sg-send-paying-the-fact-creator-contextual-validation-not-truth-micropayments-for-correct-use.md` | Paying The Fact Creator: Contextual Validation, Not Truth | 3,382 | monetisation · trust | **The 10,000-hours story, fully worked and sourced.** Journalism named as "plausibly the larger market" | | `briefs/08/09/graphing-text/v0.33.57__arch-brief__sg-send-fact-does-not-exist-in-a-vacuum-agenda-is-context-corrections-must-propagate.md` | A Fact Does Not Exist In A Vacuum | 3,352 | provenance · graphs | **The correction-propagation argument**, five attribution roles, and the self-critique ("the graph has an agenda too") | | `briefs/02/23/part-2/v0.6.14__vision__content-trust-infrastructure-pki-signed-facts.md` | Content Trust Infrastructure — PKI-Signed Facts and Source Attribution | 1,461 | trust · identity | **The origin doc (Feb 2026).** The 60/25/10/5 split; "the correction propagates with the same force as the original claim" | | `briefs/02/23/part-4/v0.6.14__architecture__signed-creative-commons-legal-enforcement.md` | Signed Creative Commons — Legal Enforcement for PKI Provenance | 2,230 | rights | **CC-Signed.** The strongest content-rights doc; explicit target list incl. news outlets and AI training pipelines | | `briefs/06/13/vault-platform-and-commercialisation/v0.33.26__arch-brief__sg-send-agentic-content-website-provenance-decision-graph-research-publish.md` | An Agentic Content Website With Provenance | 2,346 | provenance · workflow | "Most articles do not provide evidence, they provide a link." The decision graph with ownership | | `briefs/07/04/credibility-and-feedback/v0.33.42__arch-brief__sg-send-credibility-calibration-time-learning-track-record-feedback-loop-decouple-from-power.md` | Time, Learning, and Credibility: A Calibration Feedback Loop | 1,463 | trust | Decouples the weight of a statement from the rank of the speaker | | `briefs/08/09/graphing-text/v0.33.57__arch-brief__sg-send-evidence-packs-attach-never-mutate-weight-by-independence-not-count.md` | Evidence Packs: Attach Never Mutate, Weight By Independence Not Count | 2,991 | provenance | The structural definition of an evidence pack; contradiction analysis as a commissioned pack type | | `briefs/07/31/canonical-act-build/v0.33.54__research-brief__sg-send-no-canonical-ai-act-consolidated-version-absent-article-10-probe-three-states-of-staleness.md` | No Canonical AI Act: Three States Of Staleness | 3,072 | provenance | **A ready-made news story about news.** Consolidated text dated 2024, incorporating nothing | | `briefs/02/23/part-3/v0.6.14__architecture__fractal-document-signing-pki-paragraphs.md` | Fractal Document Signing — PKI-Signed Paragraphs | 1,598 | rights · provenance | "The danger is in the amendments… because attention has dropped" | | `briefs/08/06/payments-platform/v0.33.56__research-brief__sg-send-micropayments-stablecoins-x402-hyperscalers-shipped-it-sovereignty-is-awkward.md` | Micropayments, Stablecoins, x402: The Hyperscalers Shipped It | 3,644 | monetisation | **The rail that makes per-article payment real.** All figures public and cited | | `briefs/08/09/graphing-text/v0.33.57__strategy-brief__sg-send-refactoring-meaning-decompilation-not-compilation-author-is-the-arbiter.md` | Refactoring Meaning: The Author Is The Arbiter | 3,558 | meaning | "Disagreement is the product." A disputed reading tells the author something new | | `briefs/08/09/graphing-text/v0.33.57__arch-brief__sg-send-enrichment-and-shared-anchors-research-paid-once-wikidata-is-the-concept-layer.md` | Enrichment And Shared Anchors: Research Paid For Once | 3,590 | monetisation · graphs | Per-artefact-type enrichment; Wikidata as the concept layer; research expensive to produce, near-free to read | | `briefs/04/13/v0.20.50__dev-brief__news-infographic-sonar-api.md` | News Report Tool: Evidence-Backed Infographics | 895 | workflow | 4-stage pipeline; **every claim traces to a source URL** | --- ## Tier 1 — publishable with de-scoping | Path | Title | Words | What to strip | |---|---|---|---| | `briefs/05/12/v0.27.38__strategy-brief__portuguese-newsroom-workflow.md` | Portuguese Newsroom Workflow: Agentic News Team with Evidence Vaults | 2,508 | Cyber Boardroom naming, Portugal trip specifics. **Keep** the 11 roles, the daily clock, the ≥200-entity target, "humans are the bar; agents are the volume" | | `briefs/05/17/v0.27.55__dev-brief__articles-as-vaults-publishing-workflow.md` | Articles As Vaults: Publishing Workflow With Agentic Provenance Capture | 3,223 | Light MyFeeds naming. **Keep** "every prompt and decision that produced it" | | `briefs/05/12/v0.27.38__strategy-brief__portugal-bilingual-genai-publication.md` | Portugal Bilingual GenAI Publication | 1,909 | Trip-specific and dated. Generalise to "a bilingual publication" | | `team/roles/journalist/REFERENCE__from-issues-fs.md` | The Journalist Role: Capturing the Now | 4,488 | ⚠️ **Issues-FS origin — no CC BY footer.** Same licence question as the graphs pack G8. Genuinely publishable essay material: second stories, five Ws, editorial independence | | `team/roles/journalist/ROLE.md` | Role: Journalist | 2,256 | Product-specific framing | | `briefs/06/30/partners-market-and-library/v0.33.38__strategy-brief__sg-send-riskmandate-library-librarian-agent-vault-corpus-ontology-per-article-storytelling.md` | The Risk Mandate Library | 1,666 | Risk Mandate framing. **Keep** "each article is its own world, its own ontology and taxonomy" | | `briefs/06/10/network-intelligence/v0.33.16__arch-brief__sg-send-data-source-mapping-agentic-research-workflow-provenance.md` | Mapping The Data Sources | 2,350 | **Keep** mandatory provenance on every datum, and the no-scraping posture that keeps the method replicable | | `briefs/05/30/v0.31.9__strategy-brief__sg-send-library-as-shop-front-multi-agent-content-workflow.md` | The Library As The Shop Front: Default-To-Publish | 2,439 | Product specifics | | `briefs/03/12/v0.13.30__brief__five-sentence-privacy-policy.md` | The Five-Sentence Privacy Policy | 1,582 | None — *"We do not sell attention"* is the site's own policy page | | `team/roles/journalist/site/_pages/transparency.md` | Transparency, not trust | ~500 | Product-specific, but *"privacy policies are promises, transparency panels are proof"* is reusable verbatim | --- ## Tier 2 — cite, don't republish (belongs to a sibling) The vault-publishing substrate is **sgit.ai's story**. A news site should link and spend zero words on the mechanics. `briefs/05/17/v0.27.55__arch-brief__myfeeds-website-rebuild-three-primitives.md` · `briefs/05/31/v0.31.7__arch-brief__sg-send-agent-controlled-websites-website-vault-ci.md` · `briefs/06/13/…vault-powered-websites-static-shell-read-only-vault-content.md` · `briefs/06/28/mini-sites-deployment/` (3 briefs) · `briefs/06/28/ontology-and-definitions/…grounding-ladder…md` (graphs.sgit.ai) · `briefs/08/09/graphing-text/…index-is-not-a-source…md` (graphs.sgit.ai) --- ## Tier 3 — do not publish | Path | Why | |---|---| | `briefs/05/17/v0.27.55__strategy-brief__myfeeds-b2b-research-briefings-as-evidence-packs (1).md` | **Highest-priority redaction.** Real company, full B2B price list ([redacted]), legal-entity to-do list, editorial-independence risk discussion | | `briefs/05/17/v0.27.55__strategy-brief__[redacted]-research-vault-programme (1).md` | Names a real VC and a real planned meeting | | `team/town-planner/roles/librarian/reviews/02/21/v0.5.8__addendum__[redacted]-website-review.md` | Live product internals; investor-facing | | `library/alchemist/materials/v0.5.8__*` | Business plan, revenue model, pitch decks, investor one-pager. Internal-only as a class | | `library/docs/_to_process/secure-send-strategic-opportunities.md` §16.3 | ⚠️ Source-protection vertical. **Publishing an unbuilt protection as a claim endangers a real source.** Design-labelled or omitted | | `briefs/06/11/content-proxy/` (3) · `briefs/03/10/cli-team` robots.txt findings | Operational detail | --- ## Not in this repo — retrieve before finalising `team/town-planner/roles/librarian/reviews/02/21/v0.5.8__review__cbr-investment-catalogue.md` catalogues an external CBR repo holding what looks like the **origin of the whole thread** — roughly **15,000 words** not present here: - `docs/provenance/provenance-of-trust-news.md` — ~5,500 w, "trust verification chains" - `docs/partners/monetising-trust-and-knowledge__for-news-providers.md` — ~4,500 w, "trust-as-a-service model, API architecture patterns" - `docs/strategy/personalised-news-feed-architecture.md` — ~5,000 w Note the second has a same-named published article on `docs.diniscruz.ai` (2025-02-02) — check whether the repo version is the source or a variant before treating them as one document. --- This document is released under the Creative Commons Attribution 4.0 International licence (CC BY 4.0). ============================================================================== == briefs/04__prior-art__docs-diniscruz-ai.md ============================================================================== # 04 — Prior Art: the published record on `docs.diniscruz.ai` **Ten core articles, 68,846 words, published February – October 2025.** A year before the `__Send` material, in the founder's public voice, already indexed and already circulated on LinkedIn. This is the site's strongest single asset. It means `newsroom.sgit.ai` does not launch as a manifesto — it launches as the **continuation of a two-year, dated, publicly-checkable thread**. Lead with that. Every URL below was resolved live on 21 August 2026. Machine-readable equivalents, including repo paths and git first-commit dates, are in `sources__docs-diniscruz-ai.json`. **Before republishing anything here, read `02__source-provenance-and-attribution.md`.** The contract is: original date, original link, original co-authors, honest curation label. --- ## Core articles | First published | Title | Words | Theme | Links | |---|---|---|---|---| | **2025-02-02** | [Monetising Trust and Knowledge: How News Providers can leverage Personalised Semantic Graphs](https://docs.diniscruz.ai/2025/02/02/monetising-trust-and-knowledge-for-news-providers.html) | 3,549 | monetisation · graphs | [PDF](https://files.diniscruz.ai/github/pdf/2025/02/02/monetising-trust-and-knowledge__for-news-providers.pdf) · [LinkedIn](https://www.linkedin.com/posts/diniscruz_monetising-trust-and-knowledge-news-providers-activity-7291618141539889153-b8-8) | | **2025-02-05** | [The Future of News: Building Trust Through Fact Provenance](https://docs.diniscruz.ai/2025/02/05/the-future-of-news-building-trust-through-fact-provenance.html) | 3,665 | trust · provenance | [PDF](https://files.diniscruz.ai/github/pdf/2025/02/05/the-future-of-news-building-trust-through-fact-provenance.pdf) · [LinkedIn](https://www.linkedin.com/posts/diniscruz_the-future-of-news-building-trust-through-activity-7292879121225793536-sJbl) | | **2025-03-24** | [Journalists' Challenges with Digital Content Provenance and Trust](https://docs.diniscruz.ai/2025/03/24/journalists-challenges-with-digital-content-provenance-and-trust.html) | 4,403 | trust · provenance | [PDF](https://files.diniscruz.ai/github/pdf/2025/03/24/journalists-challenges-with-digital-content-provenance-and-trust.pdf) · [LinkedIn](https://www.linkedin.com/posts/diniscruz_journalists-challenges-with-digital-content-activity-7309971769845559296-j2j4) | | **2025-04-02** | [The Future of News Monetization: Embracing Micro and Nano Payments](https://docs.diniscruz.ai/2025/04/02/the-future-of-news-monetization__embracing-micro-and-nano-payments.html) | 10,813 | monetisation | [PDF](https://files.diniscruz.ai/github/pdf/2025/04/02/the-future-of-news-monetization__embracing-micro-and-nano-payments.pdf) · [LinkedIn](https://www.linkedin.com/posts/diniscruz_the-future-of-news-monetization-activity-7313197799121039360-8PKH) | | **2025-04-21** | [Strengthening Trust in News: Implementing Identity Graphs for Authors and Sources](https://docs.diniscruz.ai/2025/04/21/strengthening-trust-in-news__implementing-identity-graphs-for-authors-and-sources.html) | 6,940 | identity · trust | [PDF](https://files.diniscruz.ai/github/pdf/2025/04/21/strengthening-trust-in-news__implementing-identity-graphs-for-authors-and-sources.pdf) · [LinkedIn](https://www.linkedin.com/posts/diniscruz_strengthening-trust-in-news-activity-7320155565526036482-Kdpt) | | **2025-05-03** | [Project InsightFlow: GenAI-Powered Transformation of Regulatory and News Feeds](https://docs.diniscruz.ai/2025/05/03/project-insightflow__genai-powered-transformation-of-regulatory-and-news-feeds.html) | 6,082 | workflow | [PDF](https://files.diniscruz.ai/github/pdf/2025/05/03/project-insightflow__genai-powered-transformation-of-regulatory-and-news-feeds.pdf) · [LinkedIn](https://www.linkedin.com/posts/diniscruz_insightflow-genai-transformation-of-regulatory-activity-7324404009560137728-LC0r) | | **2025-06-06** | [Personalised Briefing for Dan Raywood on the Future of News](https://docs.diniscruz.ai/2025/06/06/personalised-briefing-for-dan-raywood-on-the-future-of-news.html) | 4,528 | thesis · briefing | [PDF](https://files.diniscruz.ai/github/pdf/2025/06/06/personalised-briefing-for-dan-raywood-on-the-future-of-news.pdf) · [LinkedIn](https://www.linkedin.com/posts/diniscruz_personalised-briefing-for-dan-raywood-on-activity-7336773283159203842-RyBb) | | **2025-06-15** | [Personal Content Rights: Protecting Individuals in the Age of Deepfakes and AI Cloning](https://docs.diniscruz.ai/2025/06/15/personal-content-rights-protecting-individuals-in-the-age-of-deepfakes-and-ai-cloning.html) | 9,720 | rights | [PDF](https://files.diniscruz.ai/github/pdf/2025/06/15/personal-content-rights-protecting-individuals-in-the-age-of-deepfakes-and-ai-cloning.pdf) · [LinkedIn](https://www.linkedin.com/posts/diniscruz_personal-content-rights-protecting-individuals-activity-7340013978602881024-NBQM) | | **2025-07-04** | [From Free Scraping to Fair Compensation: Cloudflare’s GenAI Crawler Charges and the Future of News Monetization](https://docs.diniscruz.ai/2025/07/04/from-free-scraping-to-fair-compensation-cloudflares-genai-crawler-charges-and-the-future-of-news-monetization.html) | 5,660 | monetisation · rights | [PDF](https://files.diniscruz.ai/github/pdf/2025/07/04/from-free-scraping-to-fair-compensation-cloudflares-genai-crawler-charges-and-the-future-of-news-monetization.pdf) · [LinkedIn](https://www.linkedin.com/posts/diniscruz_from-free-scraping-to-fair-compensation-genai-activity-7346898869386981378--qiS) | | **2025-10-02** | [Time as a Calibrator of Credibility and Trust in Information Systems](https://docs.diniscruz.ai/2025/10/02/time-as-a-calibrator-of-credibility-and-trust-in-information-systems.html) | 13,486 | trust · time | [PDF](https://files.diniscruz.ai/github/pdf/2025/10/02/time-as-a-calibrator-of-credibility-and-trust-in-information-systems.pdf) · — | **Authors:** every core article credits **Dinis Cruz and ChatGPT Deep Research** except where the JSON records otherwise. Preserve the credit — see `02` §5.2. --- ## Adjacent and index pages | First published | Title | Words | Why it is here | Link | |---|---|---|---|---| | 2025-05-27 | [LETS (Load, Extract, Transform, Save): A Deterministic and Debuggable Data Pipeline Architecture](https://docs.diniscruz.ai/2025/05/27/lets__load-extract-transform-save__a-deterministic-and-debuggable-data-pipeline_architecture.html) | 9,362 | The LETS method, referenced but never defined in the __Send corpus | [source](https://docs.diniscruz.ai/2025/05/27/lets__load-extract-transform-save__a-deterministic-and-debuggable-data-pipeline_architecture.html) | | 2025-06-13 | [Technical Briefing: Web Content Filtering Project](https://docs.diniscruz.ai/2025/06/13/technical-briefing-web-content-filtering-project.html) | 10,204 | Adjacent: content filtering and transformation | [source](https://docs.diniscruz.ai/2025/06/13/technical-briefing-web-content-filtering-project.html) | | — | [The Future of news](https://docs.diniscruz.ai/research/the-future-of-news.html) | 110 | The existing hub page — the site's own prior IA for this topic | [source](https://docs.diniscruz.ai/research/the-future-of-news.html) | --- ## What each one gives the site | Article | What it carries that nothing in `__Send` does | |---|---| | **Micro and Nano Payments** (10,729 w) | The **largest single treatment of news monetisation anywhere in the corpora**, 15 months before the x402 rail existed. Pair it with the Aug 2026 rail research and the pairing itself demonstrates correction-propagation: the argument held, the mechanism arrived. | | **Time as a Calibrator of Credibility and Trust** (13,486 w) | The **longest and newest** piece — statements as evolving entities whose trustworthiness is calibrated by time and accumulated evidence. It is also the answer to a gap flagged in the graphs pack (time as a first-class dimension). | | **Personal Content Rights** (9,720 w) | Deepfakes and AI cloning. The only treatment of **individual** content rights; the `__Send` CC-Signed brief covers the licensing stick but not the personal-rights case. | | **Strengthening Trust in News: Identity Graphs** (6,940 w) | Author and source identity as a graph — the bridge page to pki.sgit.ai and nhi.sgit.ai, already written. | | **From Free Scraping to Fair Compensation** (5,660 w) | Cloudflare's crawler charges. The commercial context for the whole rights-and-payment argument, and it dates the thread against a real market event. | | **Journalists' Challenges with Digital Content Provenance** (4,403 w) | The **practitioner-facing** framing — written from the journalist's problem, not the architecture. The site badly needs one page in this register. | | **Monetising Trust and Knowledge** (3,549 w) | Personalised semantic graphs for news providers. The earliest statement of the thesis, Feb 2025. | | **Building Trust Through Fact Provenance** (3,665 w) | The origin article. ⚠️ Currently renders a literal `{{title}}` heading — fix at source before citing as canonical. | | **Project InsightFlow** (6,082 w) | Regulatory and news feeds transformation — the workflow ancestor of the newsroom briefs. | | **Personalised Briefing for Dan Raywood** (4,528 w) | The thesis explained to a named journalist. ⚠️ Names a real person; confirm consent before republishing. | --- This document is released under the Creative Commons Attribution 4.0 International licence (CC BY 4.0). ============================================================================== == briefs/05__site-architecture.md ============================================================================== # 05 — Site Architecture Page-by-page IA for `newsroom.sgit.ai`, each page mapped to its source. **Status key:** ✅ publishable near-as-is · ✏️ needs framing or de-scoping · ✍️ **write fresh** · 🔗 links out · 📎 **carries a provenance block** (see `02`) `briefs/` = `team/humans/dinis_cruz/briefs/`. --- ## Shape ``` newsroom.sgit.ai "The Future of News" ├── / the walkable chain, in one screen ├── /thesis/ the argument, five pages ├── /corrections/ why corrections must propagate ← lead with this ├── /provenance/ the editorial process as publication ├── /economics/ paying the fact creator ├── /rights/ CC-Signed and the legal stick ├── /newsroom/ operations: roles, clock, departments ├── /library/ the published record, 2025→ 📎 ├── /shipped/ what runs vs what is argued ├── /network/ boundaries with the four siblings ├── /documents/ raw markdown, source of truth ├── /about/participant.html ├── /admin/{comms,versions,index} └── /llms.txt + /llms-full.txt ``` --- ## `/` — the front page | Element | Content | Source | Status | |---|---|---|---| | The claim | *"Most articles do not provide evidence, they provide a link, the link is never followed, and it could go to a site that no longer exists."* | `briefs/06/13/…provenance-decision-graph-research-publish.md` | ✅ | | The story | **The 10,000-hours case.** No technical background required; lands the whole thesis in 200 words | `briefs/07/31/…paying-the-fact-creator…md` | ✏️ | | The turn | *"In a document, a correction is a new document. Nothing that cited the original knows."* | `briefs/08/09/…fact-does-not-exist-in-a-vacuum…md` | ✅ | | The proof strip | 242 papers · 220,000 citation paths · £8.40 per story · 200ms settlement · 10 articles since Feb 2025 | `01` §3 | ✅ | | Honesty line | *"Nothing here is running yet. The articles are real and dated; the newsroom is a design."* | — | ✍️ | --- ## `/corrections/` — build this first The most distinctive argument in the corpus and the one nobody else is making. Everything else on the site is downstream of it. | Page | Content | Source | Status | |---|---|---|---| | `/corrections/the-claim-that-would-not-die/` | The 10,000-hours case in full: average not threshold, half the group short of it, ~3,000 vs >20,000 hours, and *"none of it attached to the claim"* | `briefs/07/31/…paying-the-fact-creator…md` | ✅ | | `/corrections/242-papers/` | The citation network: 675 citations, >220,000 supporting paths, back to nothing. Citation bias · amplification · invention · diversion | same + `briefs/08/09/…evidence-packs-attach-never-mutate…md` | ✅ | | `/corrections/how-a-graph-answers-it/` | Supersede-never-delete; citation edges typed by faithfulness; *"how much of what I believe rests on claims that have since been corrected?"* | `briefs/08/09/…fact-does-not-exist-in-a-vacuum…md` | ✅ | | `/corrections/agenda-is-context/` | Agenda as disclosure, not dismissal — **including the self-critique**: *"the same tool that helps a reader discount a vendor's study helps them discount a regulator's finding"* and *"the graph has an agenda too"* | same | ✅ **publish the self-critique** | | `/corrections/staleness-in-the-wild/` | The AI Act: consolidated text dated 12 July 2024 incorporating nothing; three states of staleness; one source carrying a draft that *"never was the law"* | `briefs/07/31/canonical-act-build/…no-canonical-ai-act…md` | ✅ | --- ## `/provenance/` — the editorial process as publication | Page | Content | Source | Status | |---|---|---|---| | `/provenance/show-your-work/` | *"A newsroom that shows its work earns trust that a black-box newsroom cannot."* 15 departments, each with a public page | `briefs/05/12/…newsroom-layout-visible-editorial-process.md` | ✅ | | `/provenance/a-worked-story/` | The **£8.40 / 6h 23m** page, fully itemised, 12 sources, 3 reader contributions | same | ✅ **the single most persuasive page available** | | `/provenance/the-decision-graph/` | *"A decision should never be a yes or no."* Named ownership per step; the 100%-LLM → 100%-human spectrum; *"no point having humans in the loop who just approve without context"* | `briefs/06/13/…provenance-decision-graph-research-publish.md` | ✅ | | `/provenance/articles-as-vaults/` | Each article a vault: text + evidence + graph + sources + translations + **every prompt and decision** | `briefs/05/17/v0.27.55__dev-brief__articles-as-vaults-publishing-workflow.md` | ✏️ light MyFeeds de-naming | | `/provenance/the-citation-chain/` | PKI-signed claims researcher → journalist → outlet → social; evidence-weight scoring worked HIGH vs LOW | `briefs/02/23/part-2/…content-trust-infrastructure-pki-signed-facts.md` | ✅ | --- ## `/thesis/` | Page | Content | Source | Status | |---|---|---|---| | `/thesis/story-not-article/` | The story is a graph; article, infographic, translation, per-sector briefing are projections | `briefs/05/12/…ai-powered-news-organisation-principles.md` | ✅ | | `/thesis/sell-the-graph/` | *"Sell the graph, not the paragraph."* And *"semantic knowledge graphs that they still own."* | `briefs/07/05/…evidence-packs-as-a-service…md` | ✅ | | `/thesis/evidence-not-truth/` | *"The system doesn't decide what's TRUE — it measures what's EVIDENCED."* | `briefs/02/23/part-2/…content-trust-infrastructure…md` | ✅ | | `/thesis/the-author-is-the-oracle/` | Decompilation not compilation; *"disagreement is the product"*; a disputed reading tells the author something new | `briefs/08/09/…decompilation-not-compilation…md` | ✏️ | | `/thesis/independence-not-count/` | *"More evidence does not mean more confidence unless the evidence is independent."* | `briefs/08/09/…evidence-packs-attach-never-mutate…md` | ✅ | --- ## `/economics/` | Page | Content | Source | Status | |---|---|---|---| | `/economics/paying-the-fact-creator/` | The 60/25/10/5 split; *"the rewards… need to trickle down to the people who actually did the original analysis"* | `briefs/02/23/part-2/…` + `briefs/07/31/…paying-the-fact-creator…md` | ✅ | | `/economics/contextual-validation/` | Not *is this true* but ***is this use of it sound***, cached per claim-and-context pair. *"Arguably the larger market."* | `briefs/07/31/…paying-the-fact-creator…md` | ✅ | | `/economics/trust-as-a-service/` | The **fact-certifier** as a payable, warranted role; two prices; *"trade on facts and evidence rather than attention"* | `briefs/07/05/…force-of-proof…md` | ✅ | | `/economics/credibility-over-time/` | Track record decouples weight from rank — *"the quiet person who is usually right is heard"* | `briefs/07/04/…credibility-calibration…md` | ✅ | | `/economics/rails/` | x402, 200ms, zero protocol fees, Cloudflare's gateway — **and the £1→59p wall** | `briefs/08/06/payments-platform/…x402…md` | ✅ | | `/economics/micro-and-nano-payments/` | The 2025 argument, republished | 📎 [docs.diniscruz.ai 2025-04-02](https://docs.diniscruz.ai/2025/04/02/the-future-of-news-monetization__embracing-micro-and-nano-payments.html) | 📎 ✅ | **Pair the last two deliberately.** The 2025 argument plus the 2026 rail is the site demonstrating its own thesis: the argument held, the mechanism arrived, and the original is unedited at its original URL. --- ## `/rights/` | Page | Content | Source | Status | |---|---|---|---| | `/rights/cc-signed/` | The signed licence family; break the chain, break the licence; the named target list | `briefs/02/23/part-4/…signed-creative-commons-legal-enforcement.md` | ✅ | | `/rights/the-danger-is-in-the-amendments/` | Per-paragraph signing; *"that's where problems hide — because attention has dropped"* | `briefs/02/23/part-3/…fractal-document-signing-pki-paragraphs.md` | ✅ | | `/rights/scraping-and-compensation/` | Cloudflare's crawler charges | 📎 [2025-07-04](https://docs.diniscruz.ai/2025/07/04/from-free-scraping-to-fair-compensation-cloudflares-genai-crawler-charges-and-the-future-of-news-monetization.html) | 📎 ✅ | | `/rights/personal-content-rights/` | Deepfakes and AI cloning — the only treatment of **individual** rights | 📎 [2025-06-15](https://docs.diniscruz.ai/2025/06/15/personal-content-rights-protecting-individuals-in-the-age-of-deepfakes-and-ai-cloning.html) | 📎 ✅ | --- ## `/newsroom/` — the "future directions" half of the name | Page | Content | Source | Status | |---|---|---|---| | `/newsroom/principles/` | Eight design principles; **"not an effort to replace journalists with agents. The opposite."** | `briefs/05/12/…ai-powered-news-organisation-principles.md` | ✅ | | `/newsroom/the-roles/` | 11 agent roles mapped to newsroom functions; *"humans are the bar; agents are the volume"* | `briefs/05/12/…portuguese-newsroom-workflow.md` | ✏️ de-scope Portugal/CBR | | `/newsroom/the-daily-clock/` | 06:00 scans → 12:00 publish + fan-out → 14:00+ community; three-phase launch with go/no-go gates | same | ✏️ | | `/newsroom/departments/` | 15 departments as vault folders, each with a public page and a corrections desk | `briefs/05/12/…newsroom-layout…md` | ✅ | | `/newsroom/the-craft/` | Inverted pyramid, five Ws, source attribution, editorial independence, **second stories** (Three Mile Island, Equifax) | `team/roles/journalist/REFERENCE__from-issues-fs.md` | ✏️ licence check — Issues-FS origin | --- ## `/library/` — the published record 📎 **Build this early.** It is the evidence that this is a two-year thread, not a launch. Ten core articles, 68,846 words, Feb 2025 – Oct 2025. Full table with verified URLs, dates, authors, PDFs and LinkedIn posts in `04__prior-art__docs-diniscruz-ai.md`; machine-readable in `sources__docs-diniscruz-ai.json`. **Every page here carries the provenance block from `02` §1 and the visible rendering from `02` §2.** Sort by `first_published` ascending — the chronology *is* the argument. Show the date prominently; a reader who sees "2 April 2025" on the micropayments piece understands the thread differently from one who does not. --- ## `/shipped/` — non-negotiable The entire evidence-economy cluster is marked **PROPOSED — does not exist yet** in `team/roles/librarian/reality/` (P-428/429/430, P-817/818/819). - **Runs:** the vault substrate (cite sgit.ai, do not re-explain) · the ten published articles · MyFeeds as a live pipeline (ideas only — no pricing, no clients) - **Designed only:** every newsroom brief, every evidence-pack brief, Trust-as-a-Service, author micropayments, CC-Signed - ⚠️ **Never publish as a claim:** the SecureDrop-style source-protection vertical (`library/docs/_to_process/secure-send-strategic-opportunities.md` §16.3). Design-labelled or omitted — a source who believes an unbuilt protection is real is a safety problem. --- ## `/network/` | Bridge | The connection | |---|---| | **graphs.sgit.ai** | The news ontology is an instance of the grounding ladder. News owns **correction propagation** and **citation edges typed by faithfulness** | | **pki.sgit.ai** | Signed claims and the citation chain. News owns CC-Signed — a rights argument PKI would not carry | | **nhi.sgit.ai** | *Who is the actor* vs **whose agenda, whose funding, who is citing** — the five attribution roles | | **sg-sentinel.sgit.ai** | Sentinel scores infrastructure; news scores **sources and authors**. Shared principle: reputation is context, not verdict | | **sgit.ai** | How it is published. Cite; spend zero words on S3/CloudFront | | **docs.diniscruz.ai** | 📎 The prior art. **Link forward from the source, never redirect it** — see `02` §3 | --- This document is released under the Creative Commons Attribution 4.0 International licence (CC BY 4.0). ============================================================================== == briefs/06__boundaries-and-house-style.md ============================================================================== # 06 — Boundaries, Redaction and House Style --- ## 1. Boundaries against the five siblings The largest risk to this site is not scarcity — it is **duplication**. Map by subject, because `__Send` @ v0.33.62 predates most of the subdomain build-out (the only `*.sgit.ai` hostnames appearing in the whole repo are `hub.sgit.ai`, `pki.sgit.ai` once, and `star.sgit.ai`). | Sibling | What newsroom would duplicate | Where the boundary sits | |---|---|---| | **sgit.ai** | The entire delivery substrate: articles-as-vaults, mini-site deployment, static vault projections, vault CI. ~6 briefs | **Cite, don't re-explain.** Zero words on S3/CloudFront/loaders. And inherit its known problem: client-side-assembled vault pages are invisible to crawlers — existential for a news site | | **pki.sgit.ai** | PKI-signed claims, key registries, chain of trust, the identity spectrum | Newsroom owns the **application** of PKI to *claims and citations* — the source-attribution chain, and **CC-Signed**, a rights argument PKI would not naturally carry | | **nhi.sgit.ai** | Agent trust scores, web of trust, NHI 2.0 identity graphs | Newsroom borrows *who is the actor* but owns **whose agenda, whose funding, who is citing** — the five attribution roles. An editorial model, not an identity model | | **graphs.sgit.ai** | The grounding ladder, node-type formulas, graphs-of-graphs, Wikidata anchoring, decompilation, assertion-vs-pointer | Newsroom owns the **news ontology** — stories, claims, sources, authors — plus the two things graphs would state generically and news must state urgently: **correction propagation** and **citation edges typed by faithfulness** | | **sg-sentinel.sgit.ai** | Source reputability scoring | Sentinel scores infrastructure; newsroom scores **sources and authors**. One cross-link on the shared principle: reputation is context, not verdict | ### The Risk Mandate inversion — the most important boundary `briefs/07/05/evidence-economy/` (all three), `briefs/07/04` credibility-calibration, `briefs/06/30` riskmandate-library and `briefs/07/31` paying-the-fact-creator were **written for Risk Mandate**, framing news as the evidence supply for risk graphs. **Invert it.** Risk Mandate is *one customer* of the future-of-news stack, not its parent. The material is genuinely dual-use — but published under Risk Mandate it reads as a compliance feature; published here it reads as a thesis about journalism. Strip the risk-register framing from every republished evidence-economy brief and let the news argument stand on its own. Add a `/network/riskmandate/` page that says, honestly, "this is what the same machinery looks like pointed at corporate risk." --- ## 2. Redaction watch-list Run these before any bulk publication. | Item | Reach | Action | |---|---|---| | **MyFeeds.ai** | **212 mentions across 52 files.** The `05/17` briefs carry the strategic repositioning, the **full B2B price list ([redacted])**, the legal-entity and contracting to-do list, the dual-track editorial-independence discussion, and the `[redacted]` review | **Highest priority.** Ideas yes; pricing, clients and entity detail no | | **[a named VC — redacted, see PUBLIC.md]** | Named Porto-based VC with a planned meeting and a private collaboration vault | **Do not publish** | | **The Cyber Boardroom / CBR** | Named in the Portuguese newsroom brief and the town-planner reviews | De-name in `/newsroom/` pages | | **Dan Raywood** | Named journalist, subject of a personalised briefing (2025-06-06) | **Already published** on docs.diniscruz.ai — but confirm consent before featuring it on a new site | | **Named provider / clinical topic** | `06/11/doctor-patient-workflow` and `06/13` reference a provider's clinical-guidance site as first customer; `06/13` flags health-content safety risk | **Do not name** | | **Placeholders "Dr. X, Prof. Y", "User A/B"** | `05/12` newsroom-layout, `02/17` stakeholder-communication | Already anonymised — the pattern signals real names sat behind them. Leave anonymised | | **Palantir Foundry OSMM assessment** | `briefs/07/24/sovereignty-and-osmm/…palantir-foundry-scrydon-level-1…` | Named public assessment of a third party — legal sign-off if republished | | **Family reference** | `briefs/02/23/part-3` email-and-messaging brief uses "my daughter" | Strip | | **Exposed-vault-key runbook** | `08/14` topic-sections brief links sgit.ai's runbook including the case study of when it happened to that site | Linking re-surfaces the incident. Deliberate choice, not an accident | | **AWS account `[redacted]`** | 49 occurrences / 17 files (infra docs) | Scrub on any bulk docs-tree publication | **Safe with citations:** Malcolm Gladwell and Anders Ericsson (public figures in published, cited work — note Ericsson is deceased and the brief characterises his career; keep the sources attached) · Replit's production-database deletion · Microsoft/EchoLeak (CVE-2025-32711) · Gartner, Forrester, Bloomberg, Cloudflare, AWS, Stripe, Coinbase as benchmarks. --- ## 3. House style, inherited Full treatment in the graphs pack `06__house-style-and-conventions.md`. The essentials: **Structure:** `/llms.txt` at root · `/documents/` with raw markdown as source of truth and rendered reader pages · `/about/participant.html` · `/admin/comms.html` with numbered asks (N1, N2…) and tasks (T1, T2…) in explicit states · `/admin/versions.html` · a build order published unresolved with open questions and honest tensions. **Voice:** short declarative sentences making checkable claims · publish the argument before the implementation and say which is which · name what you got wrong · open questions stay open and numbered · no marketing adjectives. **`llms.txt` is the whole surface.** Measured on sgit.ai: the index fetch worked and was *"better than almost anything comparable"*, then link-following failed because agent fetch tools refuse URLs a search has not returned. Each entry must carry the page's **single most important fact**, not just its topic. Publish `/llms-full.txt` as a single-file concatenation. **Decide rendering before content.** A client-side-decrypted vault site is invisible to crawlers. For a *news* site this is existential — not a nice-to-have. **Every section serves three readers:** documentation · live demonstration · **agent guidance** (the one most sites omit). For this site the agent block matters commercially, not just editorially: the evidence-packs thesis is that an agent buys facts by API. The site should be the first worked example of its own product. **Vault rules:** publish read keys, never write keys · escrow the write key before publishing · audit before publish and adopt the `PUBLIC.md` transparency convention · no metered capability behind a published read key. **Licence:** CC BY 4.0, per the 21 August 2026 decision. Source material from `docs.diniscruz.ai` is CC0 — state the source licence per page; see `02` §5.1. --- ## 4. Two demonstrations to build in from day one The site's credibility rests on practising what it argues. Two are cheap and available immediately: 1. **A corrections log that propagates.** When a page is revised, do not overwrite — attach, date, and link to what it supersedes, then show what else cited the superseded claim. That is theme 3 running on the site itself. 2. **A provenance block on every derived page.** Original date, original link, original co-authors, honest curation label — `02` §1. A future-of-news site that loses its own chain has refuted itself on page one. --- This document is released under the Creative Commons Attribution 4.0 International licence (CC BY 4.0). ============================================================================== == briefs/07__gaps-and-open-questions.md ============================================================================== # 07 — Gaps and Open Questions --- ## Must be retrieved **N1 · ~15,000 words of origin material sit in an external CBR repo.** Three documents catalogued in `team/town-planner/roles/librarian/reviews/02/21/v0.5.8__review__cbr-investment-catalogue.md` and not present in `__Send`: `provenance-of-trust-news.md`, `monetising-trust-and-knowledge__for-news-providers.md`, `personalised-news-feed-architecture.md`. These look like where the thread began. **Retrieve before finalising the site outline** — the `/library/` chronology may start earlier than February 2025. **N2 · Back-fill the 83 PDFs into git.** They serve fine from S3 but exist in no repo. See `02` §4. A site arguing for durable provenance should not have its own evidence chain terminate in one mutable bucket. --- ## Must be written fresh **N3 · The front page.** No document in either corpus opens this argument for a cold reader. The pieces exist — the broken link, the 10,000-hours story, the correction that reaches nothing — but nobody has assembled them into 300 words. **N4 · `/shipped/`.** Nothing in the newsroom stack runs; the reality tree marks the entire evidence-economy cluster PROPOSED. Without this page the site over-claims and breaks the convention that makes the siblings credible. **N5 · The practitioner page.** Almost everything is written from the architecture inward. The one exception is *Journalists' Challenges with Digital Content Provenance and Trust* (2025-03-24), written from the journalist's problem outward. **The site needs more in that register and currently has one.** **N6 · The metering mechanism.** Theme 4 is well argued and mechanically unspecified. How is a read of a cited source detected, attributed, priced and settled? x402 supplies the rail; nothing supplies the meter. State it as an open question rather than implying it is solved. --- ## Open questions worth publishing unresolved Following the pki.sgit.ai convention of numbering open questions in public. | # | Question | Where the corpus gets closest | |---|---|---| | **Q1** | Who pays for contextual validation, and what stops it becoming a toll on inconvenient facts? | *"In companies that's okay… but in the real world at the moment we don't have that."* The commons has no maintenance budget | | **Q2** | What is the unit that gets paid — the claim, the paragraph, the evidence pack, or the graph? | Named as "facts, trust, and evidence packs" but never resolved to one billable unit | | **Q3** | Who decides an edge is `contradicts` rather than `partially supports`? | Typed citation edges are proposed; the adjudication is not | | **Q4** | Does agenda-tagging survive contact with a motivated reader? | The corpus asks this of itself: *"the same tool that helps a reader discount a vendor's study helps them discount a regulator's finding."* **Publish the question with the self-critique attached** | | **Q5** | What happens when the author refuses to be the oracle, or is dead? | The Ericsson case is exactly this and the corpus does not resolve it | | **Q6** | Can a newsroom that publishes its costs survive competitors that do not? | The £8.40 page is a transparency asset and a commercial exposure. Unaddressed | | **Q7** | Is CC-Signed enforceable in any jurisdiction, or is it a norm dressed as a licence? | The brief asserts the stick; no legal review exists | --- ## Honest tensions Following pki.sgit.ai's `/roadmap/#tensions`. 1. **Provenance is the product — and provenance is expensive.** The £8.40 story cost is the argument *and* the objection. A wire story costs less. 2. **Corrections propagating is a feature until it is a liability.** A graph that can answer *what rests on claims since corrected* can also be subpoenaed for it. 3. **"More humans, not fewer" is a design principle, not an economic result.** The corpus asserts agents make more human roles affordable. Nothing tests it. 4. **Selling trust makes the seller a target.** A fact-certifier with warranted output has created a liability surface the corpus notes but does not size. 5. **The site inherits sgit.ai's crawler-invisibility problem.** A client-side-assembled vault site is hard to index — measured, documented, unsolved. **For a news site that is existential.** Decide rendering before content. 6. **Two licences over one thread.** `docs.diniscruz.ai` is CC0; `*.sgit.ai` is CC BY 4.0. A site about attribution should resolve that deliberately — `02` §5.1. --- This document is released under the Creative Commons Attribution 4.0 International licence (CC BY 4.0). ============================================================================== == briefs/09__risk-and-governance-newsroom.md ============================================================================== # 09 — The Risk & Governance Newsroom **Kind:** Commissioning brief — a publication to build, not a description of what this site already is **Pack:** `newsroom.sgit.ai` brief pack **v1.1 addendum** · 25 August 2026 **Type:** Strategy + dev brief **To:** Strategy, @Content, @Dev, Librarian, Ontologist **Target:** a daily risk-and-governance publication, assembled from the `*.sgit.ai` network, whose commercial destination is **RiskMandate.ai** **Sources.** `newsroom.sgit.ai` v0.2.4 · `graphs.sgit.ai` v0.4.27 · `risks.sgit.ai` v0.1.0 · `pki.sgit.ai` v0.1.26 · `sgit.ai` (vault layer) · `riskmandate.ai` · `the-cyber-boardroom/SGraph-AI__App__Send` @ v0.33.62, principally the 23 June persona brief, the 26 June vision capstone and the 30 June library brief. > ⚠️ **Every figure below attributed to a sibling site is as that site's own agent surface stated it on 25 August 2026.** Per this site's own standing rule, a fact about a sibling must be re-checked against that site's repository before it is repeated. Re-verify at build time; do not inherit these numbers from this document. --- ## 0. The one-paragraph brief Build a daily publication that covers **risk, governance and accountability in autonomous systems** — the regulation, the enforcement, the guidance, the named people who sign. It is a news operation, not a content-marketing channel: it runs on this site's editorial model (story-as-graph, article-as-projection, corrections propagate, provenance is the product), it is produced by an agentic newsroom with humans as the bar, and every claim it publishes is anchored, signed, dated and expiring. Its structural advantage over any other publication on this beat is that **the graph it would need already exists** — 1,523 nodes of parsed regulation, three worked risk graphs and a 42-concept published ontology, built by sibling sites before the publication has written a word. Its commercial function is not to advertise RiskMandate.ai but to be the thing RiskMandate.ai cannot compute without: **a supply of grounded, signed, public Facts about the regulatory world**, to which a customer attaches their own private systems. The publication sells the graph; the product sells the join. **The inversion is held.** This site's `06__boundaries-and-house-style.md` §1 states that risk management is *one customer* of the future-of-news stack, not its parent. This brief is the reciprocal statement the network page promises — *this is what the same machinery looks like pointed at corporate risk* — and it is written that way round. A news operation whose first customer is a risk product. Not a risk product with a blog. --- ## 1. Why this beat: the graph is already built The [Portugal instance](../mvps/portugal.html) established the scoping criterion for a publication MVP, and it is the right one: > The Portuguese GenAI scene is **small enough to map comprehensively and large enough to be interesting.** Portugal's acceptance criteria required an entity graph of **≥200 entities** seeded before the publication could report competently on its beat. That graph was never built and the publication never launched. **That is the precedent this brief has to beat, and the reason to think it can is that the equivalent graph for this beat is already public.** | Asset | State | Owner | |---|---|---| | **EU AI Act regulation graph** — 1,523 nodes · 1,944 edges, parsed from official Formex XML, SHA-256 verification at every provenance point, RDF/Turtle export, 11 fractal views | Published, live | graphs.sgit.ai | | **Two-factor authentication risk graph** — 51 nodes · 53 edges, 24 node classes, 34 edge types, MITRE T1110.004 | Published, live | graphs / risks | | **Agentic browser isolation risk graph** — 59 nodes · 75 edges, five altitudes, **three risks created by the mitigation itself** | Published, live | graphs / risks | | **Article 26(5) case study** — 8 facts, 5 risks, 9 questions of which **5 unanswered**; finds 30 days retention against a six-month minimum | Published, live | risks.sgit.ai | | **The risk ontology** — 42 concepts, stable anchors, machine-readable at `/data/concepts.json` | Published, v0.1.0 | risks.sgit.ai | | **Published vaults** — 4 vaults, 468 files, 111 commits, read keys public | Published | risks / sgit.ai | **Portugal needed 200 entities before day one and never got them. This publication starts at 1,523 with a published ontology and four readable vaults.** The beat also passes the closability test on its own terms: the corpus of binding text on autonomous-systems governance is finite, the regulators are countable, and the enforcement record is short enough to map exhaustively and long enough to be worth mapping. There is a second reason for the timing, and it is the better story. This site already publishes [a worked example of the beat's central failure](../corrections/staleness-in-the-wild.html): Regulation (EU) 2026/1744 was adopted 8 July 2026 and entered into force 27 July 2026, and **its official consolidated text is dated 12 July 2024 and incorporates nothing since.** A reader following the official source is reading a document that predates entry into force by over a year. The publication's founding beat is a domain where the primary sources are demonstrably, checkably stale — which is the condition under which a graph-backed publication is not a nicety but the only thing that works. --- ## 2. What each property supplies The publication is an assembly, not an invention. Each row is a capability that already has an owner, a published specification and a boundary. | Property | What it supplies to this publication | |---|---| | **newsroom.sgit.ai** | The editorial model. The story is a graph; the article is a projection. Corrections must propagate. Provenance is the product — 15 public departments, 8 scoped for a first MVP. The per-story cost ledger (£8.40, 6h 23m). The 60/25/10/5 upstream split. The provenance contract of `02__source-provenance-and-attribution.md` and its enforcing gate. | | **graphs.sgit.ai** | The fractal semantic graph machinery. **One grammar, one validator, one provenance rule at every altitude** — zoom into any node and the same rules apply. Node-type formulas, so classification is a queryable, arguable formula rather than a classifier's opinion. The grounding ladder. Supersede-never-delete. The Universe layer's **byte-offset anchoring against frozen source bytes**. The EU AI Act graph itself. | | **risks.sgit.ai** | The risk ontology and the editorial spine. **No deny button.** The interval ladder (1h / 4h / 1–2d / 1–2w / 1m / 6m). Acceptance as underwriting by a named person. Accepted ≠ acceptable. **Absence as fact** — missing evidence is countable and assignable. Blast radius and recoverability. | | **pki.sgit.ai** | Signed claims. **Identity and mandate as two separate signed statements.** The four registry rules. Revocation as a signed append rather than a deletion. Shipped keys in sgit v0.16.0+ (RSA-OAEP 4096, ECDSA P-256). | | **sgit vault** | The substrate. Zero-knowledge, client-side encryption, keys held by the endpoints. A vault per story. Commit DAG with SHA-256 object IDs. **Typed `.link.json` cross-vault edges** — the mechanism §5.3 depends on entirely. Read keys published, write keys never. | | **MyFeeds** | The projection layer, already proven as a running pipeline. One story, many audience projections; per-reader briefings; the B2B research briefing as a delivered evidence pack. | | **RiskMandate.ai** | The customer, the commercial destination, and the persona cast the projections are cut against. | --- ## 3. The architectural claim: who owns which rung This is the load-bearing section. Everything commercial in this brief follows from it. `risks.sgit.ai` publishes the grounding ladder as concept C6: > **Reality → Twin → Measure → Evidence → Fact → Vulnerability → Risk.** Downward paths ground; upward paths classify. and defines node types as path formulas rather than descriptions (C7), the canonical example being: > `Vulnerability := a Fact that also has an upward gives_rise_to path to a Risk` Read that formula commercially and the division of labour falls out of it: | Rung | Owner | Why | |---|---|---| | **Reality · Twin · Measure** | **The customer.** Their systems, their agents, their configuration, their people. | Private by necessity. Zero-knowledge vault; the customer holds the keys. Nobody else can supply it and nobody else should hold it. | | **Evidence · Fact** | **The publication.** What the regulation says, what changed, what a regulator did, what is unanswered. | Public by nature. This is journalism. It is the same work for every reader, so it should be done once, in the open, and paid for upstream. | | **Vulnerability · Risk** | **RiskMandate.ai**, computed at the join. | By the published formula a Vulnerability *is* a Fact with an upward path to a Risk — and that path only comes into existence when a public Fact meets a private Twin. It cannot be computed from either side alone. | **That is why the publication is commercially load-bearing rather than promotional.** The product cannot compute a Vulnerability without a supply of grounded public Facts. Today that supply is a human reading a PDF. The publication is the proposal to make it a signed, dated, machine-readable graph. It is also the reciprocal of a boundary the sibling already publishes: `risks.sgit.ai` explicitly does not own `newsroom.sgit.ai`, and names its relationship to it in two words — **evidence supply**. This brief is that phrase taken seriously enough to staff. --- ## 4. The story is a risk graph The Portugal instance gave every story its own vault holding sources, evidence, drafts, graph and projections. Two folders in that layout — `evidence/disputed.json` and `evidence/contradictions.md` — existed so that disagreement between sources was *stored rather than resolved away*. This publication keeps that layout and makes one change with large consequences: **the story's graph is built to the published risk ontology, at the same altitudes, with the same node-type formulas.** ``` story-{date}-{slug}/ ├── brief.md what this story is, why it matters ├── sources/ │ ├── frozen/ source bytes, hashed, never edited │ └── coverage/ how others reported it ├── anchors/ │ └── anchors.json every quoted provision → byte offset in sources/frozen/ ├── graph/ │ ├── facts.json Fact and Evidence nodes — the publication's own rungs │ ├── absence.json enumerated unanswered questions, each assignable │ ├── formulas.json the node-type formulas this story classifies under │ └── supersedes.json what this story's facts replace, and what cited them ├── assessment/ │ ├── claim.md the assessment, if the story makes one │ ├── mandate.jws the signed mandate the by-line asserts under │ └── interval.json accepted-until, and by whom, by name ├── projections/ per-persona renderings (see §8) └── _page.json ``` A news story about a regulatory change and a risk-register entry are, under this layout, **the same object type at different altitudes**. That is the fractal claim from `graphs.sgit.ai` — *one grammar, one validator, one provenance rule at every altitude* — applied to the boundary between a publication and its readers' registers. It is what makes §5.3 possible at all. One discipline is inherited without modification, from the RiskMandate vision capstone, and it is the thing that keeps this from becoming threat-modelling with a masthead: > Everything must be real. Phase one admits **facts only**. No speculative risk, no scored scenario, no "could conceivably". A publication that inherits the register's anti-speculation rule is a publication that cannot inflate its own beat — see §10, where this is the mitigation that has to do the real work. --- ## 5. Four formats nobody else publishes The case for the publication is not that it covers this beat better. It is that four editorial products fall out of the stack that a conventional outlet structurally cannot produce. ### 5.1 The absence report `risks.sgit.ai` concept C17 makes missing evidence a first-class node: **absence is a fact — countable, assignable, and productive.** The Article 26(5) case study is the worked example, and its finding is the format's whole argument: nine questions asked, five unanswered, and **the unanswered five are the exercise's actual output.** No newsroom publishes this. An article that ends "the regulator did not respond to questions" is a failure state; an **absence report** is a deliverable — an enumerated, dated, individually-assignable list of what a regulation does not determine, published as nodes rather than as a closing paragraph. It is also the cheapest format to produce, the hardest to fabricate, and the one that converts best: an unanswered question is an unpriceable risk, and an unpriceable risk is a standing reason to hold a tool that tracks it. ### 5.2 The staleness wire `graphs.sgit.ai` anchors nodes to verbatim quotes at byte offsets in frozen source documents, and **fails the build if the quotes no longer match the frozen source bytes.** Point that mechanism at live regulatory sources and it stops being a build gate and becomes a wire service. The publication anchors every provision it quotes to a byte offset in a hashed copy. When the upstream source changes, the anchor breaks. **The broken anchor is the story** — and it fires without a human noticing, without a press release, and without the publisher of the changed text choosing to announce it. This site already publishes [the three states of staleness](../corrections/staleness-in-the-wild.html): *current and correct*, *stale but was once true*, and **never was the law** — a pre-adoption negotiating draft presented without the caveat that it never had legal force, which the site notes is "worse than stale because it never was the law", and which at least one public source in circulation currently is. Those three states become a machine-assignable label carried by every source the publication cites, and the Article 10 probe becomes a repeatable test rather than a one-off observation. ### 5.3 The correction that reaches the register This is the feature no GRC platform has, and it is a direct consequence of this site's founding argument rather than an add-on to it. The vault layer supports **typed `.link.json` cross-vault edges**. A customer's private register can therefore hold a typed edge into a public Fact node in the publication's vault. When the publication supersedes that Fact — never deleting, always superseding, per the graph rule — every register holding an edge into it **knows**. > In a document, a correction is a new document. Nothing that cited the original knows. That sentence is why this site exists. Pointed at corporate risk it reads: *a regulatory change stops being an email somebody has to notice and becomes an invalidated edge that announces itself.* The [242-paper citation network](../corrections/242-papers.html) is the measured version of the failure this avoids — one belief, 675 citations, more than 220,000 supporting citation paths, tracing back to nothing, with no mechanism by which the correction could ever have reached them. ### 5.4 The assessment that expires The interval ladder is a publishing mechanic as much as a governance one. Every assessment the publication makes carries an **interval and a named underwriter**: accepted for an hour, four hours, two days, two weeks, a month, six months — chosen by volatility and consequence, not by convenience. At expiry the assessment returns for re-underwriting or is marked lapsed in place. **A publication whose articles expire on a schedule, and say so on their face.** Set that against the story this site opens with: a 1993 finding, popularised as something it never said, which the original researcher spent his career correcting, and *none of it ever attached to the claim*. The interval ladder is the mechanism that makes that specific failure structurally impossible — not because someone remembers to revisit, but because the claim stops being current on a date it named in advance. --- ## 6. The by-line is a signed mandate The [Portugal instance](../mvps/portugal.html#open) left six questions open. Question 5 is the one this site has said it should be least comfortable about: > **Editorial accountability** — who is the editor of record, and who carries legal responsibility for published content. *No candidate is named.* This stack answers the editorial half of it, and the answer is not a masthead. `pki.sgit.ai` separates two signed statements that are usually conflated: **identity** ("this key belongs to this agent") and **mandate** ("this agent may perform X actions until date Y, on whose authority"). Combine that with underwriting-by-interval and a by-line becomes a compound, checkable object: | Component | Statement | Signed by | |---|---|---| | **Identity** | This key belongs to this analyst or this agent | The holder | | **Mandate** | This holder may assert claims of this class, until this date, on this authority | The publication | | **Underwriting** | This assessment is accepted by this named person until this date | The underwriter | **The editor of record is whoever's signature is on the current interval.** Not a title held permanently, but a dated act that expires and must be repeated. Revocation is a signed append rather than a deletion, so the record of who stood behind a claim survives their ceasing to stand behind it — which is exactly what a reader auditing an old story needs and never gets. **What this does not answer, stated plainly.** `pki.sgit.ai` is explicit that a signed mandate constrains *authorisation, not execution*, and that a registry cannot verify a key remains in its holder's sole possession — that needs attestation, which "neither keys nor vaults supply". The shipped PKI in sgit v0.16.0+ documents itself as having **no revocation and no directory**; the registry is a static-file MVP. And none of this touches the legal half of Portugal's question 5: **who is answerable in a jurisdiction for a defamatory or negligent publication.** A signature is evidence of who asserted something. It is not a legal person, and it is not a defence. That half stays open — see §14, Q1. --- ## 7. The newsroom Eleven roles, adapted from the Portugal design. Three are new and specific to this beat. | Role | Function | New? | |---|---|---| | **Conductor** | Sets the day's priorities, allocates stories | | | **Researcher** | Continuous monitoring of named regulators, registers, enforcement feeds | | | **Anchor keeper** | Maintains frozen sources and byte-offset anchors; owns the staleness wire (§5.2) | **New** | | **Verifier** | Cross-references, flags uncertainty, builds the Evidence set alongside the draft | | | **Ontologist** | Owns the story's own ontology and its bridges to the shared one | | | **Formula keeper** | Owns the node-type formulas the publication classifies under; publishes every change to them as a change, because a reclassification is a correction | **New** | | **Writer** | Drafts against the evidence set, citing into it | | | **Editor** | Style, clarity, length, missing context | | | **Underwriter** | The named human who accepts each assessment for an interval (§6) | **New** | | **Visual** | Infographics generated from the story's own graph | | | **Projectionist** | Generates the per-persona renderings (§8) | | | **Community** | Monitors response, routes reader challenges to facts as first-class inputs | | The 30 June library brief named almost this cast for the RiskMandate library, and its reasoning transfers intact — *"the librarian, a good historian, a good journalist, good content writers, and maybe a whole set of agents focusing on information design, structure, and presentation, including how to represent the semantic graphs, and the ontologists"* — because **"each of these articles is its own world, its own ontology and taxonomy, with a lot of reuse, and it is a good example of graphs of graphs of graphs."** That is the fractal claim arriving from the commercial side independently, and it is the reason the Ontologist is a standing role rather than a shared service. The daily clock is inherited from Portugal unchanged, including the one structural detail worth preserving: **writer and verifier work in parallel, not in sequence**, so a story that skipped verification is visibly missing its evidence rather than merely unchecked. One addition — a **decay pass** runs before the morning conference: every assessment whose interval expires today surfaces for re-underwriting or lapse, and lapses are published as such. Humans are the bar; agents are the volume. --- ## 8. The commercial path The persona brief settles the audience, and its central observation is that the cast is **fractal**: > Everyone who uses AI also has to sell it. *"You use AI for something, and you have to sell it, usually upward or outward… so you start to have this very rich graph."* The same roles recur at every company in the chain — the one using AI, the one building it, the one selling it, the one buying it. For a publication that is not a marketing insight, it is a **projection specification**: one story, cut for the CEO, the CSO, the CIO, the CFO, legal counsel, the GRC team, the buying business function, the internal dev team, the third-party vendor, and the chief revenue officer. Legal counsel is flagged in the source as *"often the real decision-maker"* and is the projection to get right first. That is the MyFeeds layer doing exactly the work it was built for, on a beat where the same fact genuinely means different things to different readers. **The funnel, stated as a mechanism rather than a hope:** | Layer | What it is | Price | |---|---|---| | **The public graph** | Every Fact, every absence, every staleness alert, every superseded claim. CC BY, indexed, citable, agent-readable. | Free | | **The projection** | The same story cut for one persona; the per-reader briefing. | Free → subscription | | **The join** | The customer's private vault holds typed edges into the publication's public Fact nodes. Corrections propagate inward. | **The product** | | **Certification** | A warranted, signed assertion that a named fact was correct at a named date, with a named underwriter. [Trust-as-a-Service](../economics/trust-as-a-service.html). | Per assertion | **The conversion event is not a demo request. It is a `.link.json` edge.** The moment a reader's register cites the publication's graph, the publication is infrastructure rather than content, and the relationship is measurable in edges rather than in attributed pipeline. Upstream payment follows this site's published 60/25/10/5 split, and the fact-creator argument applies to the publication's own contributors before it applies to anyone else's — a publication arguing that the fact creator should be paid, which does not pay its own, has refuted itself the same way losing its provenance chain would. --- ## 9. Boundaries — what this publication must not re-explain The largest risk to this brief is the same one `06__boundaries-and-house-style.md` names for this site: **duplication, not scarcity.** | Sibling | Owns | This publication may | |---|---|---| | **risks.sgit.ai** | The risk ontology, the acceptance mechanic, the interval ladder, the 42 concepts | **Use and cite.** Never restate the ontology in its own words — a second definition is a fork | | **graphs.sgit.ai** | The grammar, the validator, node-type formulas, the grounding ladder, anchoring | **Use and cite.** Zero words explaining how the graph works | | **pki.sgit.ai** | Keys, registry rules, identity-vs-mandate, revocation | **Use and cite.** Never describe a signing scheme of its own | | **sgit.ai** | Vaults, substrate, publishing, CI, `.link.json` | **Use and cite.** Zero words on storage, hosting or loaders | | **sg-sentinel.sgit.ai** | In-line enforcement | Out of scope. This publication measures and reports; it does not enforce | | **RiskMandate.ai** | The commercial product | **Cite, never speak for.** The publication reports on the beat; the product is a customer of its output. A publication that announces its customer's roadmap is that customer's newsletter | **The publication owns exactly one thing:** the editorial operation that turns public regulatory reality into a signed, dated, superseding evidence supply. That is a real job, nobody else in the network has it, and it is enough. --- ## 10. Editorial independence: the tension that breaks this if it is not designed for State it without softening. **A publication whose commercial purpose is to sell a risk product has a structural incentive to report risk as more severe, more urgent and more numerous than it is.** Every reader will see that immediately, most will discount the publication for it, and they will be right to unless the incentive is answered structurally rather than promised away. The source corpus knows this — the 17 May MyFeeds repositioning brief contains a dual-track editorial-independence discussion, which is Tier 3 and not reproduced here, but the concern is live in the material and predates this brief. Promises are worthless here. These are the four answers that are structural: 1. **Severity is computed, not asserted.** `graphs.sgit.ai` makes confidence a function of connectivity — it "runs from no edges to rich multi-hop connectivity", and the remedy for low confidence is **enrichment, never enforcement**. A publication whose severity comes from edge count cannot inflate a story by writing more forcefully; it can only inflate it by fabricating edges, which are signed, dated and auditable by the reader. 2. **Facts only, phase one.** Inherited unmodified from the register (§4). No speculative risk enters the graph. This is the rule that stops a commercially-motivated newsroom from manufacturing its own demand, and it is already published as the product's own discipline, so relaxing it for the publication would be visible. 3. **The absence report is the counterweight.** §5.1's output is *questions*, not severity. A newsroom whose flagship format's deliverable is an enumerated list of things nobody knows is structurally biased toward admitting uncertainty rather than resolving it upward. 4. **The agenda is published.** This site already publishes [the graph has an agenda too](../corrections/agenda-is-context.html) as a self-critique of its own central mechanism. The publication inherits that page and extends it with its commercial relationship stated on its face, alongside the [participant disclosure](../about/participant.html) convention every site in the network already carries. **And one hard editorial rule, proposed here and load-bearing.** The RiskMandate vision names *"worked, evidence-backed assessments of real platforms"* as **"the proof that travels"**. That is commercially correct and editorially the single most dangerous thing in this brief: it is a plan to publish adverse assessments of named third parties, produced by an organisation that profits when those assessments land. The rule: > **No severity assessment of a named third party's product is published without that party's right of reply recorded in the same vault, at the same altitude, and reachable from the same node.** Not a quote in the last paragraph. A node in the graph, with the same anchoring and the same signature requirements as the assessment it answers. If the party declines, the declining is recorded as an absence fact per §5.1 — which is both fairer and more informative than "did not respond to a request for comment". --- ## 11. Honest limits — what does not exist This site's [shipped page](../shipped/index.html) is the authority, and this brief adds to what it lists rather than qualifying it. | Limit | Stated by | |---|---| | **The risk engine does not exist.** *"All items below are PROPOSED. None have been code-verified. The implementing engine does NOT exist"* — zero repository matches for `risk_`, `RiskAcceptance` or `risk_register`. Everything in §3, §4 and §5.4 is argued. | risks.sgit.ai | | **PKI ships keys, not a trust system.** No revocation, no directory in sgit v0.16.0+. The registry is a static-file MVP. Append-lane token derivation is published with *"do not code against this"*. §6 is a design. | pki.sgit.ai | | **There is no graph database.** No SPARQL, no Cypher, no RDF in code — *"a hand-written content-addressed object graph in the browser"*, 71 nodes / 141 edges in the shipped vault. "Query the graph" means something much narrower than a reader will assume. | graphs.sgit.ai | | **Nothing in this newsroom runs.** No department, no role, no cost ledger, no payment rail integration. | newsroom.sgit.ai | | **Client-assembled vault pages are invisible to crawlers.** Inherited, unresolved, and **existential for a news publication** rather than inconvenient. Rendering must be decided before content, not after. | this site, T4 | | **The precedent is a publication that did not launch.** Portugal had a named beat, a dated deadline, a phased ramp and ten acceptance criteria, and shipped nothing. This brief has more assets and the same failure mode. | ../mvps/portugal.html | One further tension, which is not a limit so much as a recursion worth naming: **this publication would report on the governance of agentic systems while being one.** Its own agents would hold mandates, act on them, and publish. That is either the strongest possible demonstration or the most obvious conflict, depending entirely on whether the publication holds itself to the standard it reports against — which means its own mandates, intervals and underwriters must be public from day one, not added when someone asks. --- ## 12. Build order Six steps. Steps 1–3 are the minimum viable publication and can be done against assets that already exist. | # | Step | Depends on | |---|---|---| | **1** | **The anchor set.** Freeze and hash the primary sources for the opening beat; build the byte-offset anchor table. Publish the three-state staleness label for every source. | Nothing — the sources are public | | **2** | **One story, end to end.** A single story through the full vault layout of §4, including its facts, its absence set, its signed by-line and its interval. **Proves the architecture or kills it.** | Step 1 | | **3** | **The staleness wire.** Automate the anchor check; publish the first break as a story. | Steps 1–2 | | **4** | **The absence beat.** Reproduce the Article 26(5) method as a repeatable weekly format. | Step 2 | | **5** | **Projections.** Two personas first — legal counsel and GRC. Not ten. | Step 2 | | **6** | **The join.** One customer register holding a typed edge into a public Fact node, and one correction propagating into it. **This is the commercial proof and everything before it is preparation.** | Steps 2–4, and a risk engine that does not yet exist | Steps 1–4 are honestly available today. **Step 6 is not**, and the brief should not imply otherwise: it depends on the register engine that `risks.sgit.ai` states does not exist. --- ## 13. Acceptance criteria | # | Criterion | Verification | |---|---|---| | 1 | Every quoted provision resolves to a byte offset in a hashed frozen source | Anchor check runs in CI and fails the build on drift | | 2 | Every cited source carries one of the three staleness labels | No source published unlabelled | | 3 | One story exists end-to-end in the §4 vault layout | Open the vault; walk from headline to frozen bytes | | 4 | Every assessment carries an interval and a named underwriter | No assessment publishes without both | | 5 | An expired assessment visibly lapses rather than silently persisting | Set a 1h interval; observe the lapse | | 6 | One absence report published with each unanswered question individually assignable | Questions are nodes, not prose | | 7 | One correction supersedes a published Fact **without deleting it**, and what cited it is enumerable | Follow the supersedes edge in both directions | | 8 | Two persona projections generated from one story, both faithful to the same evidence set | Diff the claims, not the prose | | 9 | The publication's own mandates, intervals and underwriters are public | A reader can audit the newsroom by the standard it reports against | | 10 | Right of reply recorded as a node for every named-third-party assessment | No assessment ships without a reply node or a recorded declining | | 11 | Pages are crawler-visible | Fetch as a bot; compare against rendered | | 12 | No sibling's material is restated in this publication's own words | Boundary review against §9 before release | --- ## 14. Open questions Published unresolved, per house convention. | # | Question | Note | |---|---|---| | **Q1** | **Who is legally answerable for what this publication asserts?** | Portugal's question 5, still open. §6 answers the editorial half and explicitly not the legal half. **This is a precondition for launch, not a detail to settle afterwards** | | **Q2** | What is the formula language? | `risks.sgit.ai` Q1, published as *undefined*. The Formula Keeper role has no notation to work in until it is answered | | **Q3** | Which beat exactly? EU AI Act only, or agentic governance broadly? | Closability is the criterion. Broader is more interesting and may not close | | **Q4** | Who underwrites an assessment the publication's own agents produced? | A named human per §6 — but at what volume does that stop being possible, and what happens then? | | **Q5** | Does the publication assess RiskMandate.ai's own product? | If no, the independence claim in §10 is hollow. If yes, by whom | | **Q6** | Server-rendered or client-assembled? | This site's T4, inherited, and existential here | | **Q7** | What is the interval default for a regulatory fact? | The ladder is published; the mapping from volatility to interval is not | | **Q8** | Does a reader's challenge to a fact enter the graph as a node? | `risks.sgit.ai` C2 allows *challenge the facts* as a first-class move. Extending that to readers is either the best feature here or an abuse surface | --- ## 15. Relationship to prior work | Date | Document | Relationship | |---|---|---| | 23 Jun 2026 | Audience, personas and the name: Risk Mandate.ai | The persona cast §8 projects against; the fractal-market argument | | 26 Jun 2026 | Risk Mandate.ai: vision and positioning | The no-deny mechanic, facts-only discipline, and *"the proof that travels"* that §10 constrains | | 30 Jun 2026 | The Risk Mandate Library | The direct precursor. The agent cast and *"each article is its own world, its own ontology and taxonomy"* | | 12 May 2026 | Portuguese newsroom workflow | The roles and the daily clock §7 adapts; open question 5, which §6 half-answers | | 12 May 2026 | Portugal bilingual GenAI publication | The MVP scoping criterion §1 applies | | 17 May 2026 | Articles as vaults | The per-story vault §4 extends | | 21 Aug 2026 | `02__source-provenance-and-attribution.md` | The provenance contract, unchanged and non-negotiable | | 21 Aug 2026 | `06__boundaries-and-house-style.md` | §1's Risk Mandate inversion, which §0 and §9 hold to | --- This document is released under the Creative Commons Attribution 4.0 International licence (CC BY 4.0). ============================================================================== == briefs/10__the-newsroom-floor.md ============================================================================== # 10 — The Newsroom Floor **A point-and-click adventure interface for agentic work — what we built, what makes it honest, what broke, and how to port it.** *Debrief · 28 August 2026 · written for the agents of the other `*.sgit.ai` sites* Live, running, and buildable from this repository at [`/governance/newsroom/index.html`](https://newsroom.sgit.ai/governance/newsroom/index.html). The generator is one file — [`governance/build/floor.py`](https://github.com/SGit-AI/SGit-AI__Website__Newsroom/blob/dev/governance/build/floor.py), 692 lines including the state map, the role pages and the run pages. This is a **debrief, not a brief**. It does not belong to the v1.0 construction pack. It reports on something already shipped, and its recommendations are the ones we would follow ourselves next time — not a specification anyone commissioned. --- ## 1. The problem it solves Every site on this network is now built by an agentic team, and every one of them publishes that team the same way: a roster page listing roles, and a pipeline written as an ordered list. Both are correct. Both are dead. A reader can learn from a roster that a Researcher exists. What they cannot learn is: - what the Researcher is holding *right now* - why it is not moving - which single condition is blocking it - what the Researcher will refuse to do even under pressure That information exists — in our case in `desk.json`, `workflow.json` and `team.json` — and it was reaching the reader as three more tables. **The state of an agentic team is the most interesting thing about it, and a table is the least interesting way to show it.** So we made the team a *place*. Each role is somewhere you can go and ask things. The room is generated from the same files the pipeline actually runs on, so what a desk tells you is, by construction, what the system is really doing. ![The newsroom floor: seven agent desks laid out boustrophedon, joined by a dotted route that runs the pipeline in order, with a token travelling it](../assets/img/floor-scene.png) Numbered nameplates are pipeline steps. The badges are live desk load. The dotted route is the pipeline, drawn so that walking it in order is one unbroken path with no doubling back. --- ## 2. What is built | Page | What it is | |---|---| | [`/governance/newsroom/index.html`](https://newsroom.sgit.ai/governance/newsroom/index.html) | **The floor.** Seven desks, a four-verb bar, a dialogue box | | [`/governance/newsroom/workflow.html`](https://newsroom.sgit.ai/governance/newsroom/workflow.html) | **The state map.** Nine states, each with the door it must pass | | [`/governance/team//index.html`](https://newsroom.sgit.ai/governance/team/researcher/index.html) | **One page per role.** Definition, doors it owns, what is on its desk | | [`/governance/research/2026-08-28.html`](https://newsroom.sgit.ai/governance/research/2026-08-28.html) | **A run record.** What was searched, what resolved, what was read | The machine surfaces behind them: [`desk.json`](https://newsroom.sgit.ai/governance/data/desk.json) · [`workflow.json`](https://newsroom.sgit.ai/governance/data/workflow.json) · [`team.json`](https://newsroom.sgit.ai/governance/data/team.json) · [`research.json`](https://newsroom.sgit.ai/governance/data/research.json) ### The interaction Pick a verb, then click somebody. Four verbs, chosen because each maps to a question a reader of an agentic system actually has: | Verb | Answers | |---|---| | **Look at** | Who is this and what is it for? *(the centre of gravity)* | | **Talk to** | What are you holding, and why is it stuck? *(live desk state)* | | **Hand over** | What reaches you, and when? *(the owns line, and the door before it)* | | **Ask what they refuse** | What will you not do under pressure? *(the refusal list)* | ![The floor mid-conversation: Talk to selected, the Researcher highlighted, and a terminal-styled dialogue box reporting the three items on its desk and the reason the first is stuck](../assets/img/floor-dialogue.png) The fourth verb is the one worth stealing. In a pipeline with no human reviewer, **the refusals are the only thing standing where a duty editor would be.** Putting them behind a verb makes them something a reader goes looking for, rather than a column in a table they skim. --- ## 3. The one rule that stops it being a toy > **Every word the room speaks is derived, at build time, from the same files the system runs > on. Nothing about state is hand-written.** This is the whole difference between an interface and a diorama. If a desk's dialogue were prose in a template, the room would be a mock-up that drifts within a week and lies quietly forever after. Ours is assembled like this: ```python for rid, r in roles.items(): items = load.get(rid, []) # from desk.json held = ("; ".join(f'“{i["title"]}” ({states[i["state"]]["label"].lower()})' for i in items) if items else "nothing at the moment") blocked = [i for i in items if i.get("blocked_why")] lines[rid] = { "look": f'{r["name"]}. {r["gravity"]}', "talk": (f'“I am holding {held}.” ' + (f'“{blocked[0]["blocked_why"]}”' if blocked else "“Nothing is stuck with me right now.”")), "hand": (f'“Owns: {r["owns"]}” — work reaches this desk when the state before it ' f'has cleared its door.'), "gate": f'“I refuse: {r["refuses"]}” Wrong when: {r["wrong_when"]}', } ``` Four sub-rules fall out of it, and each of them cost us something to learn: **3.1 — Counts are computed, never typed.** The floor originally said *"five of six items are stopped at the same door."* It was written while looking at the data, and it was already wrong when it shipped: only one item was at that door. Now the sentence is assembled from `len(stopped)`, `len(at_frozen)` and `len(shipped)`. A sentence with a number in it that a human typed is a sentence that will be false later. **3.2 — Absence is rendered, not hidden.** A desk with nothing on it says so. A state nobody has ever reached shows a count of zero. A role folder that is missing its `actions/`, `briefs/` and `debriefs/` directories publishes a table saying which are empty. The temptation is to draw the finished system; the value is in drawing the real one. **3.3 — The room may not claim more than the data.** Our `frozen` state carries `"blocked": true` and `"blocked_why"`, and every surface that mentions it repeats the same reason from the same field. **3.4 — A gate compares the drawing to the declaration.** See §7. --- ## 4. The genre question, answered plainly The reference was Monkey Island. The output must not be. **A genre is not a work.** A room you click around, a bar of verbs, a character who answers in a box at the bottom — those are conventions of the point-and-click adventure, the way a sidebar and a search box are conventions of documentation. Conventions are for using. **A specific game's work is its own.** So none of it appears here. Everything in the scene is original to this site: - the palette is `assets/site.css`, unchanged — the same teal, amber and red every other page uses - the figures are inline SVG we drew: a circle, a shoulder arc, and one distinguishing prop per role - the four verbs are ours, and are named after questions about *this* system - every line of dialogue is generated from our own data files - the typography is the site's, and the dialogue box is styled from the existing terminal palette (`--term-bg`, `--term-green`) that this network already uses for console output No third-party game's art, wording, character, sound or interface is reproduced, and nothing is named after one. **The rule for anyone porting this: take the grammar, write your own sentences.** If you find yourself reaching for a specific game's phrasing, a specific character, or a recognisable piece of its art, you have crossed from genre into work. --- ## 5. The mechanics that actually matter ### 5.1 One inline SVG, no external assets The whole scene is a single `` written directly into the page. No sprite sheet, no icon font, no image requests, no emoji — emoji render inconsistently across platforms and are banned in the house style anyway. The consequence is that the scene is in the HTML, which matters on this network: a client-assembled page is invisible to crawlers, and this site lists that as an inherited existential risk. ### 5.2 Give every actor a full-area hit target Our first version had none, and the desks had a dead zone between the figure and the nameplate where clicks fell through to the floor tile behind. An SVG `` does not capture pointer events itself — only its painted children do — so the gaps between children are holes. ```html ... ``` `fill="transparent"` with `pointer-events="all"`, sized to the actor's whole footprint, drawn first so it sits behind everything. Note also that this broke the CSS selector for the focus ring, which had been `.desk:focus rect:first-of-type` — it now targeted the invisible rect. Give your real elements classes rather than relying on document order. ### 5.3 On a phone, scroll the room — do not shrink it The scene is 1100 units wide. At a 390px viewport, `width:100%` scaled it to 345px, which made the 17px nameplate type render at about 4px. Legible on a laptop, unusable on the device most people will actually open it on. ```css .sceneframe{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line); border-radius:12px;box-shadow:var(--shadow);background:#f6f4ee} .scene svg{width:100%;min-width:720px;height:auto;display:block;background:#f6f4ee; border-radius:12px} ``` The room becomes wider than the window and you drag it sideways — which is *more* faithful to the genre, not less. The page itself never scrolls horizontally; only the frame does. The same room at 390px: it is wider than the window and scrolls sideways, nameplates stay legible, the verb buttons wrap at 44px tall, and the dialogue box reports what the Librarian refuses *The phone capture is at 3× density, so it declares its true 346px width — the other three are wide captures and take the column.* ### 5.4 Precompute verb × actor, inline it as JSON Every combination is built in Python and shipped as one object. The client script does nothing but swap text: ```js var LINES = {"librarian": {"look": "…", "talk": "…", "hand": "…", "gate": "…"}, …}; function speak(el){ var r = el.dataset.role, l = LINES[r]; if (!l) return; document.querySelectorAll('.desk').forEach(function(d){ d.classList.remove('sel'); }); el.classList.add('sel'); say.innerHTML = '' + NAMES[r] + '' + l[verb]; } ``` The whole inline script is 27 lines: bind the verb buttons, bind click and `keydown` on the desks, swap text. No fetch, no template engine, no state machine in the browser. If your data grows past what you want to inline, fetch the JSON — but keep the *assembly* on the build side, because that is where the gate can see it. ### 5.5 Show work moving A static room shows a structure. A moving token shows a process. Ours travels the pipeline route on a 22-second loop using CSS `offset-path`, which needs no library: ```css .token { offset-path: path("M180,190 H880 V372 H140 V554 H740"); offset-distance: 0%; animation: round 22s linear infinite; } @keyframes round { to { offset-distance: 100%; } } @media (prefers-reduced-motion: reduce) { .token { animation: none; } } ``` Two things to copy. First, the reduced-motion query is not optional — we verified the computed `animation-name` is `none` under `reducedMotion: reduce`. Second, give the token real `cx`/`cy` at the path's start, so that if `offset-path` is unsupported it is a dot parked at the beginning rather than a dot in the wrong place. **Caveat we are honest about: we verified this in Chromium only.** ### 5.6 Lay the room out so the route never doubles back Three rows, boustrophedon — left-to-right, right-to-left, left-to-right — so the seven steps form one unbroken path through corridors between the rows. Getting this right is what turns the route from a tangle into something you can read at a glance. It also constrains the layout usefully: you place desks to serve the flow, not to fill the space. ### 5.7 Degrade in all three directions, and test that you did We tested rather than assumed, and one of the three was wrong: | Path | Result | |---|---| | **Keyboard** | `Tab` reaches all seven; `Enter` and `Space` both open a desk. Verified | | **Screen reader labels** | Every desk carries a live `aria-label` — *"Step 2, Researcher — 3 items on the desk"*. The label is generated with the dialogue, so it carries state, not just a name | | **Reduced motion** | Animation off. Verified | | **JavaScript off** | Room, route and load badges all render — but the verb bar was visible and inert. **That was a defect.** Now a `