Conflicts
The standing view of every open drift finding - who owns it, how confident it is, and what to do about it.
city-scrapers-meetings-viewerthe Next.js app and docs you are readingConflicts
This page is the standing view of the drift report - the same records that
appear as PR comments and in docs-platform/drift/findings.json, rendered
for reading. It is generated at build time from the committed findings file;
run npm run docs:drift to refresh it.
The contract
The platform detects that two sources disagree, locates the disagreement precisely, and names the owner who should act. It does not decide who is right, does not edit anyone's source, and does not silently correct a page. A human routes the correction upstream; a manager merges once it is settled.
Confidence levels
- certain - a page contradicts an executable source (code, constants, a generated schema). Code is the arbiter; these block the merge once the gate is promoted.
- likely - two prose sources disagree, or a cited symbol is gone. Comments on the PR and requests the owner's review; a human decides.
- prompt - an external source is stale or unreachable. Dashboard row and digest only; never touches a PR.
Open findings
5 open finding(s) - generated Sep 14, 2026.
@msrezaie
| Finding | Confidence | Source | Action |
|---|---|---|---|
meeting.status vocabulary f820fd38c779b57a | blocking | certain | docs-platform/sources/city-scraper-project-tech-guide.md TENTATIVE, PASSED, CANCELED (extra: CANCELED)master: docs-platform/sources/city-scrapers-core/constants.py | Do not edit the mirror. Check whether upstream docs-platform/sources/city-scrapers-core/constants.py changed; if the mirror is stale, re-sync it and update sources.json. |
meeting.status vocabulary 830d425dea6f0715 | blocking | certain | docs-platform/sources/city-scrapers-development-guide.md passed, tentative, cancelled (missing: confirmed)master: docs-platform/sources/city-scrapers-core/constants.py | Do not edit the mirror. Check whether upstream docs-platform/sources/city-scrapers-core/constants.py changed; if the mirror is stale, re-sync it and update sources.json. |
meeting.status vocabulary e2c9f2505e27c7e0 | blocking | certain | docs-platform/sources/skills/spider-review/SKILL.md tentative, passed, cancelled (missing: confirmed)master: docs-platform/sources/city-scrapers-core/constants.py | Do not edit the mirror. Check whether upstream docs-platform/sources/city-scrapers-core/constants.py changed; if the mirror is stale, re-sync it and update sources.json. |
meeting.classification vocabulary dcc71a2b070b5c50 | blocking | certain | docs-platform/sources/city-scraper-project-tech-guide.md COUNCIL, UNCLASSIFIED (extra: COUNCIL, UNCLASSIFIED)master: docs-platform/sources/city-scrapers-core/constants.py | Do not edit the mirror. Check whether upstream docs-platform/sources/city-scrapers-core/constants.py changed; if the mirror is stale, re-sync it and update sources.json. |
meeting.classification vocabulary a70d62cb8c74d6c7 | blocking | certain | data/scrapers/test_spider2.json Co, Board (extra: co)master: docs-platform/sources/city-scrapers-core/constants.py | Review data/scrapers/test_spider2.json against docs-platform/sources/city-scrapers-core/constants.py. |
Muting a finding
A finding you have judged to be a false positive can be muted once and stay
muted. Add its fingerprint (shown in the table) to
docs-platform/drift/mutes.json with a reason:
{
"mutes": [
{
"fingerprint": "72edf66908bc68ea",
"reason": "mirror intentionally stale pending upstream re-sync",
"expires": "2026-12-31"
}
]
}Mutes expire automatically when the disagreeing values change, because the fingerprint hashes them in - a muted finding that starts disagreeing differently resurfaces.
The full report
The same findings rendered as Markdown live at
docs-platform/drift/report.md; the agent-readable record is
docs-platform/drift/findings.json. Overlap maps - which subjects are
restated in which documents - are in the report's footer.
Last updated on