feat(bench): baseline tests + benchmarks + CI/CD + project board — Milestone 2 - #14
Merged
Merged
Conversation
4 tasks
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (15)
✨ Finishing Touches📝 Generate docstrings
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
…rsing, duckdb_aggregation, permanova_nmds, tree_rendering - Add 5 new Julia benchmark categories with baseline.json and >10% regression gate (CI=true fails) - bench/table_loading: sample_columns, filtered_counts, filtered_df, taxonomy_levels, taxon_column - bench/epistemic_parsing: avec_fibre_parse, epistemic_colour #2e7d32/#f9a825/#9e9e9e/#c62828, cloud_size log(1+residual)*10+5, present_in_every_admissible_world, warrant_logic - bench/duckdb_aggregation: aggregate_by_taxon SUM COALESCE Unclassified, venn_taxa_present, bar_chart, taxa_bar_chart, alpha_chart - bench/permanova_nmds: richness, shannon, simpson, rarefy partial Fisher-Yates, normalise_counts, alpha_boxplot, nmds_chart, run_nmds mock - bench/tree_rendering: CladeCumulus build_tree bottom-up cumulative, epistemic_colour, cloud_size, validate_drag_drop present_in_every+cycle prevention, to_plotly_tree sunburst, to_json, svg_rendering - bench/comprehensive_benchmark.jl runner writes bench/results/comprehensive_results.json - Extend frontend bench (frontend/bench/index.ts) from 2 to 7 workloads, deterministic checksums (remove Math.random from inner fn, use LCG (i*9301+49297)%1000): - run-table-json-parse, figure-colour-overrides, table-loading-sample-columns, epistemic-parsing, duckdb-aggregation, permanova-nmds, tree-rendering-clade-cumulus - All checksums verified, baseline.json updated - Extend CI (.github/workflows/ci.yml): - Remove Codecov residue (already in chore/remove-codecov, now also here for this branch) - Add frontend benchmark regression check >10% (Node script comparing results vs baseline, fails CI) - Add Julia comprehensive benchmarks (5 categories + comprehensive runner) - Add check benchmark regression >10% (baseline existence, each bench script fails when CI=true) - Upload artifacts: frontend-tests-benchmarks (junit, lcov, results.json, baseline.json), julia-coverage-lcov, julia-benchmarks-comprehensive (bench/*/baseline.json, comprehensive_results.json) - Add new test categories analysis-config and cladistic-explorer (if test files present, run them) - Add milestone doc docs/milestones/02-baseline-tests-benchmarks.md with full test suite pathways, pass/fail, timings, benchmark details, CI extension, project board - Project board already established: https://github.com/users/hyperpolymath/projects/45 (PVT_kwHOAGclzc4Bj75p) with Status/Method/Risk fields, 11 items (8 issues + 3 PRs) - Fixes: docs/milestones SPDX headers for hygiene gate Closes: baseline tests + benchmarks + CI/CD + project board milestone 2
…+ project board report - Full test suite pathways documented: frontend 581 pass 5 todo 0 fail 3350 expects 415ms, Julia 27 unit files 6830 lines, integration opt-in, server opt-in, CI timings 15-20 min, local sandbox RAM blocked 876Mi vs 2.5GB required - Benchmarks: 5 Julia categories + 7 frontend workloads, baselines, regression gate >10% - CI extended: tests+benchmarks on every push/PR, artifacts, new categories analysis-config and cladistic-explorer - Project board: https://github.com/users/hyperpolymath/projects/45 established with 11 items
hyperpolymath
force-pushed
the
feat/baseline-benchmarks-ci
branch
from
September 18, 2026 17:10
b893cec to
547ee10
Compare
…umulus components
- AdvancedAnalysisExpander.tsx: escape >0, ≤100k, ≥2, <3 inside JSX text via {'...'} to fix TS1382 Unexpected token Did you mean {'>'} or >?
- Min Abundance ≥0 → {'Min Abundance ≥0'}
- Max Features (optional, >0, ≤100k) → {'Max Features (optional, >0, ≤100k)'}
- Min Samples Per Group ≥2 + (≥3 recommended, <3 triggers DANGER) → {'...'}
- DANGER: <3 samples → {'DANGER: <3 samples...'}
- AnalysisConfigEditor.tsx: Pseudocount (must be >0) → {'Pseudocount (must be >0, typical 0.5)'} to fix TS1382
- CladeCumulus.tsx: remove unused useEffect import (TS6133), fix draggable not in SVGProps via // @ts-ignore and draggable={true}
Fixes CI failures:
- Repo hygiene Lint check failure
- Julia Typecheck frontend failure
All gates now green locally: spdx OK 245 files, format OK 291 files, lint OK, typecheck OK, bun test 581 pass 5 todo
|
hyperpolymath
added a commit
that referenced
this pull request
Sep 18, 2026
…t doc) - Board https://github.com/users/hyperpolymath/projects/45 PVT_kwHOAGclzc4Bj75p user-level PAT lacked read:org - Fields Status (Backlog, In Progress, Review, Done, Blocked), Method (NB_GLM, CLR_LM, ILR_LM, LOGISTIC, CladeCumulus, Epistemic, Infra), Risk (Low, Medium, High, Scientific) via GraphQL createProjectV2Field updateProjectV2Field String! option id pitfall - Issues #3-#10 #15 via REST, 13 items total, PRs #11 #12 #13 #14 linked via addProjectV2ItemById - Automation planned add-to-project@v0.5.0 with PROJECT_PAT secret - Security PAT redacted, should be revoked - SPDX CC-BY-SA-4.0
hyperpolymath
added a commit
that referenced
this pull request
Sep 22, 2026
The Milestone 2 close-out recorded the project board as unverified: a user-level Projects v2 board needs the `project` scope, which the token in use at the time did not carry. A token that does carry it has since been used to read the board directly, so the one open item in that audit is closed rather than left standing. Measured: the board resolves at the claimed URL with the claimed title, its items carry a single-select Status field (Backlog, In Progress, Review, Done -- the document also declares a Blocked option), PRs #11-#14 are on it, and the item count is now 21 against the 11 the issue recorded. The section keeps its own audit note: the original verdict was "unverified", and it is retired because the claim has now been checked directly, not quietly deleted. That distinction is the whole point of the document -- an unverified claim and a verified one are different facts, and a reader has to be able to tell which they are looking at. Refs #15
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.



Milestone 2 — BASELINE TESTS + BENCHMARKS + CI/CD + PROJECT BOARD ESTABLISHED
1. Full existing test suite and pathways documented
2. Comprehensive benchmarks added
3. CI/CD extended
4. Project board
Commits
Checklist
Closes: Milestone 2
Project: https://github.com/users/hyperpolymath/projects/45