Skip to content

Commit 59bacac

Browse files
committed
Run Codacy coverage for every main commit
1 parent e0ed8fd commit 59bacac

2 files changed

Lines changed: 64 additions & 15 deletions

File tree

.agents/sow/done/SOW-0013-20260603-codacy-metrics-investigation.md

Lines changed: 64 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
Status: completed
66

7-
Sub-state: LCOV `DA:` checksum regression repaired; remote workflow and Codacy dashboard validation passed.
7+
Sub-state: coverage workflow path filter removed so Codacy coverage follows every default-branch head commit.
88

99
## Requirements
1010

@@ -612,3 +612,66 @@ Artifact updates:
612612
- SOW lifecycle: reopened from `done/` to `current/` for this parser
613613
regression, then completed and moved back to `done/` with the repair.
614614
- Specs/docs/skills: no protocol/API/operator behavior changes expected.
615+
616+
## Regression - 2026-06-03 - Coverage Workflow Path Filter
617+
618+
What broke:
619+
620+
- Commit `e0ed8fd83ab14521b96e26e025bea6d63c514a0b` changed only the SOW
621+
evidence record.
622+
- GitHub did not start `Codacy Coverage` for that commit because
623+
`.github/workflows/codacy-coverage.yml` was path-filtered to code, workflow,
624+
build, test, and `.gitignore` files.
625+
- Codacy Cloud still analyzed the new default-branch head and initially
626+
returned no `coverage` field for that latest analyzed commit.
627+
628+
Evidence:
629+
630+
- `gh run list --workflow "Codacy Coverage"` showed no coverage run for
631+
commit `e0ed8fd83ab14521b96e26e025bea6d63c514a0b`.
632+
- `codacy repository gh netdata plugin-ipc --output json` then reported
633+
`lastAnalysedCommit.sha` as
634+
`e0ed8fd83ab14521b96e26e025bea6d63c514a0b` without a `coverage` payload.
635+
- Manual `workflow_dispatch` run `26880845954` uploaded C, Rust, and Go
636+
coverage successfully for current `main`.
637+
- After the manual run, Codacy Cloud again reported `coveragePercentage: 88`
638+
for commit `e0ed8fd83ab14521b96e26e025bea6d63c514a0b`.
639+
640+
Why previous validation missed it:
641+
642+
- The validation proved coverage upload worked on a code/workflow-changing
643+
commit, but did not account for Codacy analyzing later default-branch commits
644+
that do not match the GitHub coverage workflow path filter.
645+
646+
Repair plan:
647+
648+
- Remove the path filters from `Codacy Coverage`.
649+
- Run coverage on every `main` push and every PR to `main` so the coverage
650+
upload follows the commit Codacy analyzes.
651+
- Keep `workflow_dispatch` for manual recovery.
652+
653+
Validation:
654+
655+
- `actionlint .github/workflows/codacy-coverage.yml` passed.
656+
- `git diff --check` passed.
657+
- `bash .agents/sow/audit.sh` passed with `SOW initialization complete and
658+
clean`.
659+
- Sensitive-data scan over the touched workflow and SOW files found no
660+
personal name, workstation path, email address, or raw Codacy token value.
661+
- Workflow diff confirms `Codacy Coverage` no longer has `paths:` filters on
662+
`push` or `pull_request`.
663+
- Manual `Codacy Coverage` run `26880845954` succeeded for current `main`
664+
before this trigger repair was committed, proving the coverage upload path
665+
still works for the current head commit.
666+
- Codacy Cloud repository query after manual run `26880845954` reported
667+
`coveragePercentage: 88` for commit
668+
`e0ed8fd83ab14521b96e26e025bea6d63c514a0b`.
669+
- The workflow change itself will trigger another `Codacy Coverage` run after
670+
push because `.github/workflows/codacy-coverage.yml` changed. That run will
671+
validate the no-path-filter behavior against the new default-branch head.
672+
673+
Artifact updates:
674+
675+
- SOW lifecycle: reopened from `done/` to `current/` for this workflow-trigger
676+
regression, then completed and moved back to `done/` with the repair.
677+
- Specs/docs/skills: no protocol/API/operator behavior changes expected.

.github/workflows/codacy-coverage.yml

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,9 @@ on:
44
push:
55
branches:
66
- main
7-
paths:
8-
- .github/workflows/codacy-coverage.yml
9-
- src/**
10-
- tests/**
11-
- CMakeLists.txt
12-
- Makefile
13-
- .gitignore
147
pull_request:
158
branches:
169
- main
17-
paths:
18-
- .github/workflows/codacy-coverage.yml
19-
- src/**
20-
- tests/**
21-
- CMakeLists.txt
22-
- Makefile
23-
- .gitignore
2410
workflow_dispatch:
2511

2612
permissions:

0 commit comments

Comments
 (0)