feat: add optimize-sorting Python workflow with gap detection and I/O profiling - #1435
Closed
colehurwitz wants to merge 2 commits into
Closed
colehurwitz wants to merge 2 commits into
colehurwitz wants to merge 2 commits into
Conversation
… profiling - Create .factory/workflows/optimize_sorting.py encoding the full 31-node, 39-edge optimize-sorting workflow graph as a project-local Python workflow - Change 1 (Gap Detection): Enhanced researcher_profile_pipeline prompt with gap analysis comparing speed_seconds.mean to sum of stage means (10% threshold), outputting gap_analysis JSON section - Change 2 (I/O Profiling): Modified FnNode commands for lock_baseline, run_benchmark_t*, and confirm_benchmark_t* to capture /proc/self/io before/after benchmark runs with graceful fallback when unavailable - Add 61 tests covering workflow structure, node types, gap detection prompts, I/O capture in benchmark scripts, graceful fallback, and graph validation
Sentrux Quality ReportAbsoluteDiff (vs base branch) |
The optimize-sorting workflow's SKILL.md was stale after the Python workflow definition was added (93d2cd4). The export-skills output at workflow-optimize-sorting/ now includes gap detection and I/O profiling content matching the workflow definition. Also refreshed the skills/ cache (gitignored) and reverted unrelated workflow-design-v2 SKILL changes. Generated files exceed 500-line limit (SKILL.md: 2521 lines, SKILL.annotations.yaml: 805 lines) — splitting would break export-skills tooling.
Collaborator
Author
SKILL.md Regeneration FixAdded the regenerated Before: skills cache SKILL.md (59KB, 841 lines) — no gap detection or I/O profiling content Also reverted unrelated |
Collaborator
Author
|
Superseded by unified PR — see #1443 |
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.
Changes
New file:
.factory/workflows/optimize_sorting.py— Project-local Python workflow definition encoding the full optimize-sorting workflow graph (31 nodes, 39 edges) with two new capabilities:researcher_profile_pipelineprompt with gap analysis that comparesspeed_seconds.meanto the sum of stage means, using a 10% threshold, and outputs agap_analysisJSON section identifying unexplained overheadlock_baseline,run_benchmark_t*, andconfirm_benchmark_t*to capture/proc/self/iobefore and after benchmark runs, computing read/write byte deltas with graceful fallback (available: false) when procfs is unavailableNew file:
tests/test_optimize_sorting_workflow.py— 61 tests covering: