Skip to content

Reader 0.2: repair release blockers, consolidate ready issues and roadmap - #276

Open
andy-zen-dev wants to merge 5 commits into
masterfrom
scrip-site-two-full-work-gallery
Open

andy-zen-dev wants to merge 5 commits into
masterfrom
scrip-site-two-full-work-gallery

Conversation

@andy-zen-dev

Copy link
Copy Markdown
Collaborator

Closes #275. Closes #269. Closes #273.

Delivered scope

One successor PR for the owner's 2026-10-18 cleanup. #268 and #272 are already merged, closing #267/#271; their accepted code and current master are preserved. The remaining executable product issues (#269/#273) are integrated here. #265 remains a separate administration/branch-deletion capability blocker.

  • Adopt the existing Reader implementation from Reader 0.2: integrated literary analyzer, installable CLI and five-route site #274: installable library/CLI, 29 metric rows, bounded/path-private local UTF-8 analysis, JSON/HTML/CSV, readable labels, diagnostic and canonical site commands. No public API subset rewrite.
  • Fix the actual site_renderer.py indentation regression on its complete, hash-verified current file.
  • Recover and harden the pending crash-safe publisher patch: stable nonblocking kernel lock released after process death, symlink/special-file rejection, atomic replacement and no-clobber first publication. Five new bounded regressions; all original tests retained.
  • Reuse the existing unfinished gallery branch rather than create another branch. Preserve its two-work source-free module/tests; add documentation/examples and installed-package deterministic HTML/CSV verification. The gallery is still offline, not an undisclosed extra Pages route.
  • Add early CI syntax verification, build/cache ignores, a compact refreshed queue and project/ROADMAP.md with concrete acceptance. Reconcile the owner's delivery-first correction in AGENTS/manifest without changing scientific gates.

Preservation and scope checks

Authoring head: d81aa3a46c0125561a1ba610d51a6cf9f06df0c4.
Parents preserve gallery c411e29030e7e778f99cd9689441d348f75a7715, Reader 62e6c078cb70ec77775007a1668fa0c3ede4f5fa, and current master 9412ee54ab1a56c7c81f6ff4d290e39d83f49630. Native comparison is ahead-only, with no deleted files. The former README is retained byte-for-byte as RESEARCH_INDEX.md. No corpus/benchmark/showcase JSON, publication manifest or morphology/dictionary dependency pin changes.

#270/#274 are retained as provenance pending successor acceptance; this is the single active repair path, already claimed from #273 through #275. They must not be merged independently with their old findings. No new branch, force-push, scheduler/admin/access/visibility change, registry publication or Pages activation.

Verification performed before authoring

  • Original complete renderer blob 74a79963b06777ab4b15145b541b7b06a59d7aed reproduced syntax failure; corrected file compiles and uploaded blob 8a7c4f468a0a0290cd5a678bf08b44ac0cd482c0 matches tested local bytes.
  • Original publisher blob f99fb10f4f19b3b363a3accbe68212feacf66c44 reproduced two process-death failures.
  • Actual Linux filesystem/subprocess publisher suite: 11/11 PASS (six existing plus five new). Deadlines prevent test hangs.
  • Local full checkout: unavailable because Git DNS failed. These focused tests are not a full-suite claim.

Required later acceptance

Inspect actual new exact-head CI: complete canonical suite, installed wheel outside checkout, installed gallery rebuild and deterministic canonical Pages build. Unknown/skipped/stale checks are not PASS. Inspect real desktop/mobile route behavior when permitted; visual acceptance is NOT_VERIFIED at creation. A static build is not DEPLOYED/LIVE_VERIFIED. Do not merge this substantively authored repair in the same run.

M2 remains 0/5. No new corpus admission, altered rounding/tolerance, fabricated metric or FantLab parity claim.

Refs #273, #267, #269, #271. Integrate the exact reviewed implementations
from #268 (50fbb9b), #270 (752f3c4) and #272 (610dc80) into one master-based
delivery. Preserve the canonical public API and all historical artifacts.
Add installable analyze/diagnostic/site commands, source-free CSV, reader
labels, numeric fidelity, bounded input and private CLI errors. Keep the
Pages deployment interlock and scientific acceptance gates unchanged.
Add focused regressions and full-repository installed-package CI.
No same-run merge acceptance; old PRs remain until this integration passes.
Refs #273. The full 736-test suite and Pages double build passed, but
installed smoke used a temporary output outside the allowed repo/build
tree. Put only derived site output under a unique disposable build child;
keep installed imports and manuscript processing outside the checkout.
Do not relax the renderer's output safety checks.
Refs #273. Preserve last valid site on write failures, fail closed when
atomic replacement is unavailable, and reject competing first writes.
Refs #275, #269, #273. Preserve the existing gallery, Reader integration,
and accepted current master histories. Correct the verified full renderer
indentation and replace the stranded mkdir lock with stable nonblocking
kernel locking. Add five bounded crash/special-file/inode regressions;
all eleven publisher tests pass locally. Preserve existing tests and add
installed-gallery deterministic CI. Reconcile owner delivery selection
and the roadmap without changing scientific, licensing or deployment gates.

Hosted full-suite, installed wheel and real-route visual acceptance are
not claimed by this authoring commit. No same-run merge acceptance.

Copy link
Copy Markdown
Collaborator Author

Exact-head verification — 2026-10-18

Head d81aa3a46c0125561a1ba610d51a6cf9f06df0c4: 23/23 PR workflow runs completed successfully, including the pinned pylem provider. Native PR readback is OPEN, non-draft, mergeable; no merge performed.

  • Reader package run https://github.com/drevendev/Scriptorium/actions/runs/39113330709, job 117633895631: complete canonical suite 759 tests / OK, early syntax check, wheel build/install in a clean environment, isolated installed CLI/public-API smoke (29 metrics, JSON/HTML/CSV, historical report and canonical site), and installed gallery HTML/CSV double-run byte comparison all passed. Log confirms checkout of this exact head. Wheel SHA-256 ef13f3009ed999a199a5b6e87656832eb9cc9b8610c91e06032f07e7eb04d9a2 identifies this build, not a claim of reproducible wheel bytes.
  • Pages run https://github.com/drevendev/Scriptorium/actions/runs/39113330745, build job 117633896064: complete suite, canonical site build, deterministic rebuild and upload passed. Deploy job was SKIPPED on this PR; not a deployment pass.
  • Downloaded actual CI artifact 12131506486; archive SHA-256 matches provider 0afc8b2ba0d8b900b935c12835f3559298dbb259eca7917c25eecba282a370a7. Verified six HTML pages (homepage plus five evidence routes), 23 internal references/fragments, one main/h1 per page and no scripts. These are the real CI-generated files, not a mockup.
  • VISUAL_NOT_VERIFIED: Chromium's ordinary HTTP navigation to the locally served artifact returned net::ERR_BLOCKED_BY_ADMINISTRATOR. No alternate file/in-memory/policy-bypass path was attempted. No desktop/mobile or live-route acceptance is claimed.

The full hosted suite and installed-package checks are now verified, superseding the authoring-time NOT_RUN/PENDING scope. Later fresh acceptance must inspect the new diff and remaining presentation scope before merge; this authoring run does not self-approve or merge its repairs. No corpus/benchmark gate or Pages activation changed; M2 remains 0/5.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant