An architecture decision records an explicit constraint forbidding MongoDB drivers in src/db/**. When a developer accidentally imports mongodb into src/db/connection.js, check --uncommitted flags a VIOLATED finding. The team can resolve it either by refactoring the code to pg (restoring VERIFIED status) or by registering a time-bound exception.
constraints:
- id: no-mongodb-driver
kind: forbidden_import
paths: ["src/db/**"]
pattern: ["mongodb", "mongoose"]
severity: major
message: "This service uses PostgreSQL for persistence — do not import MongoDB driver."# Check code diff against active ADR constraints
python skills/adr-toolkit/scripts/adr.py check --uncommitted --dir docs/decisions --json# Register temporary exception for migration script
python skills/adr-toolkit/scripts/adr.py exception --input exception.json --dir docs/decisions --jsoncheck --uncommittedinspects modified files in the working directory against activeconstraints:in Accepted ADRs.- When
src/db/connection.jscontainsrequire("mongodb"),checkproduces averified_violationfinding withconfidence: "VIOLATED". checknever automatically modifies code — it returns 5 resolution options (fix_code,supersede_adr,adjust_scope,register_exception,false_positive).- If
register_exceptionis selected,exceptionvalidates schema and writes a deterministicEXC-0001record underdocs/decisions/exceptions/0001.json. - Once code is refactored to
pg, re-runningcheckreturnsconfidence: "VERIFIED".
{
"ok": true,
"operation": "check",
"diff": {
"mode": "uncommitted",
"ref": null,
"files_changed": 1
},
"findings": [
{
"rule_id": "no-mongodb-driver",
"kind": "verified_violation",
"severity": "major",
"message": "This service uses PostgreSQL for persistence — do not import MongoDB driver.",
"file": "src/db/connection.js",
"evidence": {
"line": "const mongodb = require(\"mongodb\");",
"pattern": "mongodb"
},
"adr_id": "ADR-0002",
"resolutions": [
"fix_code",
"supersede_adr",
"adjust_scope",
"register_exception",
"false_positive"
],
"confidence": "VIOLATED"
}
],
"warnings": []
}{
"ok": true,
"operation": "exception",
"created": "docs/decisions/exceptions/0001.json",
"id": "EXC-0001",
"warnings": []
}{
"ok": true,
"operation": "check",
"diff": {
"mode": "uncommitted",
"ref": null,
"files_changed": 1
},
"findings": [
{
"adr_id": "ADR-0002",
"kind": "related",
"confidence": "VERIFIED"
}
],
"warnings": []
}