From e96e9785b17d21cd00980dd586a3dbd511e2f22c Mon Sep 17 00:00:00 2001 From: James <502432+jsr6720@users.noreply.github.com> Date: Sat, 7 Mar 2026 17:42:38 -0500 Subject: [PATCH 1/2] chore: [NO-TICKET] add AGENTS.md with domain context Co-Authored-By: Claude Sonnet 4.6 --- AGENTS.md | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ CLAUDE.md | 1 + 2 files changed, 59 insertions(+) create mode 100644 AGENTS.md create mode 100644 CLAUDE.md diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 00000000..3fb57490 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,58 @@ +# AGENTS.md — commit-analyzer + +> Clearcover's fork of `@semantic-release/commit-analyzer`: a semantic-release plugin that parses git commits using conventional-changelog conventions and returns the appropriate release type (major / minor / patch / null). + +## Quick start + +```bash +# Install +npm install + +# Test — must pass before every PR (runs lint first via pretest, then ava with coverage) +npm test + +# Lint only +npm run lint +``` + +## Domain position + +**Layer:** Shared Services — developer tooling / CI-CD infrastructure +**Domain:** Analytics Domain (closest fit; this is a cross-cutting build tool, not a runtime service) + +**This service owns:** +- Release-type determination logic for Clearcover's semantic-release pipelines + +**Observed callers:** consumed as a semantic-release plugin in other Clearcover repos' CI configs +**Observed dependencies:** `conventional-commits-parser`, `conventional-commits-filter`, `conventional-changelog-angular`, `lodash` + +> Absence means not observed in this scan, not that the integration doesn't exist. + +## Tech stack + +- **Language/runtime:** Node.js >=8.3 +- **Test:** ava (via `nyc ava -v`; coverage collected by nyc) +- **Lint:** xo (with prettier, printWidth 120) + +## Project structure + +``` +index.js — plugin entry point; exports analyzeCommits() +lib/ + analyze-commit.js — matches a single commit against release rules + compare-release-types.js — orders major > minor > patch + default-release-rules.js — built-in rule set + default-release-types.js — ordered list of release type strings + load-parser-config.js — resolves conventional-changelog preset/config + load-release-rules.js — loads and validates custom release rules from plugin config +test/ — ava test files + fixtures +``` + +## Boundaries + +**Always:** run `npm test` before pushing · respect domain boundaries above · no secrets in commits +**Ask first:** changes to default release rules (affects all consuming repos) · new external deps · peer dependency version bumps +**Never:** push to master · skip failing tests · modify release type ordering without understanding downstream impact + +> ⚠️ Auto-generated by AI agent via blind repo scan. Contents reflect observed code at time +> of generation — not manually verified. Review and update when this repo next changes. diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 00000000..43c994c2 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1 @@ +@AGENTS.md From 78179731138343e96c114acb5696bc7ca1d5f586 Mon Sep 17 00:00:00 2001 From: James <502432+jsr6720@users.noreply.github.com> Date: Sat, 7 Mar 2026 19:07:52 -0500 Subject: [PATCH 2/2] chore: [NO-TICKET] address devloai review comments Co-Authored-By: Claude Sonnet 4.6 --- AGENTS.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 3fb57490..2740029b 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -24,7 +24,7 @@ npm run lint - Release-type determination logic for Clearcover's semantic-release pipelines **Observed callers:** consumed as a semantic-release plugin in other Clearcover repos' CI configs -**Observed dependencies:** `conventional-commits-parser`, `conventional-commits-filter`, `conventional-changelog-angular`, `lodash` +**Observed dependencies:** `conventional-commits-parser`, `conventional-commits-filter`, `conventional-changelog-angular`, `debug`, `import-from`, `lodash` > Absence means not observed in this scan, not that the integration doesn't exist. @@ -54,5 +54,4 @@ test/ — ava test files + fixtures **Ask first:** changes to default release rules (affects all consuming repos) · new external deps · peer dependency version bumps **Never:** push to master · skip failing tests · modify release type ordering without understanding downstream impact -> ⚠️ Auto-generated by AI agent via blind repo scan. Contents reflect observed code at time -> of generation — not manually verified. Review and update when this repo next changes. +> ⚠️ Auto-generated by AI agent and audited against actual repo files at generation time. Review and update when this repo next changes.