Skip to content

feat(rsync): directory pages and edge checks in the engine - #15

Merged
jshvn merged 2 commits into
mainfrom
josh/engine-pages
Oct 7, 2026
Merged

jshvn merged 2 commits into
mainfrom
josh/engine-pages

Conversation

@jshvn

@jshvn jshvn commented Oct 7, 2026

Copy link
Copy Markdown
Member

Moves ctan's directory pages (pages, index) and its read-back checks into the rsync engine, behind INDEX, PAGE_FOOT and CANARY, and adds a Content-Encoding assertion on the first non-empty .tar.gz. ctan, gnu and nongnu then carry no verbs of their own. tlnet is unaffected apart from the new smoke lines.

Order: katoptra/ctan#37 (ctan excludes the engine's pages) must merge before v2.3.0 is tagged. Without it ctan fails to parse once v2 moves (checked locally: "Found multiple tasks (pages) included by rsync"); with it, ctan and tlnet both parse against this branch.

Test plan:

  • examples/rsync: task check; task run -- task offline. run-pages/want is ctan's page set, drawn by ctan's pages, and the engine must match it byte for byte. smoke-refuses proves the page read-back fails without the page.
  • ci workflow green.
  • Live hosts send no Content-Encoding on install-tl-unx.tar.gz (checked before opening).

jshvn added 2 commits October 7, 2026 12:39
pages and index are ctan's, moved here; the closing paragraph is
PAGE_FOOT. run-pages/want was drawn by ctan's pages before the move.
@jshvn
jshvn merged commit 3854982 into main Oct 7, 2026
2 checks passed
@jshvn
jshvn deleted the josh/engine-pages branch October 9, 2026 01:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant