Skip to content

Releases: Aafff623/fork-Firefly

v1.5.0 — Java 全栈课程批次 + 草稿发布修复

Choose a tag to compare

@Aafff623 Aafff623 released this 30 Aug 14:37

v1.5.0 — Java 全栈课程批次 + 草稿发布修复

内容

  • 新增 Java 全栈课程文章 531 篇(小红书课程体系转换为博客文章)
  • 修复 114 篇文章线上点不开的问题:这批文章此前被误标 draft: true,生产构建时被过滤,线上访问走 error 兜底。现已全部转为发布,本地构建文章页从 589 → 703 全部生成。
  • 清理 afterlife-and-karma / youming-wenda-81 两个只有图片、无正文的半成品目录。

站点

  • 发文流水线与站点组件在制品收尾(cursor skills、collection-model、About/GardenNote 组件等)。

工程

  • 分支收敛:本地与远端仅保留 master 主分支,特性分支已合并并清理。

完整变更:v1.4.0...v1.5.0(22 个提交)

v1.4.0 — Atomic navigation & owner experience

Choose a tag to compare

@Aafff623 Aafff623 released this 21 Aug 00:42

What's new

v1.4.0 continues the navigation and ownership work after v1.3.0. Article transitions are now committed atomically in a single paint frame, and the blog gains a secure GitHub-based owner session with a local Markdown editor (production writes stay closed until OAuth is configured).

Highlights

Atomic article navigation

  • Uncached articles go through a 2-concurrency intent prefetch queue (pointer / focus / touch); idle prefetch covers only the first two posts.
  • URL, article DOM, layout switch and scroll reset land in one browser paint frame — no premature URL write, no scroll-to-top while waiting, no blank intermediate state.
  • On failure the old page, URL and scroll position are kept with a non-blocking retry notice. Back / Forward restore prior scroll positions without duplicate history entries.
  • Verified under injected 1.5s slow network: URL + DOM + scrollY=0 appeared in the same 2368ms commit frame.

Owner session and editor

  • GitHub login with numeric user id, signed HttpOnly session cookie, OAuth state + PKCE, origin check and CSRF token; DEV bypass requires an explicit flag plus a real loopback client.
  • Local Markdown editor with image upload (magic-byte check, 5MB cap, content-hash dedupe), optimistic-concurrency saves and soft archiving.
  • Production Git writes fail closed (production_git_provider_unconfigured) until a GitHub OAuth App is configured; no external writes in this release.
  • Non-owner GitHub accounts get no edit entry; logout now asks for confirmation.

Navbar and motion refresh

  • Search moved next to the "More" pill on the category bar; the navbar keeps only essential controls.
  • Sakura toggle returned to the Display Settings effects tab.
  • Decorative motion (pet, tag sphere, atmosphere) pauses during navigation; pet playback moved to requestAnimationFrame with distance-aware roaming.
  • Clock side digits and footer secondary links were de-emphasized; dark-mode Bot outline gained contrast; tag sphere idle speed up slightly.

Verification

  • astro check: 0 errors / 0 warnings (285 files); tsc --noEmit: clean.
  • Gates: article navigation 18/18, UI & motion 10/10, community 9/9, owner static 9 + live API 12 all PASS.
  • EdgeOne build: 85 pages, 28 Pagefind pages, 8127 indexed terms, exit 0.

v1.3.0 — Delivery, garden, and sidebar

Choose a tag to compare

@Aafff623 Aafff623 released this 19 Aug 11:25

What's new

v1.3.0 is the first GitHub release after v1.2.0. It covers production delivery on threetwoa.live, Ask / LiveChat (still DEV-gated), mobile and load-strategy work, then the garden watering easter egg, sidebar Grok Bot carousel, and tag-wall depth.

Production: https://www.threetwoa.live

Vercel fallback: https://fork-firefly.vercel.app

Highlights

Production delivery

  • Public path: www.threetwoa.live → EdgeOne CDN → Vercel origin.
  • Cloudflare is the authoritative DNS provider and hosts img.threetwoa.live on R2 for article and comment images.
  • Vercel and EdgeOne use separate cache policies for HTML, /_astro/*, Pagefind, assets, and /api/*.
  • The EdgeOne Pages adapter remains for compatibility testing; it is not the current production host.

Ask and LiveChat

  • HeroUI Pro React Ask island: personas, site retrieval, source-aware prompts, streamed replies.
  • Pet-triggered LiveChat uses the same server-side Ask proxy.
  • Browsers only call /api/ask; the MaxKB token stays server-side.
  • Ask remains DEV-only. Production routes and API calls return 404 until the cloud plan is approved.
  • DEV /ask/ now mounts the island through a static AskChatIsland.astro wrapper (client:load cannot hang off a dynamic TSX import). Production still dead-code-eliminates the island.

Garden footer

  • Watering grows in four beats: sprout → crown → blossom → persimmon.
  • The fourth beat is pickable: the fruit drops, then fireflies/butterflies and a fruit note.
  • Garden-hour state lives in sessionStorage (five minutes, per tab). The “last watered” date on the capsule is still the publish day.
  • The stage is transparent and sits in the existing gap under the capsule; it does not add height or a glass frame.
  • The Lottie kettle is sized to finish its clip. prefers-reduced-motion skips particles; fruit and note still appear.
  • The tree drawing is still a stamp-sized vector sprout.

Sidebar Grok Bot

  • Profile disc macro-cuts between the site avatar (short) and Grok Bot (long), about 1:4.
  • Six tour buckets; click does not default to a burst.
  • Bot geometry is local-only (ADR-0003). The repo ships choreography and a vendor README; public/vendor/grok-bot/** is gitignored. Production without vendor stays on the static avatar on purpose.
  • Ask / LiveChat still does not wire a 48/40px mascot or disable the sidebar Bot on /ask.

Tag wall

  • The chalk sphere paints depth from the current frame’s nearest/farthest tags, not a theoretical pole (12 Fibonacci points never sit at z = -R).
  • Front tag is full brightness; back tags stay readable (~0.4 opacity, no blur).
  • Idle spin is a little faster; drag stay is unchanged.

Performance and mobile UX

  • Continues the Swup lifecycle and load-strategy work from v1.2.0.
  • Mobile is not a scaled-down desktop: decorative RepelText and TagCloud work are removed, duplicate metadata requests are avoided, redundant bottom sidebars are skipped, and long controls collapse to icons.
  • Later passes sink widget scripts and tighten V4–V7 load strategy.
  • V3 trend (older online vs localhost, directional): mobile LCP 3241 → 2221 ms (-31.5%), mobile DOM 3597 → 3015 (-16.2%), forced layout 3734 → 2590 ms (-30.6%), TagCloud reflow 723 → 140 ms (-80.6%), CLS 0.

Content and authoring

  • Knowledge batches, Agentic Coding notes, career/interview notes, collection indexes, and matching dynamics.
  • AI Morning Brief and GitHub Weekly Hot authoring skills, plus collection/taxonomy registration.
  • Collections for CSDN tutorials, xiaolincoding, Vibe Coding, and related indexes.
  • Production-facing posts were later trimmed to handbooks, morning briefs, discount notes, and Zcode; other essays stay draft/local.

Polish and fixes

  • Footer bamboo-green garden palette; watering grass no longer follows site --hue.
  • Shared paper safety layer on collection cards.
  • Calendar uses three 3D voxel character loops; hover and keyboard focus pause rotation.
  • R2-backed comment-image upload and object cleanup; COS path remains a fallback.
  • Hardened Ask token handling, API cache boundaries, dynamic inline comments, and framework compatibility.
  • Hid demo content from production-facing lists.

Upgrade

No intentional breaking change.

pnpm install
pnpm check
pnpm type-check
pnpm build

Requirements remain Node.js ≥ 22 and pnpm 9. For image uploads, configure server-only R2_* from .env.example; COS_* remains a fallback. Ask needs MAXKB_ACCESS_TOKEN and an approved production enablement change. Local Grok Bot motion needs a copy of the study-repo replica into public/vendor/grok-bot/ (see that folder’s README); do not commit the geometry.

Validation and limits

  • GitHub Releases: this tag is the first after v1.2.0. Notes lived in-tree before the tag existed.
  • Vercel follows master; confirm https://www.threetwoa.live after the deployment that contains this tag is Ready. This document does not claim that check is done.
  • The domain is not ICP-filed; this release does not claim mainland EdgeOne node acceleration.
  • A Windows-local Vercel adapter build may end with symlink EPERM after generating the site. Cloud production remains the release gate.
  • Production will not show the Grok Bot unless a licensed or original mesh is shipped later.

Full changelog: v1.2.0...v1.3.0


中文说明

v1.3.0v1.2.0 之后的第一份 GitHub Release。覆盖 threetwoa.live 交付、Ask / LiveChat(仍 DEV 门禁)、移动端与加载策略,以及页脚浇水彩蛋、侧栏 Grok Bot 轮播、标签墙远近。

主入口:https://www.threetwoa.live

Vercel 备用:https://fork-firefly.vercel.app

本版重点

生产交付

  • 对外链路:www.threetwoa.live → EdgeOne CDN → Vercel 源站。
  • Cloudflare 权威 DNS;img.threetwoa.live 用 R2 承接文章与评论大图。
  • 按 HTML、/_astro/*、Pagefind、assets、/api/* 分层缓存。
  • EdgeOne Pages adapter 只做兼容回归,不是当前生产托管。

Ask 与 LiveChat

  • HeroUI Pro 问答岛:人设、站内检索、来源 Prompt、流式回答。
  • 桌宠 LiveChat 共用服务端代理;浏览器只打 /api/ask
  • Ask 仍为 DEV-only;生产页与 API 默认 404。
  • DEV /ask/AskChatIsland.astro 静态挂 client:load(不能对 TSX 动态 import);生产继续 DCE 掉该岛。

页脚花园

  • 浇水四拍:苗 → 冠 → 花 → 柿;第四拍可摘,萤火/蝴蝶 + 果笺。
  • 园时只写 sessionStorage(五分钟、按标签页);胶囊「上次浇灌」仍是发文日。
  • 舞台透明,叠在胶囊下原余白,不另开高度、不去玻璃框。
  • Lottie 壶按能播完的尺寸;「减少动态效果」跳过粒子,果和笺还在。
  • 树仍是邮票尺寸矢量苗。

侧栏 Grok Bot

  • 头像短、Bot 长,约 1:4 宏切;六桶巡演;点击不默认 burst。
  • 几何仅本机(ADR-0003),仓内只有编舞与 vendor README。线上缺 vendor 时锁静态头像,这是故意的。
  • Ask / LiveChat 的 48/40px 吉祥物与 /ask 关侧栏 Bot 尚未接线

标签墙

  • 远近按当前帧最近/最远归一化,不用理论球极。
  • 正中满亮;背面约 0.4、不糊,轮廓可读。
  • 闲置转速略加快;拖拽手感未放飞。

性能与移动端

  • 延续 v1.2.0 的 Swup 生命周期与加载策略。
  • 移动端不再等比缩小桌面装饰。
  • 后续下沉 widget 脚本并收口 V4–V7 加载。
  • V3 趋势(线上旧版 vs localhost,非严格同环境 A/B):移动 LCP 3241 → 2221 ms(-31.5%)等,见英文段。

内容与发文

  • Knowledge / Agentic Coding / 早报 / 热榜技能与合集。
  • 生产可见帖后来收到手册、早报、折扣与 Zcode;其余仍草稿/本地。

体验与修复

  • Footer 竹月绿、合集宣纸层、日历 voxel 轮播、评论图 R2、Ask 安全边界、示例内容隐藏。

升级

没有有意 breaking。Node.js ≥ 22、pnpm 9。本机看 Bot 需按 public/vendor/grok-bot/README.md 拷学习仓 replica,不要把几何 commit 上去

验收与边界

完整对比v1.2.0...v1.3.0

本版不附二进制资产。

v1.2.0 — Performance & Content

Choose a tag to compare

@Aafff623 Aafff623 released this 10 Aug 03:41

v1.2.0 — performance & content release after v1.1.0. Focus: a systematic front-end performance pass (mobile LCP -69%), Swup leak cleanup, plus new gallery albums, collections, and a skills-overview post.

Live site: https://fork-firefly.vercel.app

Highlights

Performance (28+ commits, branch optimize-blog-performance)

Measured on a local production build, 5-run median, mobile 4G + 4x CPU:

Metric Before After
Mobile 4G LCP 27236 ms 8332 ms (-69%)
Desktop LCP 960 ms 712 ms (-26%)
Heap / listeners / nodes growth (20 nav hops) 18.9 MB · 14096 · 123642 9.7 MB · 9989 · 97240
First-screen font requests 50 6
  • Swup leak cleanup — new src/lib/page-lifecycle.ts per-page epoch runtime; Waline/TagCloud/observers disposed on navigation; 14+ components made idempotent.
  • On-demand images — atmosphere layer, sprite pet, carousel, and calendar only materialize the active frame; idle prefetch switched to hover intent.
  • Render unblocking — the big one: the homepage banner no longer SSRs display:none waiting on a DOMContentLoaded script, and the first frame drops the JS-gated opacity-0 reveal. m1 was downloaded by 4.6s but painted at 21s; now it paints as soon as it's ready.
  • Coverage — three islands hydrate on idle, Pagefind lazy-loads, inline scripts externalized (assetsInlineLimit: 0), Mermaid SVG persisted at build and injected in-viewport.

No visual feature was removed — the rule was "optimize load strategy and lifecycle only, never cut the styling." Full method, probe tooling, and pitfalls: Wiki Performance and docs/outputs/handoff/perf-optimization-2026-08-09.md.

Content

  • New post: 把八个 AI 技能攒成一套自己的体系:tta 系列全景(V0)
  • New gallery albums: anime-card / anime-mix / anime-pixel (demo scenery set retired)
  • New collections: tta-skills, wool-freebies
  • Three new dynamics with SOTA planning illustrations

Docs

  • README gains a Performance section; Wiki gains a Performance page plus Troubleshooting/Architecture/Sidebar updates.

Upgrade

No breaking changes. pnpm install && pnpm build as usual. Node ≥ 22, pnpm 9.

v1.1.0

Choose a tag to compare

@Aafff623 Aafff623 released this 08 Aug 13:51

What's new

v1.1.0 — incremental product release after v1.0.0. Focus: Agent-identity dynamics, more shipped content, Wiki/authoring docs, and a BibiGPT-aware Knowledge extract path.

Live site: https://fork-firefly.vercel.app

Added

Dynamic / Agent identity

  • Dynamics can publish under Agent collaborator personas with AI-tool filters
  • Role roster, identity badges, writable inline comments, and DEV “owner read” seals
  • Dedicated /agents surface for the collaborator cast
  • Stronger agent-comment / dynamic comment tooling for the publish loop

Content

  • New posts and cascaded dynamics, including Kimi ¥99 Workbench, AI reply “human temperature”, OpenCode Go × DeepSeek V4 Flash, Agent governance / harness mental model, Cursor Team top-up note, and a rewritten AI search API comparison with measured data and logos

Authoring / docs

  • wiki-post skill for GitHub Wiki handbooks (draft first; push only when authorized)
  • Eth path source modules: session / paste-md / bibigpt / mixed (knowledge-extract/references/source-modules.md)
  • BibiGPT exports treated as fat source material: verify with tools, then extract; default handoff to _draftbox for local preview
  • Mermaid body diagrams prefer landscape (flowchart LR) by default

UX / assets

  • TOC active highlight uses a left pseudo-element bar (no hairline top/bottom rules)
  • Calendar widget: three style-17 stock cover GIFs checked into the repo as fallbacks
  • Ignore local .vercel directory in git

Changed

  • Eth publishing path documented as session / research / BibiGPTknowledge-extractknowledge-output → (graduate) site-cascade
  • knowledge-output defaults BibiGPT-sourced material into the local draftbox unless you explicitly graduate the post

Fixed

  • Cleanup of orphan AI-search comparison logo assets / LQIP entries from earlier drafts

Credits

  • Continues on the Firefly / Fuwari Astro theme lineage

Full Changelog: v1.0.0...v1.1.0


中文 · 本版说明

v1.1.0 — 接在 v1.0.0 之后的产品小版本。重心:动态 Agent 身份、一批新内容、Wiki/发文文档,以及乙路径接入 BibiGPT 原料。

线上:https://fork-firefly.vercel.app

新增

动态 / Agent 身份

  • 动态可按协作者 Agent 身份发布,并支持 AI 编程工具筛选
  • 角色名录、身份徽标、可写行内评论、DEV 作者「阅过」标记
  • /agents 角色页
  • 协作者评论 / 动态评论工具增强,贴合发文闭环

内容

  • 多篇新帖与级联动态:Kimi 99 元 Workbench、AI 回复体温、OpenCode Go × DeepSeek V4 Flash、Agent 治理心智模型、Cursor Team 补号、AI 搜索 API 对比重写(真机实测 + logo)等

发文 / 文档

  • wiki-post:GitHub Wiki 手册(先起草,授权后才推)
  • 乙路径来源模块:session / paste-md / bibigpt / mixed
  • BibiGPT 导出当高保真原料:先搜证再提炼;默认进本地草稿箱预览
  • Mermaid 正文默认横版优先

体验 / 资产

  • TOC 高亮改为左侧伪元素竖线
  • 日历备用 style-17 GIF 入库
  • .vercel 本地目录加入 gitignore

变更

  • 乙路径文档写清:会话 / 调研 / BibiGPT → extract → output →(出箱后)cascade
  • knowledge-output 对 BibiGPT 源默认进 _draftbox

修复

  • 清理 AI 搜索对比文残留 logo / LQIP 孤儿条目

致谢

  • 继续基于 Firefly / Fuwari 主题血统

完整对比v1.0.0...v1.1.0

本版无发行附件。未纳入未提交的画廊 / 音乐 WIP。说「发布」后才打 tag / gh release create

v1.0.0 — Initial public release

Choose a tag to compare

@Aafff623 Aafff623 released this 08 Aug 01:22

What's new

First public product release of threetwoa's blog — a standalone Astro site based on the Firefly theme (not an official mirror). Configuration-driven blogging with an Agent-assisted publishing workflow.

Live site: https://fork-firefly.vercel.app

Added

Publishing

  • Markdown / MDX posts with drafts, pinning, password posts, RSS, Sitemap, Open Graph, and Pagefind search
  • Local draftbox (posts/_draftbox/): preview with pnpm dev, kept out of git remotes until you graduate a post
  • Dual authoring paths: Obsidian → ob2blog, or session/Knowledge → knowledge-output, both finishing with site-cascade (stats, tags, heatmap, optional “new note” dynamic)
  • Rich content: KaTeX, Mermaid diagrams, PlantUML, wiki links, code groups, and directives

Reading & appearance

  • List / grid / waterfall layouts, Index-First TOC, related posts, and reading-time metadata
  • Display controls: light / dark / system / time-based theme, hue, and wallpaper modes
  • Smooth page transitions (Swup) with Svelte islands where interaction needs them

Personal surfaces

  • Dynamic short-post timeline (local content; optional Memos) with kind/year filters
  • Dynamic location on publish (city-level; home fallback 山西 · 运城)
  • Dynamic page: first-batch SSR + infinite scroll lazy load; inline comments with first visible / rest folded + red badge count
  • Gallery with accordion albums and an infinite-canvas mode
  • About, Friends, Guestbook, Anime, and curated collections
  • Sidebar widgets: heatmap, calendar, seasonal surprise-gift announcement, tags, site stats, and SpritePet desk pet

Integrations (defaults)

  • Comments: Waline (emoji packs, GIF search; sticker suggest wired but off by default)
  • Agent collaborator personas with circular brand avatars (Claude Code / Cursor / OpenCode / Codex / Kimi Code / Pi)
  • Music: local library by default (no public Meting dependency)
  • Icons via Iconify (Lucide-first); Fancybox lightbox; optional comment image upload via COS proxy

Delivery

  • Vercel-first deploy; public GitHub Template for Use this template / clone
  • Maintainer docs for agent workflow and ship checklist (AGENTS.md, docs/agents/workflow.md)
  • dynamic-post skill: human-tone comment formula, emoji/kaomoji body rules, location publish rules

Changed

  • Product versioning starts at 1.0.0 (separate from upstream Firefly theme version numbers such as 6.15.3)
  • Seasonal gift hover wiggle slowed for a gentler invite

Fixed

  • Posts content loader excludes non-post markdown (_draftbox/README.md, sidecar docs under images/) so production builds do not fail schema validation

Credits

  • Built on the Firefly / Fuwari Astro blog theme lineage — thanks to upstream authors and contributors

Full Changelog: https://github.com/Aafff623/fork-Firefly/commits/v1.0.0


中文 · 本版说明

threetwoa's blog 的第一个对外产品版本。基于 Firefly 主题的 standalone 二次开发站(非官方镜像),配置驱动发文,并带 Agent 辅助发布流水线。

线上:https://fork-firefly.vercel.app

新增

发文

  • Markdown / MDX:草稿、置顶、密码文、RSS、Sitemap、Open Graph、Pagefind 搜索
  • 本地草稿箱posts/_draftbox/):pnpm dev 可预览,不进远端,出箱后再发
  • 双路径成帖:Obsidian → ob2blog,或会话/Knowledge → knowledge-output,收尾都走 site-cascade(统计、标签、热力图,可选「新笔记」动态)
  • 富文本:KaTeX、Mermaid、PlantUML、Wiki Link、代码组、directive

阅读与外观

  • 列表 / 网格 / 瀑布流,Index-First TOC、相关文章、阅读时长
  • 显示控制:亮 / 暗 / 系统 / 按时段主题、色相、壁纸模式
  • Swup 页面过渡 + 需要交互处的 Svelte 岛屿

个人页面

  • 动态时间线(本地内容;可选 Memos)+ 类型/年份筛选
  • 发布时写入定位(市级;回落 山西 · 运城
  • 动态页:首批 SSR + 触底懒加载;评论首条展示 / 其余折叠 + 红点计数
  • 相册:手风琴专辑 + 无限画布模式
  • About / 友链 / 留言板 / 追番,以及人工策展合集
  • 侧栏:热力图、日历、节日惊喜礼盒、标签、站点统计、SpritePet 桌宠

默认集成

  • 评论:Waline(表情包、GIF;梗图建议已接线默认关)
  • Agent 协作者圆形品牌头像(Claude Code / Cursor / OpenCode / Codex / Kimi Code / Pi)
  • 音乐:默认本地曲库(不依赖公共 Meting)
  • 图标 Iconify(Lucide 为主);Fancybox 灯箱;评论大图可选 COS 代理

交付

  • 默认 Vercel 部署;GitHub Template 可 Use this template / clone
  • 维护文档:AGENTS.mddocs/agents/workflow.md
  • dynamic-post skill:人话评论公式、正文 emoji/颜文字、定位发布约定

变更

  • 产品版本从 1.0.0 起算(与上游主题 6.15.3 等版本号分离)
  • 礼盒悬停晃动放慢,邀请感更自然

修复

  • posts 收集器排除非正文 md(草稿箱 README、帖内 images/ 旁白),避免线上构建 schema 校验失败

致谢

  • 基于 Firefly / Fuwari Astro 博客主题血统,感谢上游作者与贡献者

完整提交历史https://github.com/Aafff623/fork-Firefly/commits/v1.0.0

Release 讲能力;架构与目录细节见 README。本版无发行附件。