precursor-timeline
Skill0 starsChanged 27 days agoMITView on GitHub
Build a precursor and weak-signal timeline from a ProbeMatrix investigation export - every dated warning, missed inspection, repeated repair, overdue action, audit finding or near-miss before the event - showing who received each signal and what was done with it. Use when someone asks "did we see this coming", "what warnings were missed", wants a weak-signals or precursor analysis, a history of the asset before the incident, or material on normalisation of deviance.
In this repository24 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- auditor-assurance-packSkill
- barrier-learningsSkill
- board-briefSkill
- causal-mapSkill
- cluster-learning-dossierSkill
- emergency-response-learningsSkill
- engineering-integrity-learningsSkill
- frontline-learning-cardsSkill
- interface-learningsSkill
- investigator-coachSkill
- learning-clustersSkill
- learnings-coachSkill
- learnings-registerSkill
- manager-coachSkill
- organisation-learning-mapSkill
- report-comparisonSkill
- safety-committee-guideSkill
- site-leadership-coachSkill
- supervisor-coachSkill
- supply-chain-contractor-learningsSkill
- top-management-briefSkill
- training-designerSkill
The file
We split this skill into the rules it gives an agent
3 rules. About 0 are common, 1 is distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 32
Add the event sequence on the day itself as a final block if the narrative gives it.
- Very specific: line 40
Write the pack <run>/outputs/precursor-timeline.json (schema: learnings-coach/references/pack-schema.md), then:
- Very specific: line 59
Put data-quality corrections in data_quality, findings left out on purpose in exclusions, and same-condition findings in supporting_cites.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Precursor Timeline
Engine: PMLC = python3 <skills-root>/learnings-coach/scripts/pmlc.py (this skill needs the learnings-coach skill installed alongside it).
Gather candidates
PMLC timeline <ws> --before incidentThis lists every dated mention in findings and evidence (<ws>/timeline_candidates.json), with snippets and sources. Many are duplicates or context dates (e.g. a commissioning year). The engine finds dates; you decide which are signals.
Curate
For each candidate keep it only if it is a signal: something that could have told someone the risk was rising and that they could actually see then (see the knowable-then test in learning-principles.md §1a). Examples: an inspection that found degradation, a repeated repair on the same item, a skipped or overdue maintenance schedule, an audit recommendation left open, a procedure published but not used, a configuration change not documented. Record:
| Field | Content |
| Date | as precise as the source allows; mark year-only dates |
| Signal | what happened, in one line |
| Received by | entity and tier (from clusters.json of the citing findings) |
| Response | what was done with it, per the evidence ("none recorded" is an answer) |
| Knowable then | knowable_then: what the receiver could know at that moment, or true/false; leave out hindsight-only signals |
| Distance to event | months or years before the incident |
| Evidence | finding and evidence IDs |
Add the event sequence on the day itself as a final block if the narrative gives it.
Learn
Close with three to six signal learnings: patterns in how signals were handled (no escalation path, closure without verification, schedules that slide when a job is late, repeated repairs treated as normal). Each one names the entity and tier that must change the way it handles signals, and a leading indicator.
Output
Write the pack <run>/outputs/precursor-timeline.json (schema: learnings-coach/references/pack-schema.md), then:
PMLC check-pack <ws> <run>/outputs/precursor-timeline.json # fix every problem it lists
PMLC pack <ws> <run>/outputs/precursor-timeline.json # -> precursor-timeline.html (primary, vertical timeline) and .mdSections and the kinds that fill them:
- Curated signals: one
timeline. Each row of the Curate table above becomes an event:- Date →
date - Signal →
text; do not write "(N months before)": the renderer computes it from the incident date and shows year-only dates as "c. YYYY (about N years before)" signal: true- Received by →
received_by - Response →
response("None recorded" is an answer) - Knowable then →
knowable_then(optional text, or true or false) - Evidence →
cites
- Date →
- Event sequence on the day: a second
timeline, in its own section. - Signal learnings:
learning×3–6, withowner= the entity and tier that must change. Follow each with itsindicator.
Put data-quality corrections in data_quality, findings left out on purpose in exclusions, and same-condition findings in supporting_cites.
{"date": "2022-03", "text": "…", "signal": true, "received_by": "Materials Management (F06, T1)",
"response": "None recorded", "cites": ["FND-…", "EVD-…"]}Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

