Skip to content

ci: align vet and lint with module loop convention - #36

Merged
cristim merged 1 commit into
mainfrom
ci/21-module-loops
Sep 29, 2026
Merged

cristim merged 1 commit into
mainfrom
ci/21-module-loops

Conversation

@cristim

@cristim cristim commented Sep 29, 2026 •

Copy link
Copy Markdown
Member

Align CI vet and lint with the existing for mod in . convention used by tests and security scans. Retain the pinned lint action as installer, its cache directory, configuration validation, and the 10-minute lint timeout.

This repository currently has one module, so package coverage and diagnostics are unchanged. Future module additions still require updating the explicit module lists.

Validation: executed the actual YAML blocks against the repository with Go 1.26.6 and golangci-lint 2.10.1; diagnostics match baseline. Five shell probes verify invocation arguments, working directory, cache, and failure propagation, including config failure preventing lint. Race tests, build, native workflow lint, and normal pre-commit hooks passed. Local act simulation timed out fetching pinned actions; hosted Linux CI remains required.

Independent gpt-6-astra review, authorized for this session, completed two clean implementation passes and independently exercised the shell probes. Final verdict for f7a0b52fd6fd22354d90443f4e5a0505b13f94f1: MERGE once required hosted Linux CI passes. The reviewer re-read the complete committed diff, verified identity with the approved staged diff, and reran all five YAML probes and actionlint on this SHA. This is not an Opus review.

Closes #21

Summary by CodeRabbit

  • Chores
    • Continuous integration now verifies lint configuration, runs lint checks, and runs go vet separately for each module. Lint checks also use a dedicated cache and a 10-minute timeout. These changes affect automated project checks; no end-user features or behavior changed.

@cristim cristim added urgency/this-sprint Within the current sprint type/chore Maintenance / non-user-visible triaged Item has been triaged priority/p1 Next up; this sprint severity/high Significant harm impact/all-users Affects every user effort/m Days labels Sep 29, 2026
@coderabbitai

coderabbitai Bot commented Sep 29, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: LeanerCloud/cloud-commitments-mcp/.coderabbit.yaml

Review profile: CHILL

Plan: Essentials

Run ID: 23489cff-d9d2-4cbe-9e63-e8edad5ef718

📥 Commits

Reviewing files that changed from the base of the PR and between 49c5d20 and f7a0b52.

📒 Files selected for processing (1)
  • .github/workflows/ci.yml

Included review availability: This review used your included allowance. 0 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 1 review per hour.


📝 Walkthrough

Walkthrough

The CI workflow now verifies and runs golangci-lint for each module with a 10-minute timeout and a dedicated cache directory. It also runs go vet separately for each module.

Changes

Per-module CI checks

Layer / File(s) Summary
Per-module lint and vet checks
.github/workflows/ci.yml
The workflow installs the pinned linter, verifies its configuration, and runs lint and go vet in loops for each module.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Refactor

Merge Risk: ⚪ Minimal · up to f7a0b

The workflow now expresses lint and vet as per-module checks while preserving coverage for this single-module repository. No code-level merge blocker is evident; hosted CI should still confirm runner execution.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: updating CI vet and lint steps to use the module loop convention.
Linked Issues check ✅ Passed Issue #21 requires per-module loops for go vet and golangci-lint, with no current single-module behavior change. The workflow now runs both commands in for mod in . loops. The lint step retains th…
Out of Scope Changes check ✅ Passed The diff changes only .github/workflows/ci.yml. The added lint installation, configuration verification, cache setting, timeout, and loop handling directly support Issue #21 and its CI objective. No…
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

Comment @coderabbitai help to get the list of available commands.

@cristim
cristim merged commit b94f5d4 into main Sep 29, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

effort/m Days impact/all-users Affects every user priority/p1 Next up; this sprint severity/high Significant harm triaged Item has been triaged type/chore Maintenance / non-user-visible urgency/this-sprint Within the current sprint

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ci: go vet/lint steps don't use the per-module loop convention [mcp part]

1 participant