Skip to content

release: v1.0.0 First Stone#14

Merged
nullhack merged 5 commits intomainfrom
release/v1.0.0-first-stone
May 6, 2026
Merged

release: v1.0.0 First Stone#14
nullhack merged 5 commits intomainfrom
release/v1.0.0-first-stone

Conversation

@nullhack
Copy link
Copy Markdown
Owner

@nullhack nullhack commented May 6, 2026

Summary

  • Remove ~= (APPROXIMATELY_EQUAL) fuzzy match operator from specification, implementation, and documentation. The operator is now a parse error (FlowParseError) with exactly 6 valid operators: ==, !=, >=, <=, >, <.
  • v1.0.0 release: version bump to 1.0.0, changelog entry, README rewritten with PyPI badges and installation instructions.
  • Spec reference page (docs/index.html): comprehensive role-based layout with syntax reference, operator tables, and examples.

Changes

Feature: Remove fuzzy match operator

  • Remove APPROXIMATELY_EQUAL from ConditionOperator enum (flowr/domain/condition.py)
  • Add ~= detection in loader with clear FlowParseError (flowr/domain/loader.py)
  • Add feature tests in tests/features/remove_fuzzy_match_operator/ and unit tests in tests/unit/loader_test.py
  • Remove old fuzzy match tests (tests/features/condition_operators_test.py, tests/unit/condition_test.py)

Specification updates

  • docs/spec/flow_definition_spec.md: lists exactly 6 operators
  • docs/spec/glossary.md: operator table updated, "Fuzzy Match" entry retired
  • docs/spec/product_definition.md: removed fuzzy match references
  • docs/spec/system.md: updated condition operator references

ADR deprecation

  • docs/adr/ADR_20260426_fuzzy_match_algorithm.md: deprecation notice added
  • docs/adr/ADR_20260426_condition_inlining.md: cross-reference updated

Release artifacts

  • pyproject.toml: version bumped to 1.0.0
  • CHANGELOG.md: v1.0.0 entry
  • README.md: rewritten with clear purpose, audience, PyPI badges
  • docs/index.html: comprehensive spec reference page
  • docs/branding/branding.md: updated assets
  • docs/assets/logo.svg, docs/assets/banner.svg: refreshed

Traceability

@id Description Test
@id:remove-fuzzy-match-001 ~= operator is not recognized tests/features/remove_fuzzy_match_operator/condition_removal_test.py
@id:remove-fuzzy-match-002 ConditionOperator enum has 6 operators tests/features/remove_fuzzy_match_operator/condition_removal_test.py
@id:remove-fuzzy-match-003 Specification documents list 6 operators Spec docs updated
@id:remove-fuzzy-match-004 Fuzzy match ADR has deprecation note ADR updated

Commits (3)

  1. 4b79eca — chore: baseline remove-fuzzy-match-operator planning artifacts
  2. dd0665b — feat(condition): remove ~= fuzzy match operator
  3. d257e87 — release: v1.0.0 First Stone

nullhack added 5 commits May 6, 2026 09:33
Feature file, interview notes, DoD in product_definition.md, and test stubs
for removing ~= (APPROXIMATELY_EQUAL) operator.
Squash-merge feature/remove-fuzzy-match-operator.
Removes the ~= fuzzy match operator from condition evaluation,
updates loader to reject unknown operators, and migrates
loader behavior tests to unit tests.
- Feature file: @id:remove-fuzzy-match-NNN → @id:<8-char-hex>
- Test functions: test_remove_fuzzy_match_NNN → test_remove_fuzzy_match_operator_<hex>
- Docstrings: Given/When/Then → Given:/When:/Then: (with colons)
- README: remove BPMN/SCXML comparison paragraph
@nullhack nullhack merged commit 7232f35 into main May 6, 2026
7 checks passed
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