-
Notifications
You must be signed in to change notification settings - Fork 34
fix: resolve 4 main branch CI lint failures #360
Description
Summary
The main branch has 4 failing CI jobs as of run 24095577189. All failures are pre-existing lint and validation issues.
Failing Jobs
1. Code Quality Lint (ESLint) — 581 problems (169 errors, 412 warnings)
Affected files across docs/_server/ and docs/assets/js/:
| Rule | Severity | Files |
|---|---|---|
curly |
error | docsify-integration.js, frontend-backend-integration.test.js, assessment-result-processor.js |
no-multi-spaces |
error | security-attacks.test.js, learning-paths-manifest.test.js, docsify-integration.js |
prefer-const |
error | docsify-integration.js, assessment-path-generator.js |
dot-notation |
error | docsify-integration.js |
no-dupe-class-members |
error | enhanced-anchor-links.js |
no-multiple-empty-lines |
error | enhanced-progress-data-model.js, enhanced-progress-persistence.js |
preserve-caught-error |
error | schemas/index.js, health.test.js, progress-operations.js |
no-useless-escape |
error | learning-path-parser.js |
no-unassigned-vars |
error | health.test.js |
Most are auto-fixable with npx eslint --fix.
2. Shell Lint — SHELLCHECK_FAILED + SHFMT_FAILED
shfmt formatting issues in:
blueprints/full-single-node-cluster/tests/run-contract-tests.shblueprints/full-single-node-cluster/tests/run-deployment-tests.sh
Auto-fixable with shfmt -w.
3. Terraform Lint — TFLINT_FAILED
All warnings are terraform_required_providers — "Missing version constraint for provider X in required_providers" across ~30 .tf files in blueprints/, deploy/azdo/modules/, and src/000-cloud/ directories.
The root .tflint.hcl already disables this rule (enabled = false), but tflint --recursive (v0.54.0) in CI does not pass --config and may not inherit the root config for subdirectories.
4. AIO Version Validation — Script argument mismatch
scripts/aio-version-checker.py does not support --output-format, --output-path, or --break-build arguments, but two workflow files pass them:
security-comprehensive.yml(L272-277): passes--output-format json --output-path aio-version-check-results.jsonsecurity-deployment.yml(L181-186): passes--break-buildand--output-format json
Fix Plan
- ESLint: Run
npx eslint --fixfor auto-fixable issues, manually fix remaining errors - Shell: Run
shfmt -won the 2 affected scripts - TFLint: Investigate config inheritance in recursive mode and fix (add
--configflag or local.tflint.hclfiles) - AIO: Remove unsupported arguments from both workflow files, replace
--break-buildwith--error-on-mismatch, update post-check JSON parsing logic
Acceptance Criteria
- All 4 CI jobs pass on the fix branch
- No new lint warnings introduced