ForNeVeR/Generaptor
65.6
Adequate · 3 October 2026
1.2k
lines of production code
F#
primary language
2
measurements over time
What this system is
Generaptor is a .NET tool that programmatically defines and manages GitHub Actions workflows using F\#. It provides a library of helpers for common CI/CD patterns and supports generating, regenerating, and verifying workflow YAML files to ensure they remain consistent with their code definitions. The system also includes infrastructure scripts for versioning and automated testing of the workflow generation logic.
Features
Add versioning script for build integration
A new PowerShell script, Get-Version.ps1, has been added to the Scripts directory. This script determines the current version by checking if the provided Git reference is a version tag (e.g., refs/tags/v1.0.0); if not, it falls back to reading the version from the Directory.Build.props file. This enables automated build systems to consistently retrieve the correct version number.
Scripts · high confidence
Generaptor introduces workflow generation, regeneration, and verification commands
Generaptor now supports generating GitHub Actions workflow YAML files from F\# definitions, regenerating F\# scripts from existing workflows, and verifying that generated files match the current definitions. This change adds an ActionsClient to fetch the latest versions of GitHub Actions, a ScriptGenerator to produce F\# code from YAML, and a Verifier to compare existing and generated workflows using DiffPlex.
Generaptor · high confidence
Initial release of Generaptor v1.0.0
This entry documents the initial release of the Generaptor project, introducing a tool to maintain GitHub Actions workflows via F\# code. The release includes a low-level API for defining workflows and jobs, a set of actions for .NET projects (build, test, release), and support for execution from both .NET projects and F\# script files (.fsx). The repository structure is established with solution files, project properties, and documentation including a changelog, code of conduct, and contributor guide.
(repo-wide) · high confidence
New GitHub Actions workflow helpers for CI/CD and build patterns
Generaptor.Library introduces new modules to simplify GitHub Actions workflows. The Actions module provides static members for common CI steps, including checkout, .NET packing, changelog preparation, artifact uploading, release creation, and NuGet publishing, with support for overriding action versions. The Patterns module adds utilities for configuring matrix builds and a standard .NET build-and-test sequence that sets up the SDK, caches NuGet packages, and runs build and test commands, along with a helper to conditionally execute steps only on tag pushes.
Generaptor.Library · high confidence
Removals
Removal of GitHub Actions workflow generator script
The F\# script (Program.fs) used to generate GitHub Actions workflow files has been removed from the repository. This eliminates the local tooling that previously processed workflow definitions, meaning the workflows are no longer generated via this specific entry point.
GitHubActions · high confidence
Behavioural changes
Introduce code-generated GitHub Actions workflows
The CI/CD pipeline is now defined programmatically via a new F\# generator (Infrastructure/GitHubActions/Program.fs) instead of static YAML files. This change introduces a 'Main' workflow that builds and tests the project on Ubuntu 24.04, macOS 14, and Windows 2025, while adding dedicated jobs to verify workflow syntax, enforce UTF-8 encoding (using VerifyEncoding v2.2.0), and check license headers via fsfe/reuse-action. A 'Release' workflow is also added to package and publish NuGet packages upon tag creation, with write permissions for repository contents.
Infrastructure · high confidence
Test coverage
Added comprehensive test suite for Generaptor workflow generation and verification
Added new test files in Generaptor.Tests to validate the GitHub Actions workflow generator, regenerator, and verifier. The suite includes unit tests for version selection logic in ActionsClient, generator tests for workflow structures (including strategies, permissions, conditions, and environment variables), and snapshot tests for the regenerator's output against various workflow definitions. It also adds tests for the verifier's ability to detect content mismatches, missing files, and redundant files in existing workflows.
Generaptor.Tests · high confidence
Dependencies
Dependency updates and project restructuring
This change updates several core dependencies, including YamlDotNet to 18.1.0, xunit.runner.visualstudio to 4.0.0, and Microsoft.NET.Test.Sdk to 18.10.1, while introducing DiffPlex 1.9.0 for diffing and TruePath 1.12.0 for path handling. The project structure has been refactored by moving GitHubActions into an Infrastructure folder, creating a new Generaptor.Library project, and replacing the manual diff implementation with the DiffPlex library. Additionally, the test suite has been migrated from coverlet.collector to Verify.Xunit 31.12.5, and license headers have been added to the project files.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 66 → 66 (-0.2)
- Rubric changed (rubric-2026.09.15 → rubric-2026.10.1) — scores are not directly comparable.
Lenses
- Code Health 99 → 99 (+0.0)
- Architecture 88 → 94 (+5.2)
- Maturity 54 → 54 (+0.0)
- Readiness 67 → 67 (+0.0)
- Security 78 → 74 (-4.3)
Resolved (2)
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
New (1)
- Documentation: no project overview (README.md)
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
ForNeVeR/Generaptor was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 3 October 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 86c76eb471d440d76d220c6088efd1c9527e81d3 — the exact code this score is about.
- Scored under rubric-2026.10.1 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-4f4226d619ea.