manual-generate-release: נכס library_stats.json (ספרים/קישורים/שורות) בכל רליס DB - #41
Merged
Merged
Conversation
… בכל רליס DB צעד חדש "Compute library stats (advisory)" אחרי דחיסת ה-DB: מריץ שאילתת json_object על build/seforim.db (sqlite3 -init /dev/null -readonly) וכותב build/library_stats.json בשורה אחת. "Stage release assets" מעתיק אותו ל-release-staging לפני חישוב build_provenance.json, כך שהוא נכס רגיל: רשום עם sha256 ב-provenance, עולה באותה לולאת draft → verify → publish, ובדיקת ה-reuse (provenance assets + 1) ממשיכה להתקיים. הצעד מייעץ בלבד: sqlite3 חסר, שאילתה שנכשלה, תוצאה בצורה לא מדויקת או db_version שאינו של הבנייה הזו — כולם ::warning:: ו-exit 0 בלי להשאיר קובץ, והרליס יוצא בדיוק כמו קודם. טסט חוזה חדש ב-test_manual_release_workflow. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Y-PLONI
force-pushed
the
feat/library-stats-asset
branch
from
September 22, 2026 22:20
c25324a to
baeab11
Compare
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.
מה
צעד חדש Compute library stats (advisory) ב-
manual-generate-release.yml, אחרי דחיסת ה-DB. הוא מפיקlibrary_stats.jsonבשורה אחת:{"schema_version":1,"db_version":28,"books":7367,"links":5812829,"lines":6031484}ה-release מקבל אותו כנכס רגיל: הקובץ מועתק ל-
release-stagingלפני חישובbuild_provenance.json, ולכן הוא רשום שם עם sha256 ועולה באותה לולאת draft → verify → publish.למה
אזור "אוצריא במספרים" בדף הבית של אתר אוצריא מציג ספרים, קישורים בין ספרים ושורות. הוא קורא את הקובץ הזה מה-release היציב האחרון (
vNN-), בלי להוריד את ה-DB (1.4GB). ל-v28 הקובץ כבר הועלה ידנית.בטיחות
db_versionשאינו של הבנייה הזו גורמים ל-::warning::, יציאה בקוד 0 ובלי שנשאר קובץ. ה-release יוצא בדיוק כמו קודם.sqlite3 -init /dev/null -readonly -bail, כך שקובץ~/.sqlitercעל ה-runner לא ישנה את הפלט.otzaria_library_updater,Otzaria_Offline_update,LinkerToOtzariaו-build-library-index.ymlבוחרים נכסים לפי שם מדויק או regex. אף אחד מהם לא יאסוף.jsonחדש בטעות.test_library_stats_are_an_advisory_staged_assetבודק את סדר הצעדים ואת כללי הצעד המייעץ, ומריץ את ה-SQL עצמו על DB קטן לבדיקה.test_manual_release_workflowו-test_ci_workflowsעוברים.לתשומת לב (קיים מקודם, לא נגרם כאן)
build-library-index.ymlמעלה אתotzaria-library-index.*ל-release אחרי הפרסום. זה כבר שובר את בדיקת ה-reuse (provenance assets + 1) לכל release שעבר אינדוקס, למשל v28.🤖 Generated with Claude Code