Repository navigation
Conversation
…porter 8d0f92f (Keel #191) export_okf(folder, out_dir) and `python -m onlyworlds.okf FOLDER OUT-DIR`. Same behaviour as walk/okf_export.py, every review fix carried (every splitlines() break quoted, unreadable and dot-prefixed files noted and skipped, world.json time_range_current fallback and x_*/snapshot_* carry, api dropped, undeclared keys and unknown kinds noted, wrong-type and null links noted and left out, heading lines escaped, generated.by explained). On the example world the bundle is byte-identical to the branch's run on the same pinned dist (dist.23). The four conditions: dependencies = [] stays and PyYAML is the new `okf` extra (import onlyworlds loads no yaml; a test asserts it). The folder is read only through read_folder: skipped files, ignored dirs, duplicates and in_both_layouts become notes or the duplicate-id error. The schema comes from _schema.py: the generator now emits BASE_FIELDS, WORLD_FIELDS, SECTIONS, LINK_TARGETS, GENERIC_LINKS and EXTENSION_PREFIXES from the vendored walk (decode_schema) and lint_folder, cross-checked against FIELD_KINDS and GENERIC_PAIRS; known keys are push.NOT_SENT. The 24 tests ported to tests/test_okf.py on the vendored Hyperion, plus two for the conditions; the six mutants each fail at least one test. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…orlds-py/<version>); dotfiles and a null time_current are the reader's now (0.5.1), so the exporter's own dotfile handling goes Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…so `# x` and `\# x` no longer export the same (found by reading a bundle back, OKF sweep #360); a test watched failing with the old pattern Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… folder does not say who wrote them), in-prose ow:// references become links into the bundle (an absent id stays and is listed as unresolved); CHANGELOG and README say how the port now differs from the branch (Skeld's gap read for #360, h58 #6516). Four mutants, each failing a test Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…door); a test fails when a schema bump puts a frontmatter field on a key OKF defines (watched failing with supertype added to the set); the README's line is the sweep's: a valid OKF 0.2 bundle at one pinned commit Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
tmoosting
marked this pull request as ready for review
October 17, 2026 10:38
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
onlyworlds.okf: a world folder to an Open Knowledge Format (OKF v0.2) bundle, ported from schema-dist's okf-exporter (8d0f92f, Keel #191) into the package, which is its agreed home (h29 #6375, #6376).pip install "onlyworlds[okf]"(PyYAML). The core stays dependency-free;import onlyworldsloads no yaml.read_folder, the package's one folder reader.--checkpasses). No runtime walk import.generatedactor (OKF §7'shuman:rule against a folder that does not say who wrote what), in-proseow://references become bundle links, and a line that already begins with a backslash is escaped too. Each change has a test that a mutant fails.Draft until the Captain has read #360's scoping (B10, h29 #6453). Merge and release 0.6.0 then.
🤖 Generated with Claude Code