Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/quality.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
find . -type f -size +1M -not -path "./.git/*" | head -10 || echo "No large files"

- name: EditorConfig check
uses: editorconfig-checker/action-editorconfig-checker@main
uses: editorconfig-checker/action-editorconfig-checker@8d9ca9cf96953707b7299eaec419c6cfcd3a65ac # main
continue-on-error: true

docs:
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/rust-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ jobs:
contents: read
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- uses: dtolnay/rust-toolchain@stable
- uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f559994984270fce7 # stable
with:
components: rustfmt, clippy
- uses: Swatinem/rust-cache@v2
- uses: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2.8.2

- name: Check formatting
run: cargo fmt --all -- --check
Expand All @@ -39,7 +39,7 @@ jobs:
contents: read
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- uses: dtolnay/rust-toolchain@stable
- uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f559994984270fce7 # stable
- name: Install cargo-audit
run: cargo install cargo-audit
- name: Security audit
Expand All @@ -53,11 +53,11 @@ jobs:
contents: read
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- uses: dtolnay/rust-toolchain@stable
- uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f559994984270fce7 # stable
- name: Install tarpaulin
run: cargo install cargo-tarpaulin
- name: Generate coverage
run: cargo tarpaulin --out Xml
- uses: codecov/codecov-action@v5
- uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2
with:
files: cobertura.xml
26 changes: 0 additions & 26 deletions .github/workflows/rust.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Thumbs.db
/.elixir_ls/

# Rust
# Cargo.lock # Keep for binaries
/Cargo.lock

# Elixir
/cover/
Expand Down
77 changes: 59 additions & 18 deletions STATE.scm
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
'((version . "0.1.0")
(schema-version . "1.0")
(created . "2025-12-15")
(updated . "2025-12-15")
(updated . "2025-12-17")
(project . "fslint-plugin-api")
(repo . "github.com/hyperpolymath/fslint-plugin-api")))

Expand All @@ -41,13 +41,13 @@

(define current-position
'((phase . "v0.1 - Initial Setup and RSR Compliance")
(overall-completion . 25)
(overall-completion . 30)

(components
((rsr-compliance
((status . "complete")
(completion . 100)
(notes . "SHA-pinned actions, SPDX headers, multi-platform CI")))
(notes . "All actions SHA-pinned, SPDX headers, duplicate workflows removed")))

(documentation
((status . "foundation")
Expand All @@ -56,19 +56,21 @@

(testing
((status . "minimal")
(completion . 10)
(notes . "CI/CD scaffolding exists, limited test coverage")))
(completion . 15)
(notes . "3 unit tests passing, CI/CD security audit workflow active")))

(core-functionality
((status . "in-progress")
(completion . 25)
(notes . "Initial implementation underway")))))
(notes . "Plugin trait, metadata, context, result types implemented")))))

(working-features
("RSR-compliant CI/CD pipeline"
("RSR-compliant CI/CD pipeline with all actions SHA-pinned"
"Multi-platform mirroring (GitHub, GitLab, Bitbucket)"
"SPDX license headers on all files"
"SHA-pinned GitHub Actions"))))
"Security workflows: CodeQL, OSSF Scorecard, Dependabot, TruffleHog"
"Duplicate workflow detection and enforcement"
"Core Plugin trait and associated types"))))

;;;============================================================================
;;; ROUTE TO MVP
Expand All @@ -83,26 +85,53 @@
((name . "Core Functionality")
(status . "pending")
(items
("Implement primary features"
"Add comprehensive tests"
"Improve documentation"))))
("Implement plugin loading/discovery mechanism"
"Add plugin registry with version management"
"Create plugin lifecycle hooks (init/cleanup)"
"Implement configuration validation"
"Add integration tests for plugin loading"
"Expand unit test coverage to 40%"))))

(v0.3
((name . "File Analysis Framework")
(status . "pending")
(items
("Define standard file analysis traits"
"Implement async plugin execution"
"Add progress reporting mechanism"
"Create sample reference plugins"
"Documentation: Plugin developer guide"))))

(v0.5
((name . "Feature Complete")
(status . "pending")
(items
("All planned features implemented"
("Plugin sandboxing and security boundaries"
"Resource limits (CPU, memory, time)"
"Plugin dependency resolution"
"Test coverage > 70%"
"API stability"))))
"API stability review and freeze"
"Performance benchmarks"))))

(v0.8
((name . "Beta Release")
(status . "pending")
(items
("Security audit (internal)"
"Real-world plugin integration tests"
"API documentation complete"
"Migration guide for existing tools"
"Community feedback integration"))))

(v1.0
((name . "Production Release")
(status . "pending")
(items
("Comprehensive test coverage"
("External security audit"
"Performance optimization"
"Security audit"
"User documentation complete"))))))))
"Comprehensive user documentation"
"Plugin marketplace/registry design"
"Long-term support commitment"))))))))

;;;============================================================================
;;; BLOCKERS & ISSUES
Expand Down Expand Up @@ -151,6 +180,18 @@

(define session-history
'((snapshots
((date . "2025-12-17")
(session . "security-audit-and-roadmap")
(accomplishments
("Removed duplicate rust.yml workflow"
"SHA-pinned all unpinned GitHub Actions"
"Updated rust-ci.yml: dtolnay/rust-toolchain, Swatinem/rust-cache, codecov/codecov-action"
"Updated quality.yml: editorconfig-checker/action-editorconfig-checker"
"Verified build, tests, and linting all pass"
"Expanded roadmap with v0.3 and v0.8 milestones"
"Updated STATE.scm with current progress"))
(notes . "Security hardening session - all workflows now RSR Gold compliant"))

((date . "2025-12-15")
(session . "initial-state-creation")
(accomplishments
Expand Down Expand Up @@ -185,10 +226,10 @@
(define state-summary
'((project . "fslint-plugin-api")
(version . "0.1.0")
(overall-completion . 25)
(overall-completion . 30)
(next-milestone . "v0.2 - Core Functionality")
(critical-blockers . 0)
(high-priority-issues . 0)
(updated . "2025-12-15")))
(updated . "2025-12-17")))

;;; End of STATE.scm
Loading