Lean CI Checks:精簡網站品質流程,保留正式建置完整性檢查與部署後版本驗證。
- 移除 PR 與部署流程重複執行的 HTML 驗證及 Lighthouse CI,縮短 CI 時間並減少效能分數波動造成的阻擋。
- PR 保留 allowlisted build 與
check_site.py;正式部署仍執行相同檢查,並確認線上版本與 Git commit。 - 保留 VERSION / CHANGELOG 與不可變 Release tag 檢查,確保正式版本紀錄正確。
GitHub Release ↗ · Compare v1.7.17 → v1.7.18 ↗
AI Media Dashboard Evidence Patch:校正公開 Dashboard 與 Portfolio 預覽中的示範資料與平台名稱,讓介面只呈現 autovideos repository 可核對的能力邊界。
- 四條內容線改為實際的
tech / consumer_money / cybersecurity / science_future topic profiles。 - 發布介面改為 publisher registry 目前支援的 YouTube / Instagram Reels / Facebook Reels,移除未支援的 TikTok。
- 移除節省工時、production 成功率與其他缺乏固定 evidence 的成效數字;任務列與狀態數值皆明確標示為 synthetic Demo。
- Dashboard 與
ai-media-pipeline.svg 預覽同步呈現 pending_upload.json recovery、job / publish status、Email / Telegram 通知與 LLM → local scoring fallback。 - 不新增 dependency、framework、backend 或 network call;沿用 v1.7.15 的原生靜態 Demo 與既有 CSP / CI。
GitHub Release ↗ · Compare v1.7.16 → v1.7.17 ↗
Resume-oriented AI Media Summary:將首頁 Reliable AI Media Automation Pipeline 的專案介紹由功能與技術名詞清單,改成更適合履歷快速閱讀的成果導向敘述。
- 中文介紹改為聚焦「選題、內容生成、發布、任務追蹤」與「降低重複人工操作、提升多主題/多平台管理效率」。
- 英文介紹同步改寫,避免中英文首頁資訊落差。
- 僅更新
data/projects.json 的 card description;技術細節仍保留於 Case Study、tags 與公開 repository,不新增元件、dependency 或執行邏輯。
GitHub Release ↗ · Compare v1.7.15 → v1.7.16 ↗
AI Media Operations Dashboard:將 Reliable AI Media Automation Pipeline 從純架構圖提升為可操作的隱私安全公開 Dashboard,並同步讓首頁預覽圖改成接近實際操作介面的深色工程監控風格。
- 新增
demos/ai-media-pipeline/,以原生 HTML / CSS / JavaScript 實作總覽、內容管線、四條內容線、任務紀錄、待上傳恢復、平台發布狀態、日報與通知。 - Demo 支援側欄導覽、暫停/恢復管線、手動觸發示範任務與待上傳恢復操作;全部資料皆為虛構內容,不讀取
autovideos production 狀態、帳號、token 或平台憑證。 assets/projects/ai-media-pipeline.svg 改為與新 Dashboard 相同視覺語言,沿用既有 svg_render media pipeline 與 ai-media-pipeline.webp / PNG 公開路徑,不新增 screenshot framework。scripts/build_site.sh 只在既有 privacy-reviewed allowlist 加入 demos/ai-media-pipeline;不新增 dependency、前端框架、外部 CDN 或 runtime network request。- 正式內容生成與發布仍由
yoya9933/autovideos / MoneyPrinterTurbo orchestration 負責;Portfolio Demo 僅作產品介面與可靠性流程展示。
GitHub Release ↗ · Compare v1.7.14 → v1.7.15 ↗
Overtime Preview UI Fix:將加班管理與行政彙整系統的首頁/Case Study 預覽從抽象架構圖改為依實際系統版面重製的隱私安全 UI,讓作品縮圖更接近真正投入使用的產品。
- 沿用既有
svg_render media pipeline,只替換 assets/projects/overtime-management.svg,不新增 screenshot 工具、JavaScript 或 dependency。 - 預覽版面依原系統
overtime-demo/src/App.jsx 與 styles.css 的實際結構重製:深色側邊導覽、加班申請三步驟、日期/時段、事由、工時影響與送出操作。 - 預覽只使用測試管理者、示範日期與虛構加班事由,不包含教發中心人員姓名、Email、正式資料庫內容、production 帳號或營運入口。
- build 仍輸出原有
overtime-management.webp / PNG 路徑,因此首頁、OG 圖與 Case Study 不需要新增另一套媒體 wiring。
GitHub Release ↗ · Compare v1.7.13 → v1.7.14 ↗
Capability Focus:移除中文首頁重複且偏抽象的 WHAT I BUILD 區塊,將能力描述收斂成一個更具體的端到端交付區塊。
- 將「WHAT I BUILD」與「SKILLS」重複資訊合併為單一
CAPABILITIES 區塊。 - 三個能力主軸改為
Data → Decision、Product → Production、Automation → Operations,直接說明可完成的工作流程與對應技術。 - 中文與英文首頁同步使用相同資訊架構,導覽文字改為「能力 / Capabilities」,後續 Contact 編號同步前移。
- 不新增元件、JavaScript、dependency 或新的資料層;沿用既有 skill-group 版型。
GitHub Release ↗ · Compare v1.7.12 → v1.7.13 ↗
Unified Project Grid:將 Reliable AI Media Automation Pipeline 從獨立的 Additional System 區塊收回 Selected Work,讓它和其他作品使用同一套卡片、排序與導覽邏輯。
- Selected Work 由 6 個擴充為 7 個專案;AI Media Automation Pipeline 改為第 7 個一般作品,不再使用整頁寬的特殊展示區塊。
- 移除
additional_title / additional_heading、additional renderer、#additional-work 導覽與 placeholder,以及不再使用的 secondary-project CSS。 - 中英文首頁、README、首頁 JSON-LD 與 CI 驗證都改由同一份 Selected Work 清單驅動。
- 保留加班管理系統與股東紀念品 CMS 的最新實際使用證據;AI Media Automation 的 Case Study、架構圖、GitHub 與能力邊界也維持不變。
- 不新增 JavaScript、dependency 或額外 layout abstraction。
GitHub Release ↗ · Compare v1.7.11 → v1.7.12 ↗
Overtime Operations Case Study:將加班管理與行政彙整系統加入第六個 Selected Work,補上實際校內使用證據與雙語 Case Study。
- 首頁 Selected Work 由五個擴充為六個,新增「加班管理與行政彙整系統 / Overtime Operations System」。
- 明確標示系統目前由國立成功大學教務處教學發展中心實際使用,並區分「實際內部使用」與「成大官方加班系統/校方背書」兩種不同主張。
- 新增中英文 Case Study,整理加班申請、主管審核、角色權限、D1 persistence、時段與重複申請後端驗證等已完成範圍。
- Production 帳號、資料庫、正式人員資料與營運入口不公開;作品頁只連隱私清理後的公開 source snapshot。
- 使用既有
svg_render media pipeline 產生首頁與 OG 預覽圖,不新增 JavaScript、第三方服務或 build dependency。
GitHub Release ↗ · Compare v1.7.10 → v1.7.11 ↗
Shareholder CMS Production Evidence:將股東紀念品 CMS 從一般商業網站描述更新為大倉代領實際營運中的業界系統,讓首頁與 Case Study 明確反映真實使用狀態。
data/projects.json 將第四個 Selected Work 標示為 IN PRODUCTION,首頁中英文同步顯示「業界使用中 · 大倉代領」。- Case Study Status / Evidence 明確標示
sharegift.tw 由大倉代領實際營運,同時保留 repository 可核對的 CMS、Auth、Database、Storage 與 CI/CD 技術範圍。 - 不新增資料層、元件、dependency 或一次性 render patch;沿用現有 project manifest、renderer 與公開網站擷取流程。
GitHub Release ↗ · Compare v1.7.9 → v1.7.10 ↗
Chess Product Image Layout Fix:修正楚河棋局 Case Study 主視覺在產品展示框內因固定高度與 object-fit: cover 被左右裁切,導致「楚河棋局」文字與畫面內容超出可視範圍。
- 保留既有 product window、品牌主視覺與 build-time intrinsic dimensions,不重新製圖、不新增 JavaScript 或 dependency。
.case-shot--product img 改為依原始比例完整顯示,使用 height: auto 與 object-fit: contain,桌面與手機都不再強制固定高度裁切。- Buoy runtime 仍保留刻意的固定 viewport crop;只移除 Chess product 不必要的裁切規則。
GitHub Release ↗ · Compare v1.7.8 → v1.7.9 ↗
Case Study Screenshot Layout Fix:修正 Event Check-in Case Study 的公開 Demo 截圖在桌面窄欄位被固定 intrinsic height 與 object-fit: cover 橫向裁切的問題。
- 沿用既有 Case Study 圖片與 build-time intrinsic
width / height,不重新截圖、不新增 JavaScript 或 dependency。 - 共用
.case-shot img 明確使用 height: auto,讓一般 Case Study 截圖維持原始比例並完整顯示左右內容。 - Buoy runtime 與 Chess product 既有專用 showcase 仍保留各自明確的固定高度與裁切規則,不受這次 generic 修正影響。
GitHub Release ↗ · Compare v1.7.7 → v1.7.8 ↗
EventOps Evidence & CV Cleanup:補上活動報到系統實際投入 2026 臺灣綜合大學系統新進教師專業知能研習營的使用證據,並同步更新中英履歷與精簡 CV build。
- Event Check-in Case Study 明確限定本人負責後端實作,補上 2026-08-28 成大活動的官方公開來源,正式 repository / database 仍維持 private,公開 Demo 僅使用虛構資料。
- 中英雙語履歷以 Event Check-in 實際活動後端取代已退役的 NCKU Return OS,並將中文 alias 統一為
Yu。 assets/Yu_CV_source.html 直接保存最終正確內容,不再由 build-time regex 替換專案。- CV QR 改用瀏覽器原生相對路徑解析
/tmp/portfolio-qr.png;刪除兩份內嵌 base64 與 scripts/prepare_cv_html.py。 scripts/build_site.sh 成為網站驗證單一入口,GitHub Actions 不再重複執行同一批 checker;CSP、privacy、accessibility、Lighthouse、artifact integrity、release identity 與 production smoke test 全部保留。
GitHub Release ↗ · Compare v1.7.6 → v1.7.7 ↗
Profile Crop Fix:重新裁切首頁 Hero 個人照,保留頭頂上方留白,避免圓角方框切到頭髮。
- 直接替換既有
assets/profile.jpg,不增加 CSS hack、JavaScript、圖片 loader 或 dependency。 - 維持 320×320 本地 JPEG、既有 CSP 與圖片品質驗證。
- 這次修正的是圖片內容裁切,不再靠移動整個頭像區塊處理。
GitHub Release ↗ · Compare v1.7.5 → v1.7.6 ↗
Profile Position Patch:將首頁 Hero 的大頭照區塊往下移,改善照片在右側卡片內過度靠上的視覺重心。
- 沿用既有
assets/profile.jpg、HTML 與圖片品質,不重新裁切或壓縮照片。 - 直接在既有 CSS 加上最小的
margin-top 位移,不新增 JavaScript、dependency 或圖片處理流程。 - CSP、accessibility、Lighthouse 與既有圖片驗證維持不變。
GitHub Release ↗ · Compare v1.7.4 → v1.7.5 ↗
Brand Rename:將 Portfolio 對外品牌名稱統一改為 Yu,包含網站、SEO、Case Study、Contact、Release 文案與雙語履歷。
- 所有對外顯示的舊品牌名稱已改為
Yu,中英文頁面與 metadata 同步。 - 履歷 alias 改為
Yu,CV source / build output 改名為 Yu_CV,網站下載連結同步更新。 - GitHub 帳號
yoya9933 與正式網域 yoya9933.page 保持不變,因為它們是實際可用的技術識別與 URL。 - 不新增 dependency、redirect layer 或 alias abstraction;直接修改既有 source 與 build 路徑。
GitHub Release ↗ · Compare v1.7.3 → v1.7.4 ↗
Profile Image Quality Hotfix:改用原始上傳照片重新輸出高品質本地 JPEG,移除上一版救援縮圖造成的明顯模糊。
assets/profile.jpg 直接由原始 428×592 照片重新輸出為高品質 JPEG,沿用既有圖片路徑、HTML、CSS 與 CSP。- 不新增圖片 loader、第三方服務、AI 放大流程或 dependency;瀏覽器仍直接顯示既有本地靜態資產。
- 沿用 v1.7.2 的 JPEG 結構與最小尺寸 CI gate,避免損壞或尺寸不足的頭像再次通過部署。
GitHub Release ↗ · Compare v1.7.2 → v1.7.3 ↗
Visual Hotfix:修復正式站實際截圖暴露的首頁頭像破圖與 AI Media Automation 流程圖裁切問題,並補上最小必要的回歸檢查。
- 將損壞的
assets/profile.jpg 重新編碼為可正常解碼的本地 JPEG,沿用既有圖片路徑、HTML 與 CSP,不重新引入第三方頭像依賴。 - Additional System 的預覽圖片由
object-fit: cover 改為 contain 並置中,讓 AI Media Automation 的完整流程圖在桌面與手機版都不再被左右裁切。 check_performance.py 新增 JPEG 結構與尺寸檢查,CI 會拒絕缺少 SOI / EOI、無有效 SOF 尺寸或過小的 Hero 頭像,避免「檔案存在但瀏覽器無法顯示」再次通過部署。- 不新增套件、圖片 loader 或額外 render layer;修正仍沿用既有 build pipeline、local asset 與 performance gate。
GitHub Release ↗ · Compare v1.7.1 → v1.7.2 ↗
Portfolio Polish & Ponytail Cleanup:更新首頁個人照片與資訊順序,同時移除 dark-only 網站已不需要的 theme patch、legacy CSS 與第三方頭像 runtime 依賴。
- 首頁中英文改用 repository 內的
assets/profile.jpg,移除 GitHub avatar runtime request;CSP img-src 收緊為僅 'self'。 - 將「事蹟 / Achievements」移到 Selected Work 前方,並同步調整導覽與 section 編號。
- 移除 Hero 的
$ build → test → improve_ 裝飾與對應 dead CSS。 - Contact、404、Buoy / Chess / Neon Arena 等 source HTML 直接固定 dark theme 與 theme-color,不再由 build-time regex 修補。
enhance_site.py 刪除 theme runtime patch,只保留 SEO、accessibility、安全連結與 intrinsic image dimensions 等有價值的 build hardening。p1.css 刪除 legacy light-theme、theme-toggle 與 has-four-selected 規則;專案版面由既有 .project-card.featured` 自然支援五張卡。- 首頁由
render_projects.py / data/projects.json 直接產生專案內容,刪除 source 中失去意義的重複卡片 markup。 - CSP、privacy、Lighthouse、artifact integrity、release identity、production smoke test 與 menu accessibility checks 全部保留。
GitHub Release ↗ · Compare v1.7.0 → v1.7.1 ↗
Achievements:把既有首頁成果區擴充成完整的個人重要事蹟,保留公開可核對來源,同時納入競賽、學業表現、技術認證與自行車挑戰紀錄。
- 中文首頁將「成果」改為「事蹟」,完整列出競賽與挑戰、學業與校內表現、技術認證三類紀錄。
- 英文首頁同步提供相同內容,避免中英文履歷資訊落差。
- 保留 NODASS、高通台灣 AI 黑客松、臺灣海洋國際青年論壇既有公開證據連結;其他項目明確以個人紀錄列示,不假裝已有第三方驗證。
- 沿用既有 timeline / heading / reveal 元件,不新增資料層、JavaScript 或第三方依賴。
GitHub Release ↗ · Compare v1.6.5 → v1.7.0 ↗
Ponytail Cleanup II:繼續依照 YAGNI / reuse-first 原則,刪除只修單一硬編碼問題的腳本、重複 checker 與未引用資產,讓既有 build / validation 流程承擔同一份責任。
- 修正中文 Contact 原始頁面的英文版連結後,刪除只做兩個字串 replacement 的
fix_locale_links.py。 - 將 P2 SEO / accessibility 與 robots 驗證收進既有
check_site.py,刪除 check_p2.py 與 check_robots.py,保留原本必要的 SEO、noopener/noreferrer、skip-link、structured data 與 robots 檢查。 - 刪除根目錄
sitemap.xml 重複來源;正式 sitemap 只由 render_projects.py 依 manifest 產生。 - 刪除未被 build 或公開頁面引用的
buoy-ui.svg、buoy-source.svg、chess-source.svg。 - README / manifest 文件同步目前五個 Selected Work 與實際 lean build 流程。
- CSP、privacy、Lighthouse、artifact integrity、release identity 與 production smoke test 全部保留。
GitHub Release ↗ · Compare v1.6.4 → v1.6.5 ↗
Ponytail Cleanup:依照 DietrichGebert/ponytail 的 YAGNI / reuse-first 規則,移除已被既有 build 流程覆蓋的補丁層與重複部署資產,不改變公開網站功能。
- 刪除
enhance_runtime.py,把真正必要的 dark-mode / theme-color / GitHub avatar hardening收進既有 enhance_site.py。 - 專案 WebP 只發布一份,不再同時保留
assets/projects/*.webp 與 assets/projects/snapshots/*.webp 兩份相同 deployment artifact。 - 移除已停用的
avatar-fallback.svg 與對應 build/checker wiring;GitHub 頭像的 privacy/performance 檢查仍保留。 - 移除
has-four-selected renderer flag 與五卡片特例 CSS,直接使用既有 .project-card.featured 版面規則。 - Light theme toggle 仍由 generic hardening 從舊 source 移除,但不再需要獨立 runtime patch stage。
- 保留 CSP、SEO、accessibility、privacy、Lighthouse、artifact integrity 與 release identity checks。
GitHub Release ↗ · Compare v1.6.3 → v1.6.4 ↗
CSP Security Hardening:盤點正式站瀏覽器實際載入的外部資源,並用最小權限 Content Security Policy 限制未列入來源的 script、style、image、network、frame 與 media 載入。
- 確認 Runtime 沒有外部 web font、CDN JavaScript / CSS、fetch / XHR / SSE / WebSocket、iframe、影音或 worker;相關 CSP directive 預設直接封鎖。
- Hero GitHub 頭像是目前唯一第三方 Runtime resource,
img-src 僅額外允許 https://github.com 與可能的 avatar redirect https://avatars.githubusercontent.com。 - 新增
apply_csp.py,在所有發布 HTML 的 <head> 前段自動加入 CSP meta;本機 CSS / JS / 圖片 / manifest 維持 'self'。 - Inline JSON-LD 不使用
'unsafe-inline',而是在每個最終頁面依實際內容產生 SHA-256 allowlist;同時封鎖 inline event handler、inline style attribute 與 'unsafe-eval'。 connect-src 'none'、frame-src 'none'、media-src 'none'、worker-src 'none'、object-src 'none',並啟用 upgrade-insecure-requests。- 新增
check_csp.py build gate:未來若新增外部 script / stylesheet / image host、CSS import/url 或 JavaScript network API,CI 會要求先明確更新 CSP,而不是默默放寬 default-src。 - 新增
docs/CSP.md,記錄 Runtime 資源清單、Build-time-only 外站擷取、實際 CSP 規則與部署後 Console 手動驗證方式。 - GitHub Pages 目前使用 CSP meta,因此
frame-ancestors 無法由 meta 強制;若未來改由可設定 response headers 的 edge/proxy 提供服務,應在 HTTP CSP header 補上 frame-ancestors 'none'。
GitHub Release ↗ · Compare v1.6.2 → v1.6.3 ↗
Chess Product UI Patch:重新整理楚河棋局 Case Study 的產品主視覺,讓大型木質棋盤圖片更自然地融入深色 Portfolio 版面。
- 中英文 Chess Case Study 的 Product 區塊改為專用 product-window showcase,不再把大型主視覺直接浮在內容欄。
- 保留原本木質棋盤與品牌畫面,但加入深色產品框、title bar 與較克制的說明層級,和前面的 Metrics / Architecture / Engineering 區塊保持一致。
- 桌面版限制圖片展示高度與比例,避免主視覺壓過工程內容;手機版使用更短的 viewport,降低長頁面負擔。
- 新增
LIVE PRODUCT · MULTIPLAYER WEB 標籤與補充說明,明確把視覺展示和多人同步、重連、持久化等工程成果區分開來。 - 沿用 v1.6.1 的 showcase 語言,使 Buoy Runtime 與 Chess Product 在不同內容類型下仍共享一致的 Portfolio 視覺系統。
GitHub Release ↗ · Compare v1.6.1 → v1.6.2 ↗
Buoy Runtime UI Patch:重新整理浮標 Case Study 的實際 Streamlit 執行畫面,讓大面積白底截圖與深色 Portfolio 視覺更協調。
- 中英文 Buoy Case Study 的 Runtime UI 改為專用 product-window showcase,不再直接把白底截圖鋪滿內容欄。
- 截圖加入深色框架、runtime title bar 與更克制的說明層級,和 Metrics / Architecture 區塊維持一致的視覺語言。
- 桌面版限制 runtime capture 的展示高度並聚焦畫面頂部實際功能區,減少無內容白色區域的視覺重量。
- 手機版使用較短的 capture viewport 與更緊湊的 frame spacing,避免 Case Study 被單張截圖拉得過長。
- 保留原始 Streamlit runtime 截圖與其可驗證來源,不以重新設計的 mockup 取代實際產品畫面。
GitHub Release ↗ · Compare v1.6.0 → v1.6.1 ↗
Neon Arena Case Study:將即時多人德州撲克正式加入第五個 Selected Work,補上雙語案例、公開 Demo、媒體擷取與作品清單整合。
- 首頁 Selected Work 由四個擴充為五個,新增
Neon Arena|即時多人德州撲克。 - 新增中英文 Neon Arena Case Study,聚焦 2–6 人即時多人、伺服器權威狀態、私牌隔離、18 秒回合、斷線重連與主池/邊池結算。
- Neon Arena 使用 Cloudflare Workers、Durable Objects、Hibernation WebSocket 與 SQLite 的多人架構;Portfolio 明確標示目前仍是朋友局測試版。
- 首頁與 Case Study 只連公開 Live Demo;原始 repository 為 private,因此不顯示 GitHub CTA,也不在公開網站暴露 private repository 名稱。
- 建置優先擷取公開 Neon Arena Demo 作為作品預覽,若外站暫時無法擷取則回退至 Portfolio repository 內已審核的霓虹牌桌 SVG。
- Demo 明確標示全部籌碼皆為虛擬數字,沒有付費、儲值或兌現;未把 commit/reveal、正式帳號或跨裝置身分恢復等未完成功能寫成既有能力。
- 五張 Selected Work 在桌面維持一張 lead card 加四張 2×2 卡片的平衡版面,並同步進首頁 JSON-LD、sitemap 與 CI manifest 驗證。
GitHub Release ↗ · Compare v1.5.1 → v1.6.0 ↗
Hero Avatar Patch:依照網站視覺偏好,將首頁右側的 Y 品牌 placeholder 恢復成原本 GitHub 帳號頭像。
- 首頁中英文 Hero 重新使用
https://github.com/yoya9933.png 作為頭像來源。 enhance_runtime.py 不再把 GitHub 頭像強制替換成 /assets/avatar-fallback.svg。- GitHub 頭像保留固定尺寸、async decoding 與
no-referrer,避免影響版面穩定性。 - Performance gate 改為驗證 GitHub 頭像存在,並防止
Y placeholder 再次成為首頁 Hero 主圖。
GitHub Release ↗ · Compare v1.5.0 → v1.5.1 ↗
Release / Observability 2.0:讓版本、部署產物與正式站狀態可以互相核對,並在發布後自動確認 production 已切到正確 commit。
- 正式 Release 改為 immutable version identity:若既有 Git tag 已鎖定其他 commit,同版本的新部署會直接失敗並要求升版。
/version.json 新增 GitHub Actions workflow、run ID、run number、ref 與 workflow run URL,部署問題可直接追到來源執行紀錄。- 新增
/build-manifest.json,列出部署檔案數量、大小與 SHA-256;CI 會重新計算並驗證 artifact 完整性。 - 新增 observability build gate,確認版本、commit、workflow metadata 與 build manifest 一致。
- GitHub Pages 部署完成後執行 production smoke test,驗證正式站
/version.json、/build-manifest.json 與核心頁面都已切到同一個版本與 commit。 - 股東紀念品 CMS 首頁卡片恢復使用
sharegift.tw 公開首頁快照;若公開站暫時無法擷取,會自動使用已審核的架構圖 fallback,且不存取登入後台。
GitHub Release ↗ · Compare v1.4.0 → v1.5.0 ↗
Performance & Quality:把圖片尺寸、第三方依賴、鍵盤操作與 Lighthouse 品質門檻納入可驗證的 build invariants。
- 專案圖片在 build 時從實際 PNG 產物取得 intrinsic width / height,避免以固定 1200×720 猜測尺寸造成 layout shift。
- Hero avatar 改為本地
Yu 品牌 SVG,不再在頁面載入 GitHub avatar,減少第三方 waterfall 與隱私依賴。 - 新增全站
:focus-visible 鍵盤 focus 樣式與 prefers-reduced-motion 降低動態效果規則。 - 新增
check_performance.py,驗證專案圖片尺寸、async decoding、本地 avatar 與 accessibility CSS 不會在後續 build 遺失。 - Lighthouse 仍採 3 次 median,但門檻提升為 Performance ≥ 75、Accessibility ≥ 95、Best Practices ≥ 90、SEO ≥ 95。
GitHub Release ↗ · Compare v1.3.0 → v1.4.0 ↗
Case Study 2.0:把作品頁從功能清單提升成可快速判讀的工程案例,同時保留可驗證證據與已知限制。
- 每篇中英文 Case Study 新增 Role / Scope / Status / Stack / Year,讓閱讀者快速理解實際工作範圍。
- 新增 Problem / Decision / Evidence / Next 標準化工程脈絡區,說明問題、技術判斷、可核對證據與下一步。
- Case Study framing 全部由
data/projects.json 驅動,中英文共用同一份專案事實來源。 - EventOps 明確保留公開 Demo 只有虛構資料的隱私邊界;AI Media Pipeline 明確標示 quality threshold 尚未被主流程強制為 publish blocker。
- 新增
check_case_studies.py build gate,避免後續更新遺漏標準欄位或把未完成能力寫成既有功能。
GitHub Release ↗ · Compare v1.2.0 → v1.3.0 ↗
Portfolio Architecture 2.0:把作品的公開資料、首頁 section、Case visual 與 media build plan 收斂到同一份 manifest。
data/projects.json 新增中英文首頁標題、Additional System 文案與各專案 media build plan。render_projects.py 改為整段產生 Selected Work / Additional System,不再依賴舊文案逐字 replace 或卡片 closing marker。- 專案 Card、Case Study actions、首頁 JSON-LD、sitemap 與可選 Case visual 都由同一份 project manifest 產生。
- 新增
build_project_media.py,統一處理 tracked snapshots、本機 synthetic demo capture 與 SVG architecture render;新增專案不再需要把 media 流程硬編碼進 shell script。 - Shareholder CMS 的 Case visual/caption 移入 manifest,不再在 renderer 裡用專案 slug 特判。
- 將
project-cta-fix.css 與 header-nav-fix.css 收斂為正式 portfolio-layout.css module,移除一次性 patch 檔案。
GitHub Release ↗ · Compare v1.1.1 → v1.2.0 ↗
Stability Patch:降低部署與品質檢查的偶發失敗,並移除外部網站對 production build 的依賴。
- GitHub Actions 升級到目前支援 Node 24 的主要版本,移除既有 Node 20 deprecation 技術債。
- Lighthouse 改為每頁執行 3 次並使用 median 判定,降低單次量測波動造成的 false negative。
- Site Quality 無論成功或失敗都保留 Lighthouse report artifact 7 天,方便診斷。
- 股東紀念品 CMS 的 production build 改用 repository 內已審核、可重現的架構 visual,不再於每次部署即時存取
sharegift.tw。 - 保留既有版本、SEO、隱私與 deployment artifact 驗證。
GitHub Release ↗ · Compare v1.1.0 → v1.1.1 ↗
建立完整的網站 Release Management 流程。
- 建立 Git tag 與 GitHub Release,讓正式版本固定對應到 Git commit。
- 新增
/changelog/ 網站更新紀錄頁,並由 CHANGELOG.md 自動產生。 - GitHub Actions 在部署前驗證
VERSION / CHANGELOG.md,並自動建立缺少的 tag / release。 /version.json 新增含時區的 build time 與 production / ci / local environment 資訊。- README 加入版本、Release & Deploy、Site Quality 與正式網站 Badge。
- CSS / JavaScript 靜態資產加入以網站版本為基準的 cache-busting query。
- Changelog 提供相鄰正式版本的 GitHub Compare 連結。
GitHub Release ↗ · Compare v1.0.0 → v1.1.0 ↗
第一個正式追蹤的 Portfolio 網頁版本。
之後網站內容或樣式的小幅修正增加 PATCH;新增向下相容功能增加 MINOR;若網站資訊架構或公開介面有不相容的大幅變更則增加 MAJOR。
- 以
data/projects.json 集中管理作品名稱、順序、Demo、GitHub、標籤與 Case Study 路徑。 - 中英文首頁包含四個 Selected Work 與一個 Additional System。
- 提供 Case Study、公開 Demo、雙語 CV、SEO / JSON-LD、sitemap 與 GitHub Pages CI/CD。
- 加入網頁版本資訊:Footer、HTML metadata、
/version.json 與 Git commit 對應。
GitHub Release ↗