drift-adr-workflow
Skill14 starsChanged 7 months agoMITView on GitHub
Drift-specific ADR workflow for signal, scoring, output, and architecture decisions. Use when creating, updating, or validating ADRs before implementation. Keywords: ADR, decision record, proposed, signal design, scoring change, architecture boundary, output format, Decision trailer.
In this repository41 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .github/AGENTS.mdAGENTS.md
- .github/copilot-instructions.mdCopilot instructions
- llms.txtllms.txt
- brainstormingSkill
- drift-agent-prompt-authoringSkill
- drift-commit-pushSkill
- drift-dependency-updateSkill
- drift-docs-gap-fixSkill
- drift-evidence-artifact-authoringSkill
- drift-finding-message-authoringSkill
- drift-ground-truth-fixture-developmentSkill
- drift-mcp-repo-ops-usageSkill
- drift-pr-review-loopSkill
- drift-pr-reviewSkill
- drift-releaseSkill
- drift-risk-audit-artifact-updatesSkill
- drift-security-triageSkill
- drift-session-handover-authoringSkill
- drift-signal-development-full-lifecycleSkill
- fix-failing-actionsSkill
- grill-meSkill
- guard-src-drift-apiSkill
- guard-src-drift-commandsSkill
- guard-src-drift-ingestionSkill
- guard-src-drift-outputSkill
- guard-src-drift-signalsSkill
- guard-src-driftSkill
- improve-codebase-architectureSkill
- prd-to-issuesSkill
- self-improving-agentSkill
- simplify-and-hardenSkill
- skill-creatorSkill
- subagent-driven-developmentSkill
- systematic-debuggingSkill
- tddSkill
- test-driven-developmentSkill
- verification-before-completionSkill
- workspace-automation-orchestratorSkill
- write-a-prdSkill
- writing-plansSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
15 rules. About 0 are common, 8 are distinctive, and 7 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈8
Distinctive · estimate
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 9
Use this skill when a Drift change needs a documented architectural or product decision before implementation.
- Very specific: line 21
Run the Drift Policy Gate first: If the task is not admissible, stop.
- Distinctive: line 24
Validation must be testable: Every ADR needs a concrete validation section with measurable checks or outcomes.
- Very specific: line 29
Before drafting an ADR, use the mandatory gate format from .github/instructions/drift-policy.instructions.md.
- Distinctive: line 31
If the task fails the gate, do not create an ADR to legitimize inadmissible work.
- Distinctive: line 35
Create or update an ADR when the change affects one of these categories:
- Distinctive: line 42
Do not force a new ADR for:
- Distinctive: line 49
If unsure, prefer a draft ADR that states the uncertainty explicitly.
- Very specific: line 55
Use the general template in docs/decisions/templates/adr-template.md for broad architecture or workflow decisions.
- Very specific: line 57
When the decision is primarily about a signal, you must use docs/decisions/templates/signal-design-template.md and complete its …
- Very specific: line 70
Create the next ADR under docs/decisions/ using the repository numbering sequence:
- Distinctive: line 88
Do not invent custom status values.
- Distinctive: line 119
If the decision changes a signal or architecture boundary, state which audit artifacts must be updated alongside the implementation.
- Distinctive: line 140
When implementation follows the ADR, the commit body should carry the decision trailer:
- Very specific: line 146
Do not change ADR status to accepted as part of the agent workflow.
≈ “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
Drift ADR Workflow Skill
Use this skill when a Drift change needs a documented architectural or product decision before implementation.
When To Use
- A signal is added or materially changed
- Scoring logic or weights are changed
- Output formats or output contracts are changed
- An architecture boundary, trust boundary, input path, or output path changes
- An existing ADR draft must be completed or validated
Core Rules
- Run the Drift Policy Gate first. If the task is not admissible, stop.
- ADR first, implementation second. For signal, scoring, output-format, or architecture-boundary changes, prepare the ADR before coding.
- Agents may draft, not accept. Agents may create or update ADRs with status
proposed; only the maintainer changes status toacceptedorrejected. - Validation must be testable. Every ADR needs a concrete validation section with measurable checks or outcomes.
- Do not blur bugfixes and architectural decisions. Pure bugfixes and pure refactorings do not automatically require a new ADR.
Step 0: Run The Drift Policy Gate
Before drafting an ADR, use the mandatory gate format from .github/instructions/drift-policy.instructions.md.
If the task fails the gate, do not create an ADR to legitimize inadmissible work.
Step 1: Decide Whether An ADR Is Required
Create or update an ADR when the change affects one of these categories:
- signal design or signal behavior
- scoring or prioritization logic
- output schema or result format
- architecture or trust boundaries
Do not force a new ADR for:
- typo fixes
- isolated test-only work
- pure refactors without behavior change
- contained bugfixes that preserve the existing design decision without materially changing signal behavior, scoring logic, output contracts, or trust assumptions
If unsure, prefer a draft ADR that states the uncertainty explicitly.
Interface-Design-Tipp: Vor dem Festschreiben eines Signal- oder API-Interface-Designs lohnt es sich, 2–3 Sub-Agenten mit explizit verschiedenen Constraints parallel zu spawnen (z. B. „minimiere das Interface", „maximiere Flexibilität", „optimiere für den häufigsten Caller"). Radikale Constraint-Divergenz erzwingt qualitativ unterschiedliche Designs — parallele Agenten ohne Vorgaben konvergieren meist zu ähnlichen Lösungen. Das subagent-driven-development-Skill liefert den operativen Rahmen.
Step 2: Choose The Right Template
Use the general template in docs/decisions/templates/adr-template.md for broad architecture or workflow decisions.
When the decision is primarily about a signal, you must use docs/decisions/templates/signal-design-template.md and complete its signal-specific fields. That template already forces the critical fields:
- problem class
- heuristic
- scope
- expected FP classes
- expected FN classes
- fixture plan
- FMEA pre-entry
- validation criterion
Step 3: Create Or Update The ADR File
Create the next ADR under docs/decisions/ using the repository numbering sequence:
docs/decisions/ADR-NNN-short-slug.mdRequired YAML frontmatter fields at the top of the file:
idstatus: proposeddatesupersedes
Signal-design ADRs must also carry:
type: signal-designsignal_id
Do not invent custom status values.
Step 4: Write The Decision Clearly
The ADR body must answer all of these questions:
- What problem or uncertainty is being addressed?
- What is being done?
- What is explicitly not being done?
- Why was this option chosen over alternatives?
- What trade-offs or consequences are accepted?
- How will the decision be validated?
For signal-related ADRs, be explicit about:
- why the problem maps to Drift's product purpose
- whether the signal is
file_local,cross_file, orgit_dependent - expected false-positive and false-negative classes
- what minimal fixtures must exist before implementation is considered credible
Step 5: Connect The ADR To Evidence
An ADR is not complete if it floats without validation hooks.
Reference the concrete artifacts the later implementation must touch, for example:
- tests under
tests/ - fixture definitions under
tests/fixtures/ground_truth.py - audit artifacts under
audit_results/ - evidence artifacts under
benchmark_results/
If the decision changes a signal or architecture boundary, state which audit artifacts must be updated alongside the implementation.
Step 6: Define Validation And Outcome Semantics
The Validation section must contain concrete checks, for example:
pytest tests/test_precision_recall.py -v
python scripts/check_risk_audit.py --diff-base origin/main
drift analyze --repo . --format json --exit-zeroAlso state the expected learning-cycle result using the policy vocabulary used in Drift decision review:
bestaetigtwiderlegtunklarzurueckgestellt
Step 7: Prepare Commit Linkage
When implementation follows the ADR, the commit body should carry the decision trailer:
Decision: ADR-NNNDo not change ADR status to accepted as part of the agent workflow.
Review Checklist
- Policy Gate passed for the underlying task
- ADR requirement was correctly identified
- The right template was used
- Status is
proposed - Decision and non-goals are explicit
- Validation is concrete and testable
- Signal-related ADRs name FP/FN classes, scope, and fixture plan
- References to tests, audit artifacts, or evidence files are concrete
- Maintainer-only status boundaries are respected
References
.github/instructions/drift-policy.instructions.md.github/instructions/drift-quality-workflow.instructions.md.github/skills/drift-commit-push/SKILL.mddocs/decisions/templates/adr-template.mddocs/decisions/templates/signal-design-template.mdDEVELOPER.mdCONTRIBUTING.md
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.

