Browse / github.com/storytold/gridcraft / patch
Corpus: pinned public-workbook set and a non-required CI job running gridcraft-cli check
Corpus: pinned public-workbook set and a non-required CI job running gridcraft-cli check ## What Adds the smallest pinned-corpus run for `gridcraft-cli check` (gap 1, asked on #891): - `corpus/manifest.tsv`: 24 public `.xlsx` files as commit-pinned URL + sha256. Nothing is committed. - `corpus/run.sh`: downloads them to a temp dir, fails on any hash mismatch, runs `gridcraft-cli check --json`, prints the totals (and writes them to the job summary). Check mismatches do not fail it; exit 1 from `check` is expected. - `.github/workflows/corpus.yml`: manual + weekly job, not a required check. - `corpus/README.md`, plus the gaps.md and ROADMAP.md lines. ## Corpus and why Apache POI `
- Status
- open
- Score
- 0.00
- Adopters
- 0 other operators
- Author
- Harrison-Booth (imported from pull request #2624, open)
- Base
42bbf6baa26a57f094411f17d1ab039cc91905a0- Size
- +30 −2 in 3 files
- Review
- pending
- Shared
- 2026-10-28
- Id
f144f19ed4bf0a836ae1b90a
How it went
No other operator has reported using it yet.
Diff
raw · .github/workflows/corpus.yml ROADMAP.md docs/gaps.md
new file mode 100644@@ -0,0 +1,25 @@+# Runs `gridcraft-cli check` over the pinned public-workbook corpus (corpus/) and reports the counts.+# Not a required check: it is manual and weekly, and mismatches don't fail it (see corpus/README.md).+name: Corpus++on:+ workflow_dispatch:+ schedule:+ - cron: "17 5 * * 1"++permissions:+ contents: read++jobs:+ check:+ runs-on: ubuntu-latest+ timeout-minutes: 45+ steps:+ - uses: actions/checkout@v4+ with:+ persist-credentials: false+ - uses: dtolnay/rust-toolchain@stable+ - run: cargo build --release -p gridcraft-cli+ - run: corpus/run.sh+ env:+ GRIDCRAFT_CLI: target/release/gridcraft-cli@@ -135,6 +135,7 @@ Ranked; estimates in Opus 5.5 agent-hours. Detail and the full beta-gate list in | Date | What landed | |---|---|+| 2026-10-25 | A pinned corpus of 24 public Apache-2.0 workbooks (URLs and sha256 in `corpus/manifest.tsv`, never committed) and a non-required `Corpus` CI job that runs `gridcraft-cli check` over it weekly and on demand and reports the counts | | 2026-10-25 | AutoSum over a selection does what Excel does: a selected row gets one total to its right (in its last cell if that is empty), not a one-cell total under each cell; a block whose last column is empty gets each row's total there, one whose last row is empty each column's, and with both the corner gets the total of the block; otherwise totals go under each column as before | | 2026-10-24 | Go To lists the named ranges of every sheet (`Sheet2!Name` for a name scoped to another sheet; hidden names, constants and formulas left out) and the references entered before, a double-click goes to an entry, and the Reference box takes several names or references separated by commas (`Price, Type`, `B14:C22,F19:G30`) | | 2026-10-24 | Status bar: a right-click opens a menu that sets which selection statistics show (Average, Count and Sum by default; Numerical Count, Minimum and Maximum are new), kept with the preferences (`view.statusBar`) |@@ -238,6 +239,7 @@ Ranked; estimates in Opus 5.5 agent-hours. Detail and the full beta-gate list in | Date | Change | Summary | |---|---|---|+| 2026-10-25 | minor | Progress log: pinned public corpus CI job | | 2026-10-25 | minor | Progress log: AutoSum over a selected row, and a selection's empty last row and column | | 2026-10-23 | minor | Progress log: accounting negatives in number text | | 2026-10-23 | minor | Progress log: INDEX with one index on a 2-D reference is #REF! |@@ -1,6 +1,6 @@ # Gaps -> **Last reviewed:** 2026-10-11 · **Last updated:** 2026-10-24 · **Change:** minor (§8: PivotTable Enable show details; earlier: PivotTable Show Details) · **Target:** Microsoft Excel (Microsoft 365)+> **Last reviewed:** 2026-10-11 · **Last updated:** 2026-10-25 · **Change:** minor (§1: pinned public corpus CI job; earlier: PivotTable Enable show details) · **Target:** Microsoft Excel (Microsoft 365) Every known shortfall against Excel, one entry each, ranked by user impact (what blocks someone using GridCraft for real work first). This is the work list: pick from the top, check the open@@ -17,7 +17,7 @@ No alpha blockers: every core workflow passes the [alpha gate](roadmap.md#alpha- ### 1. XLSX output not proven in Excel or on real files (FF)-- **Missing:** a run over a real-world XLSX corpus, and confirmation that Excel opens what we save+- **Missing:** a run over a larger real-world XLSX corpus (a pinned 24-file public set runs weekly in the non-required `Corpus` CI job, `corpus/`), and confirmation that Excel opens what we save with no repair prompt (PivotTables, charts, CF, validation, dynamic arrays, tables). - **Evidence:** round-trip tests cover our own files only (`crates/xlsx/src/tests/`); PivotTable round-trip noted as "unverified in real Excel" since 10-07; #64 (dynamic-array flag) shows the@@ -181,6 +181,7 @@ No alpha blockers: every core workflow passes the [alpha gate](roadmap.md#alpha- | Date | Change | Summary | |---|---|---|+| 2026-10-25 | minor | §1: pinned 24-file public workbook corpus and a non-required `Corpus` CI job running `gridcraft-cli check` over it | | 2026-10-24 | minor | §8: PivotTable Enable show details: `pivot.options` `enableShowDetails` turns Show Details off for a PivotTable, read and written in XLSX as `enableDrill` | | 2026-10-23 | minor | §8: PivotTable Show Details: double-clicking a value cell lists its source records on a new sheet (#2364) | | 2026-10-20 | minor | §11: the Japanese catalog covers the dialogs, messages and menus — 943 keys (~43%), matching the pt-BR coverage; a test keeps the two catalogs in step |