Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .github/workflows/standards-drift.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Standards drift

on:
pull_request:
push:
branches: [main]
workflow_dispatch:

permissions:
contents: read

jobs:
drift:
uses: krav01/go-ci-standards/.github/workflows/standards-drift.yml@46c957083701ed4d041228babee6e5d32c944c0e
with:
current_version: '1.4.0'
fail_on_drift: false
16 changes: 10 additions & 6 deletions .standards.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
version: 1.1.0
version: 1.4.0
maturity: high-load-critical
source: krav01/dev-standards
public_ci_source: krav01/go-ci-standards@46c957083701ed4d041228babee6e5d32c944c0e

controls:
reusable_ci: false
standards_drift: true
lint: true
vulncheck: true
race: true
Expand All @@ -18,14 +20,16 @@ controls:
migration_roundtrip: true
backup_restore: true
failure_recovery: true
project_memory: true
memory_freshness: true
memory_hotspots: true
verification_cache: true
known_traps: true

exceptions:
- control: reusable_ci
reason: Public repository cannot call reusable workflows from private dev-standards.
revisit: Repository becomes private or shared workflow source becomes publicly accessible.
- control: standards_drift
reason: Public repository cannot call the private reusable drift workflow.
revisit: Repository becomes private or shared drift workflow source becomes publicly accessible.
reason: Existing local verification is materially stricter and includes project-specific formatting, release guards, PostgreSQL integration, benchmarks, Docker smoke, outage recovery, backup restore, schema upgrade, and monitoring validation.
revisit: Re-evaluate when the public reusable workflow supports project-specific extension without duplicating heavy checks.
- control: fuzz
reason: No parser or invariant-heavy surface currently requires a dedicated fuzz gate.
revisit: Add when parsing or invariant complexity increases.
Expand Down