UniExp HK 實驗港
案例所證明的能力 完整產品負責能力:流程設計、前後端交付、上線運營與 Agent 迭代
- Next.js
- TypeScript
- Tailwind CSS
- Self-hosted Supabase
- Cloudflare
- Gemini
- Agent Harness
- Policy Gate
- Quality Workbench
一個從產品定義、前後端開發到上線運營完整落地的三語實驗招募平台,並以持續校準的審核 Agent 輔助內容治理。
項目概覽
角色 獨立創辦人與開發者 — 產品設計、前端、後端、上線、日常維護
場景
香港高校實驗招募散落在院系網站、社交媒體、群組與線下海報。研究者缺少連續管理發布、報名審核、排期、補償與口碑的工具;參與者則需在分散來源間反覆核對資格、時間與報酬。
產品策略
我為研究者、參與者與管理員設計同一套運營閉環:研究者發布研究、管理時段與審核報名;參與者瀏覽、報名、完成研究並互評;管理員治理外部來源與發布申請。Agent 從來源頁和海報抽取結構化證據,判斷時效、重複與發布風險,再把建議送入對應審核隊列,由管理員作出業務決策。
評測
採用 2026-07-04 同一口徑的生產數據快照評測:14 次 Agent 運行產生 31 項審核建議,27 項完成閉環,其中 22 項採納、5 項拒絕。一次補償金額誤判被歸因到字段語義,並沉澱為金額拆解規則與 policy gate。
成果與當前階段
線上平台現管理 81 項研究(41 項已發布、38 項已完成、2 項已取消)、20 個啟用來源、11 個官方域名與 54 個平台帳號。下一階段將面向高校實驗室與研究團隊開展 B 端推廣。
我的工作
- 研究發佈 + 時段排期 + 報名審核(研究者端)
- 瀏覽 / 篩選 / 報名 / 評價(參與者端)
- 全站三語 i18n(EN / 繁中 / 简中)
- External Study Ops Agent,分層自主階梯:L1 shadow → L1.5 cross-check → L1.6 Codex replacement check → L2 proposal queue → L3 guarded write(每隊列每輪最多寫 1 條 pending)
- 多隊列 agent:單一對外入口,內部 supervisor + 四個 worker(new_study_lead / published_change / source_candidate / seed_candidate),各自只能寫一張指定的 Admin pending 表
- 定時守護審查:每日 VPS cron(22:05 UTC)以 L1 shadow mode 運行,輸出只讀證據;任何生產改動都需進入 Admin review
- Production Explore truth source、quality workbench、section-level evidence、signup freshness、visual/OCR/QR review 與 feedback-audit ledger
技術證據
- Agent 安全模型:每條 queue proposal 過 deterministic evaluateQueueProposalPolicy() gate 蓋 writeEligible 章;L1 只寫 noProductionWrite=true 本地報告;自主權止於 Admin pending queue——experiments、source registry、approve/reject 仍由人工審核
- Truth discipline:Production Explore 中已發布的實驗保持權威;legacy pipeline、source/seed discovery 與 agent shadow report 把候選送入 Admin review
- 評測與 readiness gate:daily-cron 證據區分 real_cron 與手動觸發;L3 readiness 要求 30 天內 reviewed proposal ≥10、acceptance ≥80%、stale/bad-source false positive 為 0、且無 production-write incident
- Failure→gate:曾有 proposal 把 HKD 80 baseline 當成總報酬,修正後成為永久的 compensation-component policy check,把該類降級為 report-only
- Reasoner 可靠性:Gemini reasoner 返回結構化 JSON;輸出無效或失敗時回退到 deterministic read-only reasoner,執行權限始終由 policy layer 掌握
- 自託管 Supabase(auth + Postgres + 維護)+ Cloudflare 邊緣加速與防濫用;獨立持續維護,累計 153 個 merged PR(最新 #158,2026-08-25 核實生產發布)
從 pipeline 到 harness
外部實驗採集不是一次性冷啟動——招募頁會過期、表單會關、一個 aggregate page 掛多個實驗、舊 pipeline 會誤判來源或重複。直接讓 agent 寫生產庫風險太高,於是 agent 被包進一個 harness:policy gate、truth source、quality workbench 與 Admin review 決定什麼才真正可執行。
自主階梯
自主權按層級推進:L1 shadow(只寫本地報告,noProductionWrite=true)→ L1.5 cross-check → L1.6 Codex replacement check → L2 proposal queue → L3 guarded write,每隊列每輪最多一條 pending。每一級都有各自的 gate;experiments、source registry 與 approve/reject 由人工審核。
多隊列設計與 truth discipline
單一對外入口連接一個 supervisor,再把工作拆給四個 worker——new_study_lead、published_change、source_candidate 與 seed_candidate——各自對應一張 Admin pending 表。確定性的 evaluateQueueProposalPolicy() gate 負責授予寫入資格。
Production Explore 中已發布的實驗保持權威。legacy pipeline、source/seed discovery 與 agent shadow report 通過 Admin review 路徑提供候選。
一個變成 gate 的失敗
曾有一條 proposal 把 HKD 80 baseline 當成總報酬,忽略了第二筆 optional 的 HKD 80 follow-up。修正不是一次性的——policy gate 增加了 compensation-component 語義檢查,把該類整體降級為 report-only。一個失敗變成了可復用的 gate,而這正是 harness 的意義。
每日守護審查
一個 VPS cron 每日 UTC 22:05 運行 L1 shadow 並輸出只讀證據。另一個 checker 區分排程與手動運行;連續三天通過、零 policy violation 的 real-cron 證據可開啟 L2 readiness review,生產改動則繼續經由 Admin approval。