Repository navigation
Close the Python 4.7 parity gaps in the Rust binary - #7
Merged
Merged
Conversation
Wiki lookup, symbol checks, the daemon, init, CLI flags, MCP prompts, and cycle ranking now follow the archived package where that was the intended behaviour. JSON stays the default. scripts/benchmark_parity.sh records a measured comparison with commit 24812ef. Co-authored-by: Aron Amos <IronAdamant@users.noreply.github.com>
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.
Summary
The Rust binary now covers the Python 4.7 behaviours that the parity review found missing, without giving up the Rust import map or the warm
update-mapsskip. JSON stays the default CLI output.issuesstill returnssuggest-nextactions, andlibrary.mdstays the short tree, asskills/run.mdalready says.<file>.wiki.mdthroughdocs/wiki,docs,wiki,documentation, and.wiki.__all__lists, tuples,+=, comments and strings skipped, decoratedasync def,.pyi). JS/TS exports ignore comments and strings.wikifier.pid,daemon.log, anddaemon_heartbeat.json, and supports logs, restart, and install/uninstall (systemd, launchd, Task Scheduler).startrefuses onlyblockedunless--force.initwrites the Python starter files and honours--no-copy.record-changes --reasonsaccepts a JSON object orPATH=REASONlines. MCP accepts a reasons object.list-paths --depth/--recursive/--max-files,verify-wikis --limit,stale-wikisdirectory and limit,--directoryon bootstrap/health/suggest-next,health --summary/--format,cycles --no-analysis/--max-items.suggest-nextemitsreview_low_confidence_edgeswhen a non-dynamic resolved edge is below 0.65. The count is updated only for files that were parsed.seed-source-hashesrecords hashes on Green rows and does not change status.heal-stubsdefaults to 350 characters.monitored_paths.txtwhen that file lists real paths. Absent, empty, or bare.still seeds every mapped file.- path: message.--textprints prose. Cycle JSON includes severity and a reverse-dependency ranking.scripts/benchmark_parity.shcompares this release build with Python at24812ef. Results are inscripts/benchmark_results.md.Benchmark (median ms, 5 runs, min–max)
Machine: Intel Xeon, 4 cores, 15.6 GiB RAM, Linux 6.12.94+, Python 3.12.3, rustc 1.83.0. Large tree is Django
django/+tests/(2939 Python files).Resolved file edges: small 2/2, medium 44 Python and 98 Rust, Django 9074/9074. Cold peak RSS (kbytes): Python 27544 / 28392 / 97564, Rust 3384 / 4424 / 40012. Release binary 2197456 bytes.
Tests
cargo test— 65 passed.cargo fmt --checkandcargo clippy --all-targets -- -D warningsare clean. NoTODO,FIXME,todo!, orunimplemented!undersrc/ortests/.