Skip to content

Releases: itsallcode/openfasttrace

Release 4.6.0

Choose a tag to compare

@github-actions github-actions released this 19 Jul 10:16
ad0f9d3

OpenFastTrace 4.6.0, released 2026-07-19

Code name: Status Filter at Import

Summary

We added a new feature to filter specification items by status at import time via -w or --wanted-statuses CLI parameters.
This is helpful when your project uses specification documents for planning future requirements (marked by the status "draft" or "porposed").

Big thanks to first-time contributor @Davidius86 who added a dark theme to OFT's HTML report. If your browser is set to a dark theme, the report will automatically switch. He alo added Doxygen file support to the Tag importer and added a convenience notation that lets you cover multiple specification items in a single tag:

// [impl -> dsn~a-covered-item~1, dsn~another~covered-item~2]

We also updated test and build dependencies to fix vulnerabilities. Runtime code is not affected, so no update is required.

We moved some GitHub action permissions from workflow-level to job-level. Sonar findings that accumulated with Sonar introducing new code rules were reduced a lot. Since OFT is used in safety-critical projects, code quality is crucial to us.

New Features

  • #519: Added support for filtering by specification item status.

Security

  • #556: Updated JUnit, PlantUML, Jacoco Maven plugin and Central publishing Plugin dependencies to fix vulnerabilities

Refactoring

  • #552: Parameterized tests in TestSpecobjectImporter
  • #546: Replaced OsDetector with JUnit5's EnabledOnOs annotation.
  • #544: Replaced optional parameter with null check
  • #543: Made CliException a RuntimeException

Features

  • #554: Tag importer supports import from doxygen files
  • #553: Tag importer supports multiple covered IDs
  • #519: Filter imports by specification item status (draft, proposed, approved and rejected)

Release 4.5.0

Choose a tag to compare

@github-actions github-actions released this 01 Jun 13:42
86ce373

OpenFastTrace 4.5.0, released 2026-06-01

Code name: 10 years of OFT

Summary

OpenFastTrace just turned ten on GitHub. We are on Mastodon now: https://mastodon.social/@OpenFastTrace

In this release we added the option -h / --help to the command line. Also, the help message now prints the version of OpenFastTrace.

We also refactored the tests around the CLI starter to improve readability and maintainability and made getting the test coverage easier.

We added FXML to the list of supported file formats for the tag importer.

File extensions can now be handled by multiple importers. Importers have a priority order, the first importer that can handle a file extension will be used. Since the XML importer has a peek function to detect SpecObject files, it can decide not to handle an XML file, in which case the tag importer can take over.

When no importer factory is found for a given file format, the importer factory loader will now throw an exception that explains the likely cause. This is helpful in case OFT is used as a library with a custom classloader and thus does not have the right context.

Last but not least, we added the AGENTS.md file as the central entry point to guidance for LLM agents.

Features

  • #352: Tag parsing in XML documents
  • #503: Added -h / --help to the command line.
  • #506: Exception when no importer was found.
  • #524: Added version number to help text.
  • #533: Added AGENTS.md

Release 4.4.0

Choose a tag to compare

@github-actions github-actions released this 14 May 16:09
52e477b

OpenFastTrace 4.4.0, released 2026-05-14

Code name: Spec-driven Development Skill

Summary

In this release we added the OpenFastTrace Spec-driven Development Skill. The skill guides AI agents through turning a GitHub issue into a changeset plan that can be reviewed before it gets executed by the user. The process uses a spec-driven development approach backed by an OFT spec.

We also moved the skills to .agents/skills for best cross-vendor compatibility.

The tag importer now supports Kotlin script files (.kts).

Features

  • #507: Tag importer now support .kts files
  • #514: Added changeset skill

Documentation

  • #514: Added changeset skill

Release 4.3.0

Choose a tag to compare

@github-actions github-actions released this 07 May 14:08
e84aa61

OpenFastTrace 4.3.0, released 2026-05-07

Code name: Reverse specification skill

Summary

In this release we added the OpenFastTrace Reverse Specs Skill. The skill guides AI agents through reverse-engineering missing system requirements and design documentation from a project's user guide, tests, and source code.

The skill provides templates for doc/system_requirements.md, doc/design.md, and arc42-style design chapters. It also defines a user-guide-first workflow for capturing product intent, filling gaps from implementation evidence, and recording contradictions under Open Issues.

Features

  • #510: Added the OpenFastTrace Reverse Specs Skill for reverse-engineering missing specifications

Release 4.2.2

Choose a tag to compare

@github-actions github-actions released this 02 Feb 06:00
3ab07ed

OpenFastTrace 4.2.2, released 2025-02-02

Code name: SystemVerilog file support

Summary

In this release we added support for SystemVerilog files.

Dependency Updates

  • net.sourceforge.plantuml:plantuml:1.2026.01.2026.1
  • nl.jqno.equalsverifier:equalsverifier:4.34.3.1
  • org.junit.jupiter:junit-jupiter-api:6.0.16.1.0-M1
  • org.junit.jupiter:junit-jupiter-engine:6.0.16.1.0-M1
  • org.junit.platform:junit-jupiter-params:6.0.16.1.0-M1

Plugin Updates

Please note that plugin updates are only relevant if you want to build OFT. If you run OFT, no update is required.

  • org.codehaus.mojo:versions-maven-plugin:2.20.12.21.0

Bugfixes

  • #471: Add tag importer support for SystemVerilog files

4.2.1: Peek before you guess (.xml detection improvement)

Choose a tag to compare

@redcatbear redcatbear released this 01 Feb 17:08
ea05d33

This is a bugfix release. It addresses the problem that ReqM2 uses a generic .xml file suffix which led OpenFastTrace to treat any XML file as a ReqM2 file based solely on the extension. To avoid false detections, this version adds a peek function to the file type detection so that we no longer rely only on the file type/extension (#429).

Please note that due to an issue with our CI pipeline, this release was not deployed on Maven Central and GitHub on 2025-09-14 as intended. We are sorry for the inconvenience.

Bugfixes

  • #429: Add content peek to file type detection so .xml no longer implies ReqM2; prevents misclassification of arbitrary XML files

Release 4.2.0

Choose a tag to compare

@github-actions github-actions released this 22 Jun 12:22
e088239

OpenFastTrace 4.2.0, released 2025-06-22

Code name: Markdown code blocks

Summary

In this release we changed the behavior of the Markdown importer so that if we are inside a code block, no OFT specification items are found. This is a corner case, but we think that this behavior is what users would expect (#480).

We also added a whole section about understanding and fixing broken links between specification items to the user guide.

The new token oft:on|off allows switching off OFT parsing for certain text passages in Markdown and RST documents.

The Central Repository changed its deployment mechanism. We adapted the project accordingly.

Finally, we updated test dependencies and Maven plugins.

Features

  • #437: Upgrade build and test dependencies on top of 4.1.0
  • #480: Ignore specification items inside Markdown code blocks

Documentation

  • #427: Removed old CHANGELOG.md file and merged missing parts into release history.
  • #431: Documented "unwanted coverage" in user guide.
  • #449: Fix parsing past the end of a "needs" paragraph.
  • #440: Added Tag importer support for TOML files.
  • #442: Added support for JavaScript file extensions .cjs, .mjs and .ejs

Refactoring

  • #452: Migrated Deployment to the new "Central Repository" mechanism
  • #454: Fixed deployment to Maven Central

4.1.0: Third-party plugins

Choose a tag to compare

@github-actions github-actions released this 11 Aug 07:41
159a20e

OpenFastTrace 4.1.0, released 2024-08-11

Code name: Third-party plugins

Summary

This release adds support for loading third-party plugins from external JAR files. See the documentation for details:

The release also adds command line option --log-level that allows configuring the log level. Possible values are OFF, SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST, ALL. The default log level is WARNING.

The release also adds support for using Gherkin feature files with OFT, thanks to @sophokles73 for his contribution!

Features

  • #413: Added support for third-party plugins
  • #425: Add support for reading Tags from Gherkin feature files (@sophokles73)

4.0.2: Fix usability of HTML report

Choose a tag to compare

@github-actions github-actions released this 06 Jul 13:37
7b26b0e

This release updates the HTML report so that jumping to anchored tags does no longer hide the target section under the navbar. Thanks to @RobertZickler for fixing this!

The release also fixes some inconsistencies in the documentation and in error messages reported by @RobertZickler:

  • OFT now reports the exact name for unexpected parameters instead of removing dashes and converting it to lower case.
  • The user guide now also lists aspec as possible option for --output-format
  • The user guide now shows the correct option --report-verbosity instead of --verbosity-level
  • The user guide example command line for generating an Aspec tracing report fixes a typo in the reporter name aspac instead of aspec

Bugfixes

Release 4.0.1: Allow numbers after dots in specification item names

Choose a tag to compare

@github-actions github-actions released this 22 Jun 12:10
63c846a

This release allows using specification item names with dots . followed by numbers, e.g. req~SR.AB.1.1.1~1. We also updated the relevant section in the user guide. Thanks to @RobertZickler for reporting this!

Bugfixes