DEVELOPMENT JOURNAL · 2026

From the first Astro page to a bilingual publishing system with an editor, comments, subscriptions, reading statistics, and private articles.

Continuously updatedNewest milestones firstHistory stays visible
330commits
121milestones
20development days
37,805source lines
September 2026 — now
How source is counted

282 maintained source files across the public site, admin, Workers, scripts, and tests. Non-empty lines include comments; articles, dependencies, and generated output are excluded.

Filter by update type

121 milestones

The English room opens

4 updates
FixesOct 30, 2026

English mobile details

Added an English 404 and fixed language, Reading-menu, and navigation crowding at 320px and 390px. Article category changes no longer replay the whole title entrance, and English pages avoid horizontal overflow in both themes.

InteractionOct 30, 2026

Bilingual public interactions

Localized search, comments, subscriptions, private articles, Reading space, local history, public stats, and friend applications. Requests carry locale while continuing to use the existing data and service paths without migration or deletion.

WritingOct 30, 2026

Fourteen English editions

Published English editions of all 14 public Chinese articles while preserving their dates, covers, categories, and permanent article numbers. Search indexes, feeds, social images, and hreflang were localized, with original authors and open-source/third-party credits retained.

FoundationOct 30, 2026

The English room opens

Added an independent English public frontend under /en/ without changing Chinese URLs, with Home, Writing, Archive, Tags, Threads, Friends, Newsletter, Stats, Journal, and 404 pages. The language switch preserves the current destination; the admin remains Chinese for now.

A room that feels alive

8 updates
FixesOct 25, 2026

Publication state after a successful retry

Reconciled the latest commit and build attempt so old failure cannot replace later success; dismissing progress preserves the successful version marker.

DesignOct 25, 2026

Journal metrics and tag interaction

Placed journal metrics in one full-width row, made methodology expandable, added magnetic tags, sped the email cue to 2.4 seconds, and centered button icons.

FoundationOct 25, 2026

Public source-size metrics

Added build-time line counts and methodology for maintained front-end, admin, services, scripts, and tests, excluding content and generated/dependency code.

DesignOct 25, 2026

A breathing email-field edge

Moved the subscription cue to the input border, keeping geometry still, starting in view, and stopping when used with reduced-motion support.

InteractionOct 25, 2026

Continuity while reading

Added sliding category selection, linked text/cover response, subtle scroll-linked artwork, shared covers between pages, and a finite footer close.

InteractionOct 25, 2026

Depth for covers, controls, and friends

Added bounded pointer tilt and lifted-only theme-aware shadows, magnetic controls, natural return, and touch-appropriate behavior.

DesignOct 25, 2026

Upright title reveals

Made non-home display titles rise in reading order without squashing or flipping, preserving words, punctuation, wrapping, copying, and accessible names.

DesignOct 25, 2026

Motion on the original visual foundation

Kept layout, palette, and covers while expanding the opening to about 3.4 seconds, with stable page geometry and a reduced-motion fallback.

Recovery and reading

23 updates
FixesOct 24, 2026

Permanent article identities

Assigned numbers to articles rather than list positions, preserving them through filtering, paging, date changes, or deletion of other articles.

DesignOct 24, 2026

Article browsing and its own menu

Limited recent writing to ten nonfeatured pieces and added filtered/paged browsing plus a Writing menu for browsing and archive, keeping Reading separate.

WritingOct 24, 2026

Clearer Chapter One credits

Kept the retrospective unchanged and organized credits by project, author, source, license, and purpose.

WritingOct 24, 2026

Chapter One

Published a nontechnical retrospective of the project’s beginning, experiments, and choices, with upstream and author acknowledgments.

FixesOct 24, 2026

A visible refresh entrance

Removed the once-per-session limit so direct visits and refreshes show the opening, while internal navigation and reduced-motion behavior remain distinct.

DesignOct 24, 2026

Reading composition and ranking

Reorganized just the distribution and ranking sections while preserving the hero, metrics, methodology, and aggregation rules.

FixesOct 24, 2026

Readable journal filters

Removed the translucent sticky behavior, improved labels and selection contrast, and added mobile wrapping and accessible selection states.

DesignOct 24, 2026

An in-place opening

Introduced a gentle initial fade and finite cover/light response without moving the frame or replaying the full opening on internal return.

WritingOct 24, 2026

Completing the public journal

Recovered missing release, backup, security, scale, and interface work from actual commits while preserving old milestones and Beijing-time grouping.

FixesOct 24, 2026

Removing the refresh twitch

Stopped CSS and newer entrance code from translating the same content twice and prevented delayed panels jumping back to their start.

DesignOct 24, 2026

Bounded motion and feedback

Added entrances, menus, search, and contents feedback with cleanup and reduced-motion support, without an idle animated background.

DesignOct 24, 2026

Cover numbers and the mobile dock

Applied site-wide publication ordering and arranged mobile navigation as Home, Archive, About, Friends, and Journal, retaining top search.

DesignOct 24, 2026

A consistent public layout

Shipped locally reviewed refinements to featured text/cover balance, article contents, and newsletter typography and flow.

EditorOct 24, 2026

Reorganizing site settings

Consolidated settings into six sections with structured editing, separate saves, draft protection, and safer shortcuts.

FixesOct 24, 2026

Filter feedback and navigation alignment

Moved applied-filter notices to pagination and aligned the Reading label with neighboring navigation text.

SecurityOct 24, 2026

Private attachments on demand

Encrypted new attachments locally and required an unlocked reader action to fetch/decrypt, with relock cleanup and explicit limits for old public files.

SecurityOct 24, 2026

An isolated cloud recovery rehearsal

Verified encrypted export, decryption, restore, expiration, and repeated restores in temporary storage, then cleaned it up without restoring to production.

FoundationOct 24, 2026

Media on demand and cleanup

Deferred embeds, avoided unrequested audio/video downloads, and released playback/decryption resources on departure.

SecurityOct 24, 2026

Historical privacy and media review

Classified old comments by current article privacy and added explicit ownership/media review without automatic migrations or deletion.

InteractionOct 24, 2026

Larger management collections

Improved persistent cursors, incremental indexes, and merged directory paging without truncating results and claiming completeness.

SecurityOct 24, 2026

Private images and exact cursors

Encrypted newly inserted private images locally with the body and used exact pagination cursors for larger management lists.

FixesOct 24, 2026

Verification and query pagination

Gave verification/submission controls a full row and applied SQL filters and sorting before selecting a page.

SecurityOct 24, 2026

On-demand verification and rebuildable indexes

Added submission-time verification and disposable D1 query projections, keeping original KV/Git authoritative with defined fallbacks.

Performance, safety, and scale

16 updates
FixesOct 23, 2026

Mobile forms and private previews

Fixed form layouts and private-image cleanup; checked optional free services read-only without enabling paid resources when plan details were unknown.

InteractionOct 23, 2026

Paged friend links and discussions

Merged, filtered, and paginated friend records server-side; loaded public comment threads and replies in bounded pages.

SecurityOct 23, 2026

Public form and read protection

Unified origin, size, timeout, and frequency checks; reused count/ranking snapshots and made counting read-only when a device marker cannot be saved.

FoundationOct 23, 2026

Runtime source modules

Split the admin and two Workers into maintainable source sections and verified generated entrypoints against those sources.

SecurityOct 23, 2026

Private editing and historical ownership

Cleared editor/decryption state on departure or relock and added explicit historical-comment review instead of guessing ownership.

EditorOct 23, 2026

Admin detail, template drafts, and diagnosis

Unified status feedback, preserved mail-template drafts, and added local diagnosis without uploading private content or confusing diagnosis with publication.

FoundationOct 23, 2026

Image and page budgets

Defaulted images to lazy loading, reserved known dimensions, and checked script/style/media/page sizes without blocking writing merely because the library grows.

DesignOct 23, 2026

Reading hierarchy and home-page order

Unified spacing, type, focus, and short feedback, reducing repeated frosted surfaces and clarifying writing, threads, Now, subscription, and metrics.

FoundationOct 23, 2026

Comment and subscriber snapshots

Reused bounded, complete read indexes to avoid rescanning on every page, with explicit expiration, failure, and limit feedback.

EditorOct 23, 2026

A unified admin workspace

Aligned desktop/mobile navigation, searching, filters, pagination, bulk actions, export, and refresh feedback across management lists.

SecurityOct 23, 2026

Offline recovery and private boundaries

Rehearsed recovery without production access and tightened encrypted-body and unbound-comment access without changing original comments.

FoundationOct 23, 2026

Route-owned styles and release diagnosis

Separated public/admin CSS and loaded page-owned styles by route, with read-only build-history diagnosis.

FixesOct 23, 2026

Search and soft-navigation fixes

Added multi-word search, composition-safe input, keyboard controls, fresh results on fast Enter, and revalidation of navigated HTML.

FoundationOct 23, 2026

On-demand front-end features

Separated public features into modules, unified lifecycle handling, canceled departed-page work, and preserved reading history.

FoundationOct 23, 2026

Encrypted backups and quota diagnosis

Added scheduled/manual backups and distinguished rate limiting from exhausted daily allowance, including reset-aware scheduling and honest failure states.

EditorOct 23, 2026

Scaling article and release management

Improved indexing, grouped search, bulk management, and cross-device publication history; hidden pages stop unnecessary queries.

Connections and reliability

9 updates
SecurityOct 22, 2026

Separate admin storage and recovery

Separated operational admin state while preserving comments and subscriptions, and added encrypted backups, integrity checks, and recovery preparation.

FoundationOct 22, 2026

Publication states match reality

Bound tasks to exact commits and deployment results, distinguished saving from going live, and made notification delivery recoverable.

FixesOct 22, 2026

Escaping stale page caches

Fixed long-lived Service Worker navigation caches and established a basis for checking subsequent page updates.

WritingOct 22, 2026

Thinking about vibe coding

Published an essay on judgment, verification, and responsibility as coding barriers fall, and refined the friend-page heading.

FixesOct 22, 2026

Friend-link saves and build progress

Separated saving from notifications to avoid blocking dialogs and added actual build states with cross-page recovery.

InteractionOct 22, 2026

Friend-link email and publication

Connected editable application/review/offline templates and published approved directory data through GitHub JSON and Pages builds.

InteractionOct 22, 2026

Friend directory and applications

Added public search, categories, random discovery, applications, region records, and moderation, alongside direct admin management.

DesignOct 22, 2026

Consistent admin selectors

Replaced native dropdowns with custom selection dialogs and fixed the classification of older private comments.

FoundationOct 22, 2026

Mail templates and allowance cards

Added editing, previews, and reset-to-default for all mail types; moved full allowances into settings and kept compact daily cards elsewhere.

Discussion and management

8 updates
EditorOct 21, 2026

Article management and feature picker

Added privacy/category filters, ordering, pagination, and a dedicated searchable featured-article dialog.

DesignOct 21, 2026

Contact details and independent locations

Displayed the contact address beside its mail link and separated home, Now, and About locations.

FoundationOct 21, 2026

Daily email allowance guard

Reserved the final daily send for a configurable warning address, then paused further ordinary consumption.

InteractionOct 21, 2026

Private article discussions

Allowed comments after unlocking, separated access credentials, and added a dedicated private-comment admin category.

FixesOct 21, 2026

Contents order and reading progress

Kept H2/H3 contents in body order and removed the article’s top progress bar, retaining the lower-left reading ring.

FoundationOct 21, 2026

Comment and subscriber administration

Added overview data, full-text search, status filters, ordering, pagination, CSV export, and a resubscription review queue.

InteractionOct 21, 2026

Approval for resubscription

Unsubscribed addresses must request restoration, receive author approval, and confirm again before receiving updates.

FoundationOct 21, 2026

Search discoverability

Added canonical URLs, share metadata, modified dates, structured data, noindex sitemap filtering, and deployment-time IndexNow notification.

Email subscriptions

4 updates
DesignOct 20, 2026

The Reading menu

Grouped Reading space and Reading stats into a top dropdown and shortened the development-journal navigation label.

FixesOct 20, 2026

Long comments in email

Limited excerpts to 320 characters and forced safe wrapping so unbroken text could not stretch notification layouts.

FixesOct 20, 2026

Notify after deployment

Queued notification intent first and sent after successful deployment checks, with recent history and a manual verification entrance.

InteractionOct 20, 2026

Email subscriptions

Added double opt-in, verification messages, unsubscribe links, subscriber management, region/source records, and optional article broadcasts.

Stories and retrospectives

2 updates
WritingOct 19, 2026

Media library acknowledgments

Added the Python, Pillow, FFmpeg, Docker, Nginx, 1Panel, and Apple framework notices to the media-library article.

WritingOct 19, 2026

The gallery prequel

Recorded the abandoned iOS-style gallery and its influence on the media library’s local-first design.

A growing room

20 updates
WritingOct 18, 2026

The AI gateway retrospective

Recorded the unfinished gateway and trade-offs between New API, protocol compatibility, CC Switch, Codex, and Xiaomi MiMo.

FoundationOct 18, 2026

The development journal

Organized the project history into a timeline, retained the complete commit archive, and added navigation.

FoundationOct 18, 2026

Private-content checks and cleanup

Checked correct/incorrect passwords, admin unlocking, encrypted updates, and repository ciphertext, then removed the test article.

SecurityOct 18, 2026

Separating private content

Excluded private articles from public discovery, related writing, reading statistics, and the locked discussion area.

SecurityOct 18, 2026

Editing protected articles

Required unlocking before editing and re-encrypted updates while preserving the password.

SecurityOct 18, 2026

Encrypted private writing

Added per-article passwords and browser-side PBKDF2/AES-GCM encryption so locked pages contain ciphertext rather than plaintext bodies.

FixesOct 18, 2026

Title and mobile editor fixes

Fixed editor scrolling, expanding titles, obstructing drawers, and notices covering the toolbar.

EditorOct 18, 2026

Preview, SEO, and local recovery

Added desktop/mobile previews, search-summary previews, cover presets, live word/read-time counts, and local automatic backup recovery.

EditorOct 18, 2026

Writing workspace v3

Rebuilt the editor into document navigation, a central writing canvas, and publication settings, with focus mode.

DesignOct 18, 2026

A quieter paper background

Removed the continuously running Canvas aurora in favor of a low-power paper texture and local lighting.

DesignOct 18, 2026

Navigation, settings, and statistics

Added reading entrances, organized settings as a navigable workspace, and introduced reading composition and rankings.

DesignOct 18, 2026

Reading space and public statistics

Added local bookmarks, local history, public statistics, and device-deduplicated article counts.

FoundationOct 18, 2026

Expanded site settings

Enabled editing Now, About, Threads & Trails, home-page text, locations, and the contact address from the admin.

FixesOct 18, 2026

Mobile background flicker

Reworked mobile compositing and scrolling behavior to stop the article background flashing.

InteractionOct 18, 2026

A Resend allowance panel

Added daily and monthly allowance details, remaining amounts, reset times, and usage indicators for the available service categories.

InteractionOct 18, 2026

Comment notifications

Connected Resend for branded moderation and reply email, including suppression of same-address reply notifications.

InteractionOct 18, 2026

Comments arrive

Added moderated comments, approval and rejection, deletion, province labels, random avatars, and threaded replies.

EditorOct 18, 2026

Configurable featured writing

Added a featured-article setting, falling back to the latest article when the selection disappears or becomes a draft.

FixesOct 18, 2026

Long article titles

Fixed wrapping, type sizes, and geometry in the home feature and article header so long titles did not crowd covers or body text.

WritingOct 18, 2026

Media library and model manager articles

Published the development records of Henry Media Library and Henry Model Manager.

An editorial direction

5 updates
WritingOct 17, 2026

The Sapphire article

Published the macOS notch-app localization record and credited the original author and open-source source.

FoundationOct 17, 2026

Settings and local reading tools

Added editable site settings, a local reading list, and JSON Feed, bringing configuration and reading entrances into a clearer structure.

FixesOct 17, 2026

Counts and duplicate initialization

Prevented repeated ranking and read-count requests and stopped page scripts from interfering with one another.

DesignOct 17, 2026

An editorial visual system

Moved toward more restrained typography and refined light-mode layers and the lower-power background.

EditorOct 17, 2026

Rebuilding the desktop workspace

Made the article list a true widescreen workspace with organized titles, summaries, filters, and row actions.

Two platforms, two layouts

1 updates
DesignSep 12, 2026

Separate desktop and mobile layouts

Split the admin into a wide desktop workspace and compact mobile interactions instead of one compromised shared layout.

Mobile refinement

2 updates
DesignSep 9, 2026

Mobile navigation and admin

Added the floating bottom navigation and search entrance, and refined admin toolbars, horizontal tools, and safe-area spacing.

FixesSep 9, 2026

Test cleanup and ranking fixes

Removed early test articles and fixed ranking initialization, zero values, and duplicate paths with trailing slashes.

Publication and performance

6 updates
DesignSep 8, 2026

Popular writing and mobile editing

Switched popular writing to real counts with invalid paths filtered out, and moved the mobile editing toolbar to the bottom.

DesignSep 8, 2026

Editorial sections and archive

Added a horizontal latest-writing area, collapsible archive years, dark-background fixes, a bottom-aligned footer, and floating admin controls.

EditorSep 8, 2026

Article history and restoration

Connected GitHub commit history so previous versions of each article could be inspected and restored.

EditorSep 8, 2026

Progress across navigation

Persisted active deployment state locally so page changes and refreshes could resume the actual build progress.

EditorSep 8, 2026

Article publication progress

Placed build progress beneath the matching article row, with live-article links, building/success/failure states, and completion dismissal.

DesignSep 8, 2026

Background performance

Replaced expensive blur and central hotspots with radial blending and transform animation to address scrolling performance.

Editing and atmosphere

4 updates
DesignSep 7, 2026

Exploring a moving background

Experimented with layered aurora effects, speeds, paths, and brightness, looking for breathing motion without scroll lag.

DesignSep 7, 2026

Home-page copy and animated numbers

Reworked the hero line, single-line layout, metric colors, and count-up animation.

EditorSep 7, 2026

A fuller formatting toolbar

Added undo, redo, strikethrough, inline code, ordered lists, and clear formatting, then reorganized tool groups.

EditorSep 7, 2026

Two writing modes

Added visual and Markdown editing with toolbars, paste and drag-in images, and synchronization between modes.

The first workspace

5 updates
WritingSep 6, 2026

Completing the content structure

Refined home-page copy, publication confirmation, tag indexes, previous/next covers, and a new 404 page.

FixesSep 6, 2026

Publication state and list caching

Used KV caching to reduce GitHub requests and optimistic updates to show newly published articles in the admin list.

EditorSep 6, 2026

A working editor workflow

Added autosave, shortcuts, pasted images, return-to-list after publishing, global errors, and local draft recovery.

DesignSep 6, 2026

The first home-page upgrade

Introduced cover artwork, statistics, scroll-aware navigation, reading links, and a fuller editorial home page.

FixesSep 6, 2026

Login and admin basics

Fixed the post-login overlay, cached admin scripts, editor view switching, and settings drawers.

The beginning

4 updates
EditorSep 5, 2026

Local editor dependencies

Served Marked locally, added preview fallback, and consolidated the admin into a single entrance without an external CDN dependency.

FixesSep 5, 2026

Publishing API reliability

Added the GitHub User-Agent, reliable article listing, and error handling for the earliest publishing failures.

EditorSep 5, 2026

The first publishing admin

Added article editing, drafts, GitHub writes, and automatic Cloudflare Pages deployment, making browser-only publication possible.

FoundationSep 5, 2026

The beginning

Established the first Astro version of Henry's Room, with home, article, archive, and about pages and an Apple-inspired visual foundation.

RAW COMMIT ARCHIVEComplete commit archiveAll 330 commits, preserved in their original wording.
Open archive
Nov 2, 20264 commits
ac28f3ffix: isolate article number override
c068f29post: set goodbye article number to 520
c7cf940post: correct final goodbye
2a3c9f2post: 合肥的最后一面
Oct 30, 20263 commits
912d325docs: record bilingual launch in development journal
22ab284feat: add bilingual public frontend
e01f5b3fix: fit homepage date and settle toc landing fade
Oct 27, 20266 commits
666fe74friends: update 测试网站
11b2380fix: restore cover motion on category changes
b001106friends: update 测试网站
be0e384fix: make article category switches continuous
b6fd91frelease: refine friend notices and reading motion
35c403eMerge remote-tracking branch 'origin/main' into codex/motion-friend-release-20261027
Oct 26, 20264 commits
f9818cbfriends: update Yuimi-Lab
41fa83cfriends: update Yuimi-Lab
de53508friends: add 测试网站
4f60e85friends: update Yuimi-Lab
Oct 25, 202623 commits
ec99fc1Separate friend visibility from optional lifecycle email notifications
d2139a7friends: update Yuimi-Lab
801f29bRecord verified logo, theme and diary production release [skip ci]
6132755Release magnetic logo, dark navigation and diary counters
ce67a32Match diary overview counters to homepage motion and gradients [skip ci]
2527ce5Add magnetic nav logo and preserve themes before page swaps [skip ci]
1360266Record verified outline and subscription release [skip ci]
2a2c2a8Fix input breathing lifecycle and animated article outline following
3bd0e00Record verified chapter three production release
844be8cPublish Henry's Room chapter three with its chapter two continuation
d3c66f3Draft Henry's Room chapter three and chapter two continuation [skip ci]
04b73faDocument verified production rollout and recovery evidence
0502985Polish diary and tag interactions and reconcile retried publication states
01593b1Verify release backup and preserve diary milestone regression coverage
ae483d3Refine public motion and publish transparent project source statistics
ce73a96Add magnetic controls and a finite newsletter invitation
c0c7333Refine local reading motion and interaction continuity
729088dBring the public site to life with optical entrance and shared cover depth
49056f7Make original-site motion clearly visible with finite local choreography
e4acac5Restore original visual identity and refine bounded interactions locally
c3d397bfeat: build local editorial reading preview without publishing
b4a0d9ddocs: record design tooling installation and local-only scope
c8a08f3docs: record verified contact email display release
Oct 24, 202666 commits
031c67apost: 发布文章 henrys-room-chapter-one
f70c272post: 发布文章 henrys-room-chapter-two
7aaf049post: 发布文章 henrys-room-chapter-one
92e997adocs: preserve concurrent author publication in email fix
ac3ef3aMerge remote-tracking branch 'origin/main' into codex/email-display-20261024
39326d0fix: keep public contact emails readable across navigation
54c655bpost: 发布文章 henrys-room-chapter-two
676163aRecord verified article tag and outline release
30f10eafix: separate article tags and improve outline readability
fe37e1cRecord deployed subscription feedback and 404 verification
d8586ceMerge remote-tracking branch 'origin/main' into codex/subscribe-feedback-404-20261024
ec956b1fix: clarify subscription status and redesign not-found page
142b2ecpost: 发布文章 henrys-room-chapter-one
32017f8chore: 保存草稿 henrys-room-chapter-one
5f90b8fchore: 保存草稿 henrys-room-chapter-two
282c296Record verified draft-only article save
ac2be7bdocs: save unpublished article draft [skip ci]
9adb501Record verified GitHub README refresh and documentation checks
b8faa45docs: refresh project README and editorial identity [skip ci]
e574ce8Record verified fixed article numbers and preservation checks
77121feAssign stable article issue numbers independent of page position
2d581a6Merge remote-tracking branch 'origin/main' into codex/article-browser-navigation-20261024
fbd291dsettings: update site config
f000e95Record verified settings heading consistency fix
c59e962Restore site settings eyebrow to match admin section headings
cc0eda8Document verified article navigation release and data preservation
8112c9eAdd article browsing and separate desktop and mobile article menus
7fc1c7adocs: record published retrospective-only chapter one verification
818d22cpost: revise chapter one as a personal project retrospective
459a06epost: Henry 的空间第一章:从一个念头到一个真正的网站
19b91bcMerge remote-tracking branch 'origin/main' into codex/project-chapter-one-20261024
467841ffriends: update Yuimi-Lab
05ead60friends: update Yuimi-Lab
7e63da8docs: record homepage refresh release verification
68c6495fix: replay visible homepage entrance on full refresh
2ff08e5Record verified intro, diary filter and stats dashboard release
65c5548Refine homepage entrance, diary filters and reading dashboard
0bf4107Record verified refresh fix release and complete public diary audit
105f41eFix homepage refresh motion and reconcile public development diary
4cfeaf0Record verified frontend release and preserved-data evidence
e2c5de5Refine mobile Dock and release editorial frontend motion
11293bbPolish local editorial preview with newsletter layout and finite motion
d7dafdbRefine frontend editorial layout for local preview only
1d119aaRecord verified settings release and rollback evidence
3d7c41fPrevent settings keyboard shortcuts from publishing unrelated drafts
cfaf420Reorganize admin settings into focused sections with safe independent saves
4b0740aRecord filter and navigation layout release verification
2ae5075Move filter status into pagination and align reading navigation typography
aa80ad0Record exact release, isolated recovery and remaining author privacy review
d94918bFinish bounded large admin views and encrypted private attachment tools
b8c246cAdd isolated encrypted cloud recovery rehearsal and record user priorities
c825e53Record batch release verification and preserved production data
ed9c1acImprove joined admin queries, private comment ownership and media lifecycle
9f5b479Merge remote-tracking branch 'origin/main' into codex/batch-friends-private-media-20261024
b7f21cbdelete: test123
e9801d1post: 发布文章 test123
eb372caphoto: mvlbb8a8-.png
463c21ddocs: record verified private-image and exact-order release
5eff9dbfeat: encrypt new private images and persist exact admin page ordering
6af650ddocs: record verified form and SQL pagination release
104e96afix: align public verification forms and page admin queries in SQL
750dafcRecord verified optional-service release and rollback boundaries
5dc7e0dStage D1 projections within bounded free-plan query batches
5c739afBound post-deploy service readiness checks without weakening verification
f8260faIsolate live service verification from production deployments
403fe96Integrate on-demand Turnstile and rebuildable D1 admin projections
Oct 23, 202649 commits
b5dd600Allow explicit Free attestation without overriding paid evidence
4e6118dtest(cloudflare): harden free-plan gate and document missing account permissions
be33364chore(cloudflare): add isolated read-only free services preflight
9458892docs: record batched reader release and scheduled backup verification
ea36f9bfix(reader): finish mobile forms and private image preview lifecycle
ae218f0docs: record shared snapshot release and backup verification
d7218ffperf(admin): reuse bounded shared query snapshots across workers
bccbd00Record verified comment pagination release and audited production state changes
3c56c53Paginate public discussion threads and progressively load bounded reply pages
cb87e35Record verified private lifecycle release and unchanged production business data
a55e59bGuard private article lifecycle and add ownership review with local performance detail
5e39b4aRecord exact friend pagination release and verified production data
f4a18c0Record verified friend pagination candidate and preserved artifacts
9c9720dPaginate the merged friend directory on the server without full browser downloads
b7049f8Record verified public read release and preserved production data
7bb4a76Bound public reads and reuse complete ranking and comment snapshots
8e7258bRecord verified security and runtime partition release evidence
aa33441Harden public submissions and partition legacy runtimes by feature
99db9faRecord verified friend query release and data preservation evidence
641aad7perf: batch friend application reads and isolate directory presentation
efce3f5Record verified backup and private editor release evidence
d752416Separate backup verification and isolate private editor lifecycle
733e4abRecord verified admin design release and remaining optimization gates
14ed8b1Unify admin presentation and add bounded local diagnostics
a855eadRecord verified batch visual release and reconcile the 21-item checklist
6935e55Keep library growth advisory without weakening per-page resource budgets
f861d1cUnify reading surfaces, refine home hierarchy and enforce resource budgets
8c99a81Record verified indexed admin release and pre/post deployment data checks
fa65fe7Bound admin comment and subscriber indexing with reusable read-only snapshots
1d3e9a8Record remaining admin lists release and verified optimization progress
63f3bd8Unify remaining admin collection controls and safe refresh
a77aa8dRecord admin workspace production verification and optimization ledger
7892155Verify resumed admin workspace preview and prepare rollout
4ae95ecBuild responsive admin navigation and shared collection feedback
b475c42Record private-boundary rollout verification and remaining gates
5956ba5Guard private article bodies and preserve unbound comment records
9d051a3Add offline recovery rehearsal and original optimization ledger
f8f6f2fdocs: record verified route styles and cache release
b7c256ffix: revalidate Astro page fetches instead of serving stale offline HTML
9b8f1feperf: load public styles by route without changing visual design
25ff160Grant deployment job read-only Actions history access
a56ee62Record verified style release and pending read-only CI permission
1d66cdaIsolate public styles and add safe deployment diagnostics
0a81db9Record verified frontend release and remaining backup checks
d2d8ab0Split frontend features and improve search and page lifecycle
d111a29Record final release, verified backups and remaining daily-quota blocker
e65091fHandle exhausted KV quotas safely and schedule backups after reset
d8a45dbHarden backup rate-limit diagnostics and bypass admin module caches
d8b4a25Improve admin scale, cloud publication history and encrypted backups
Oct 22, 202620 commits
3c182faRecord verified production release and preserved data evidence
cfc1860Record verified bindings, data snapshot and release readiness
2f25e20Record approved storage setup and data preservation boundaries
ddf475dRecord verified production backup and remaining admin KV blocker
6d22896Record production preflight blockers and preserve release state
52601f7Improve publishing reliability, durable notifications and recovery tools
92c1893fix: refresh stale navigation pages from service worker cache
66a0a04friends: add Yuimi-Lab
47483dacopy: rename friends page heading
e27f79ffriends: delete friend-mvj1cqdz-aebb185d
8693f81post: publish reflections on the vibe coding era
4339cabchore: bust admin script cache for friend fixes
6e78a77docs: record friend publishing reliability fix
ba91b79fix: avoid false friend notification toast
bfc2ffcfriends: update 测试网站
6c58896fix: make friend publishing resilient with deploy progress
112b455friends: add 测试网站
3217a04fix: route friend applications through deployed worker
a40d4ebfeat: add managed friend links directory
37d6c5ffeat: add editable email templates and custom admin selects
Oct 21, 20269 commits
607f32bchore: deploy admin worker with site updates
e0968e9fix: finalize resubscribe status and quota alerts
752137afeat: expand private comments and admin controls
2f0e620fix: harden admin CSV exports
1d2f818feat: add resubscribe approval and scalable admin lists
0d1b5a9chore: add Bing site verification
51f4bc2feat: strengthen search engine discoverability
df4b796settings: update site config
488358fdelete: post-20261020-2305
Oct 20, 20265 commits
61672c6feat: add reading dropdown to top navigation
3f41a9efix: gate newsletters on deploy success and clip long comment emails
9951430post: 发布文章 post-20261020-2305
e030fc2style: refine newsletter page copy
02beee4feat: add double opt-in email subscriptions and newsletter broadcast
Oct 19, 20268 commits
8ee7a74post: 发布文章 m
98ffadfpost: 发布文章 henry-media-library
8c2210esettings: update site config
0825e52post: 发布文章 henry-media-library
e37b72bdocs: add open-source attribution to Henry media library article
4af13a8post: iOS gallery retrospective and media library predecessor
48071c6settings: update site config
59549cfsettings: update site config
Oct 18, 202652 commits
9ac9138post: AI API gateway retrospective
d9fcba2settings: update site config
8a5c020fix: reverse changelog order and align timeline markers
1d2a69cfix: update changelog day counts when filtering
5adcb78feat: add complete development diary timeline
3918cf2post: 发布文章 m
385eb56delete: private-test
aeb5114post: 发布文章 private-test
8705cd2post: 发布文章 private-test
7a2f027feat: add encrypted private articles with per-post passwords
74896eafix: reset editor viewport and finalize writing studio polish
bb2f756style: polish mobile editor drawers and toast placement
1cba9c1fix: keep long editor titles fully visible
3f147a8style: polish writing studio focus and mobile panels
f851c53feat: rebuild writing studio with outline, publish rail, preview, and autosave
dcc6131feat: refine navigation, settings, stats, and reading background
947f24bfix: brighten metrics and dedupe public stats
721485asettings: update site config
7a2b78dfeat: site settings, reading history, stats, and polish
0624a82delete: test
640364esettings: update site config
f50cf38fix(mobile): prevent aurora background flicker on scroll
f253104style(comments): premium Resend usage panel
8e500b1fix(comments): skip self-email reply notifications
5c0c952fix(comments): notify self-email replies and show Resend usage
01364aestyle(comments): simplify form layout
99ea05bfix(admin): show email service status without noisy alerts
f902c47feat(comments): required email and transactional notifications
b6d745cfix(comments): inline replies and better province mapping
17ebb27fix(comments): bust comment list cache
a3e9a0afeat(comments): province, avatars, and threaded replies
a5fb09dfix(comments): bypass service worker cache
1ac3257fix(comments): restore KV binding and admin auth
45d73dcfeat: add moderated Cloudflare comments
989fd88post: 发布文章 m
4fba0cfsettings: update site config
50737c0post: 发布文章 m
5db84f8post: 发布文章 m
50585c1settings: update site config
9a13171settings: update site config
0d36f1ffeat(settings): choose homepage featured post
138feffdelete: henry-model-manager
c8fabb2post: 发布文章 henry-model
42a7ef5delete: sapphire-macos-localization
355f22bdraft: Henry model manager article
1aef379post: 发布文章 henry-media-library
ac87afdfix(article): scale long hero titles
568763ffix(home): handle long featured titles gracefully
39d5a5cpost: 发布文章 henry-media-library
f192c38draft: Henry media library article
fcf4e5fchore: 保存草稿 desk-setup
d6ba552post: 发布文章 sapphire
Oct 17, 202611 commits
e7aefd8post: 发布文章 sapphire
3bd22aedraft: credit Sapphire source and author
49d29e0draft: Sapphire macOS localization article
fd6ef28style: refine light mode typography and covers
7034290fix: never cache admin API responses
f8d85fcfix(admin): check settings deploy immediately
1599951settings: update site config
3764fe8feat: editable site settings, reading list, and JSON feed
9523960perf: prevent duplicate hot-read and counter initialization
4d85df4feat: editorial redesign and low-power ambient background
faadcc4feat(admin): true wide desktop workspace with table layout
Sep 16, 20262 commits
1d5745dpost: 发布文章 test
353bb18post: 发布文章 test
Sep 12, 20261 commits
5b9bdf8feat(admin): separate desktop wide dual-pane layout from compact mobile
Sep 9, 20269 commits
1aca2defix(mobile admin): single-row scrollable top/toolbar bars, safe-area padding
72b5f4dfeat(mobile): glass bottom tab w/ search; admin & home mobile polish
ae96bc8fix(hot): actually invoke fetchHot + safe wrappers
59807f6fix(hot): isolate init calls with try/catch so hot list always runs
04c1edecleanup test posts; sw no-cache /top; cache-bust hot fetch
f0f11bbdelete: test
106fe73delete: 345
b31d6bfdelete: 123test
d4c273bfix(hot): filter zero/junk, merge slashes, map titles from search index
Sep 8, 202624 commits
8db0cc9feat: mobile pinned editor toolbar; homepage hot reading from real counts
6c6e907fix(style): single-layer dark bg; flex layout pins footer on short pages
d436985feat: archive year collapse; admin editor floating buttons (remove block bg)
dc0d732feat(home): magazine latest-updates horizontal row with cover overlays
ae4d785feat(admin): version history + one-click rollback per post
ddcda96post: 发布文章 345
f9651dadelete: 32
a2641b6fix(admin): keep in-flight deploy state across navigation until real success
3e8c5b5post: 发布文章 32
7934e82delete: 2134
7a7a918fix(admin): persist in-flight deploy; resume progress & 构建中 label across reloads
9b4df0cfix(admin): persist in-flight deploy so progress resumes across page switches; label 构建中 until really live
694b9e2post: 发布文章 2134
50026eadelete: 12345
ac387cefix(css): remove stray brace
97e0d9dfix(admin): row-level deploy progress tracked by GitHub Actions; clear on open
89a2b4cpost: 发布文章 12345
8ef1616feat(admin): publish deploy-progress panel + open-online link
ab0c1b5fix(aurora): separate blob origins (blue/purple/teal zones), balance alpha
260cedbfix: invoke canvas aurora (was tree-shaken)
1dbe669style: monotonic smooth radial falloff (no ring, no center dot)
2509290style: plateau radial gradients remove hot center dot in aurora
0f1038estyle: soft-light blend aurora so blobs feel like ambient wash, not circles
7a603eeperf(style): replace blur-filter aurora with soft radial gradients (transform-only, GPU cheap)
Sep 7, 202612 commits
f63fe2aperf(style): 3 aurora layers with randomized per-load drift paths
dd652eaperf: reduce reveal stagger/latency; lighten aurora layers for smooth scrolling
207e682feat(style): 5-layer multi-color aurora with varied looping paths
f4165ccfix: hero eyebrow/dots restored; gradient numbers; stronger aurora; scroll-to-top on load; working back-to-top
105d9b6style(home): single-line hero without punctuation; clean stat cards (remove color bar)
fe3eb06fix(home): restore init() so content not hidden; hero copy; svg stat icons
9292a4dfeat: stats count-up animation
98c2e92feat: richer editor toolbar (undo/redo/strike/code/ol/clear) + premium stats band with count-up
3fbbb40post: 发布文章 123test
9e0e11bphoto: mtq3h3k8-.png
ac8e5f1feat(admin): WYSIWYG block editor (rich+md dual mode) with execCommand toolbar, paste/drop images
77bd4a7feat: refined hero copy; publish confirm modal; tags index; prev/next thumbs; nicer 404
Sep 6, 202613 commits
f386a4ddelete: uicheck-draft3
2dc0d94perf+fix(admin): KV list cache in worker; optimistic save so post shows immediately
898e1a4chore: 保存草稿 uicheck-draft3
79ba0a1fix(admin): close drawer before save buttons
37602a2fix(admin): silent draft restore + global error toast
a5ae6a8fix(admin): silent draft restore + global error toast
eae9c41delete: uicheck-draft
da45827chore: 保存草稿 uicheck-draft
60f382bfeat: premium homepage (cover art, stats band, nav hide, read-more) + admin UX (publish->list, toast, autosave, shortcuts, paste image, view link)
b2b4b6dpost: 发布文章 test
3587797fix(admin): bust SW/http cache for admin scripts; no-store admin
3eacf9cfeat(admin): redesign editor — list/editor views, settings drawer, preview, word count
02c932dfix(admin): [hidden] now overrides display so login page hides after success
Sep 5, 20269 commits
13d239dchore: keep single admin entry at /admin
23677d2feat(admin): add /console alias + inline login bootstrap
7728076fix(admin): ensure marked preview fallback injection
144befcfix(admin): vendor marked locally so login/editor not blocked by CDN
a14f4dffix(admin): ensure User-Agent & robust listing for publish API worker
346da17delete: flow-test
ea84b37post: 发布文章 flow-test
c344e9afeat: admin editor + publish API + draft support + Actions auto deploy
56db6b6chore: snapshot current blog before GitHub integration