Skip to content

ci: add file hygiene workflow and resolve all lint errors - #26

Closed
yshyn-iohk wants to merge 3 commits into
mainfrom
ci/file-hygiene
Closed

ci: add file hygiene workflow and resolve all lint errors#26
yshyn-iohk wants to merge 3 commits into
mainfrom
ci/file-hygiene

Conversation

@yshyn-iohk

Copy link
Copy Markdown
Contributor

Summary

Implements file hygiene linting for vdr as part of the org-wide rollout (hyperledger-identus/hyperledger-identus#172).

1. CI workflow and lint configuration

  • Add file-hygiene.yml caller workflow for the reusable lint-files.yml
  • Add canonical .editorconfig with indent_size=4 for Kotlin, indent_size=unset for markdown and LICENSE
  • Add .gitattributes, .markdownlint.yml, .markdownlint-cli2.yaml, .yamllint.yml

2. Lint fixes across the repo (13 files)

  • Markdownlint auto-fix: trailing spaces, blank lines around headings/lists/fences, multiple blank lines, missing final newline
  • EditorConfig fixes: add final newline to all Kotlin source files, fix parameter indentation in Driver.kt and InMemoryDriver.kt

3. .git-blame-ignore-revs

  • Add mass formatting commit to blame ignore list

Test plan

  • File Hygiene (editorconfig) — passing (0 errors locally)
  • Markdown — passing (0 errors locally)
  • YAML — passing (0 errors locally)
  • ShellCheck — N/A (no shell scripts)

Refs: hyperledger-identus/hyperledger-identus#172

🤖 Generated with Claude Code

yshyn-iohk and others added 3 commits May 22, 2026 02:03
Add reusable file-hygiene workflow caller and canonical lint configs:

- .github/workflows/file-hygiene.yml: caller for lint-files.yml
- .editorconfig: UTF-8 (no BOM), LF line endings, indent rules
  with indent_size=4 for Kotlin files
- .gitattributes: LF normalization for text files, binary rules
- .markdownlint.yml + .markdownlint-cli2.yaml: markdown lint rules
- .yamllint.yml: YAML lint rules with relaxations
- .shellcheckrc: suppress gradlew warnings (SC2034, SC3045)

Refs: hyperledger-identus/hyperledger-identus#172

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Yurii Shynbuiev <yurii.shynbuiev@iohk.io>
Markdownlint auto-fix resolved formatting issues:
- MD009: trailing spaces
- MD012: multiple consecutive blank lines
- MD022: missing blank lines around headings
- MD031: missing blank lines around fenced code blocks
- MD032: missing blank lines around lists
- MD047: missing final newline

EditorConfig fixes:
- Add final newline to all Kotlin source files
- Fix parameter indentation in Driver.kt and InMemoryDriver.kt

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Yurii Shynbuiev <yurii.shynbuiev@iohk.io>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Yurii Shynbuiev <yurii.shynbuiev@iohk.io>
@sonarqubecloud

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: be162aacf9

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .git-blame-ignore-revs Outdated
@@ -0,0 +1,3 @@
# style: auto-fix and manually resolve all lint errors across the repo
# Mass formatting. No logic changes.
e631ca2aa04068b10c366cb08a2bceb903b039b2

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Reference the formatting commit that is actually in history

The ignore list points to e631ca2..., but in the reviewed commit the formatting changes are part of ef6d881... (parent is 245fc41...), so that SHA is not on this commit’s ancestry and won’t be available to downstream clones of this history. In that case, git blame --ignore-revs-file cannot suppress the mass-formatting churn this file is meant to hide, so blame hygiene is effectively broken until the SHA is updated to the commit that actually lands.

Useful? React with 👍 / 👎.

@yshyn-iohk

Copy link
Copy Markdown
Contributor Author

Commits pushed directly to main to preserve 3-commit structure and correct .git-blame-ignore-revs SHA.

Commits on main:

  • 7693cba ci: add file hygiene workflow and lint configuration
  • 4400d2f style: auto-fix and manually resolve all lint errors across the repo
  • 0eaa356 chore: add formatting commit to .git-blame-ignore-revs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant