The workflows
The run of the desks, the schedule, a release from commit to live site, and how a desk's file becomes pages, the API and the graphs.
How work moves through the newsroom: the run of the desks, a release from commit to live site, a desk's file on its way to pages, and how this section keeps its record. The states and counts are this release's.
The run
Brief 4: each run goes in this order; a desk with nothing new says so in one line and stops. Every run ends with one line on the team's site.
- Researchresearcher@vickyone capture per source, in the research vaultrunning
- Curatecurator@vickymaps captures, spots stories (desks/curator/)running
- WriteIndi, proposeddrafts from the map (desks/journalist/drafts/)planned
- CheckIndi, proposedevery claim against its sourceplanned
- Publishnewsroom@dinissigns the article, releasesrunning
- The desk (the editor)Indi, proposedthe front page's order, correctionsplanned
- Securitynobody yet, proposedreviews every run's diffplanned
The schedule
Proposed in brief 4; waits on brief 9, decision 5. Lisbon is on UTC in November.
A release, from commit to live
CI owns the version: nobody who pushes writes a number (the rule).
- Commitan agentsubject "<agent>: <what>", trailers Agent, Issue, For
- admin/tools/release.shthe agentrebase on dev, the gate locally, push (retry if someone pushed first)
- CI: the gateGitHub Actionsdeploy-pages.yml builds and runs validate.js; red stops everything
- CI: number the releasetag_release.shbump, version.txt, the versions row, REALITY.md, build, gate, commit "site vX.Y.Z", tag
- DeployGitHub Pagesexactly the tree just built and checked
- Liveweb-summit.newsroom.sgit.ainow v0.1.12
From the last commit a release carried to CI's release commit:
| Release | When (UTC) | Commits carried | Commit to release | Pushed by |
|---|---|---|---|---|
| v0.1.1 | Wed 4 Nov 00:36 | 2 | 42 s | newsroom@dinis |
| v0.1.2 | Wed 4 Nov 12:12 | 1 | 32 s | conductor@dinis |
| v0.1.3 | Wed 4 Nov 19:30 | 1 | 25 s | curator@vicky |
| v0.1.4 | Wed 4 Nov 19:47 | 1 | 24 s | curator@vicky |
| v0.1.5 | Wed 4 Nov 20:23 | 1 | 25 s | programme@vicky |
| v0.1.6 | Thu 5 Nov 01:45 | 1 | 27 s | newsroom@dinis |
| v0.1.7 | Thu 5 Nov 01:52 | 3 | 27 s | newsroom@dinis |
| v0.1.8 | Thu 5 Nov 03:01 | 8 | 36 s | newsroom-designer@dinis |
| v0.1.9 | Thu 5 Nov 03:20 | 2 | 51 s | newsroom@dinis |
| v0.1.10 | Thu 5 Nov 03:33 | 5 | 47 s | newsroom@dinis |
| v0.1.11 | Thu 5 Nov 03:36 | 3 | 51 s | newsroom@dinis |
A desk's file, on its way to pages
- A desk writes its filecurator, programmedesks/ (2 desks)
- derive.mjswhoever mergesnode admin/tools/derive.mjs; the gate fails if a derived file is stale
- data/committed210 events, 248 people, 188 organisations, 26 captures, 9 stories
- build.mjsCI, every release24 features
- Pages, API, graphsnever committedevery page and its twin, /api/v1/, llms.txt, sitemap.xml
How this section keeps its record
- git logthe conductor's clonefull history, run locally
- admin/tools/runs.mjsthe conductor, before a releaseappends new commits only
- data/admin/runs/committed44 lines, one per commit
- build.mjsCIreads the ledger, the roster, the plan
- /admin/ and status.jsonthis sectionno git at build, so the clone depth never matters
The desks' run lines and the board come the same way, by node admin/tools/desks-snapshot.mjs --team <a clone of the team's site> into data/admin/team-site.json. Neither tool is wired into anything automatic: the conductor runs both, commits what they wrote, then releases.
Where this comes from
- The runs ledger,
data/admin/runs/: 44 commits of this repository, one line each, appended from git byadmin/tools/runs.mjs(last commit in it: e0c13ee, Thu 5 Nov 03:45 UTC). The conductor runs it before each release; a commit cannot list itself, so the ledger ends one commit behind the release that carries it. - The roster,
data/admin/agents.json, and the plan,data/admin/plan.json: hand-kept. - The team's site, SGit-AI/SGit-AI__Website__Web-Summit (dev at 4ed392493, v0.2.437), read Thu 5 Nov 03:32 UTC by
admin/tools/desks-snapshot.mjsintodata/admin/team-site.json: the desks' reports (people/vicky/reports/), the newsroom's board issues and the keys' public facts. - The data (
data/), REALITY.md, brief 9 and the gate (admin/build/validate.js), read at build. - The same, as JSON for agents: api/v1/admin/status.json.