Skip to content

0.11.2: pandas converters found by either name, what reproducible promises, docs/design.md, IM cross-check - #61

Merged
s4mstruthers merged 1 commit into
mainfrom
housekeeping/converter-names-reproducibility-docs
Oct 13, 2026
Merged

s4mstruthers merged 1 commit into
mainfrom
housekeeping/converter-names-reproducibility-docs

Conversation

@s4mstruthers

Copy link
Copy Markdown
Owner

What this does

  • Fixes a real bug in the Science boxes. Describe log and Correlate failed with No converter from EventLog to pandas.DataFrame whenever pandas was installed: converters were registered under the defining module (pandas.core.frame.DataFrame) and asked for by the public name (pandas.DataFrame). openprocess/flow/convert.py now resolves both names to the class, for sources and targets, and still imports nothing until a conversion is asked for. Also covers pandas 3, which reports its classes under pandas. The new test uses json.JSONDecoder, so it runs with nothing optional installed. (test_describe_log_through_the_converter is skipped in CI because pandas isn't installed there, which is why this went unnoticed.)
  • docs/workflows.md — "What reproducible promises". The badge and --check mean fingerprints equal to the record's; three tiers (same machine / same lockfile / another platform) say how far that travels; and what is and isn't in the record.
  • docs/design.md — the problem, the claim, the three ideas, the decisions that follow from them, and the open ones (the .cpnflow name, what the 1.0 freeze covers).
  • tests/cross_check_inductive_miner.py — both Inductive Miners on 406 logs, trees compared after sorting × and ∧, the IM guarantees checked on every log, precision of both models where they differ. Not collected by pytest (it needs PM4Py, and the two are allowed to differ); it is a report. Baseline in its docstring: guarantees hold 406/406, 369 identical, 37 differ (30 less precise), always the sequence-cut split. The miner itself is not changed here.
  • CHANGELOG gets a 0.11.2 section. __version__ and CITATION.cff are not bumped; that is the release step.

Checked

  • Non-GUI suite with pandas, numpy, scipy, matplotlib and PM4Py present: 295 passed (the live PM4Py cross-check included).
  • GUI suite offscreen: 162 passed; test_autosave_that_cannot_write_says_so_once fails only because the container runs as root (chmod cannot make a folder read-only for root) and passes in CI.
  • python -m openprocess.references output unchanged.

🤖 Generated with Claude Code

https://claude.ai/code/session_01CxRhDznFAbwU3x78bugqqR


Generated by Claude Code

…mises, docs/design.md, IM cross-check

Describe log and Correlate failed with "No converter from EventLog to
pandas.DataFrame" whenever pandas was installed: the converter was
registered under the defining module (pandas.core.frame.DataFrame) and
asked for by the public name. The registry now resolves both names to the
class, for sources and targets alike, without importing a package until a
conversion is asked for; pandas 3, which reports its classes under
"pandas", is covered the same way. A test using json.JSONDecoder checks it
with nothing optional installed.

docs/workflows.md says what the badge and --check promise, in three tiers,
and what is and is not in the record. docs/design.md is the why: the
problem, the claim, the three ideas and the decisions that follow.
tests/cross_check_inductive_miner.py runs the built-in Inductive Miner and
PM4Py's on 406 logs and reports where they differ (baseline in its
docstring and in the changelog). __version__ is not bumped here.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CxRhDznFAbwU3x78bugqqR
@s4mstruthers
s4mstruthers merged commit cc8ad96 into main Oct 13, 2026
7 checks passed
@s4mstruthers
s4mstruthers deleted the housekeeping/converter-names-reproducibility-docs branch October 13, 2026 07:11
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