bee-library
bee-library enthält 10 gesammelte Skills von jeff377, mit Repository-Berufsabdeckung und Skill-Detailseiten auf SkillsMP.
Skills in diesem Repository
bee-library 新增框架快取物件的完整跨檔流程,分兩類——Define 定義快取(來源是定義檔,經 IDefineAccess)與 Database 資料庫相依快取(來源是 DB,經 ICacheDataSourceProvider 自載 + cache-notify 失效)。含 ObjectCache vs KeyObjectCache 決策樹、ICacheContainer + CacheContainerService 三處同步、兩個 CacheNotify 測試 stub(漏補必 CS0535)、DI 相依環的延遲解析與 cache-notify 失效鏈。當使用者要「新增快取物件」、「加一個 cache」、「快取某定義 / 資料庫資料」、「KeyObjectCache / ObjectCache」、「cache-notify 失效」、「判權限/查設定要零 DB」之類需求時使用。
為 bee-library 加一個新的 samples/ 專案,內含前端類型選擇(Console / Blazor Server / Avalonia / WinForms)、後端配對決策樹(QuickStart.Server / in-process Local)、auth 需求判斷、`Bee.Samples.slnx` 整合、README 樣板與 ProjectReference 預設值。當使用者要「新增一個 sample」、「加一個 demo」、「為某個 src 套件做 demo」之類需求時使用。
對 `samples/<Sample.Name>/` 的 demo 跑一輪端到端冒煙測試(透過 computer-use 點擊 UI 元素、驗證關鍵畫面),以宣告 demo 在本機跑得通。讀取 `samples/<Sample.Name>/.smoke.yaml` 設定檔。當使用者要「跑 demo」、「驗證 sample」、「demo 跑得通嗎」、「smoke test sample」之類需求時使用。
對 bee-library 框架做「全面體檢」的可重複方法論 —— 九面向(架構分層、相依分層與循環相依、安全性、維護性、散落/不必要類別、序列化一致性、公開 API 表面、測試品質與覆蓋、文件漂移)唯讀審查,以平行子代理分面向掃描(非抽樣),交叉去重後彙整成分級(P0~P4)重構計畫 + 每項 10 分制評分。內建各面向的具體檢查清單、已知雷區、與「應為乾淨」的基準項(供回歸偵測)。當使用者要「全面體檢」、「架構體檢」、「健康檢查/健康度」、「framework review」、「全面 review」、「架構審查」、「幫框架打分/評分」、「有沒有散落或不必要的類別」、「提重構計畫」之類需求時使用,即使沒明講「體檢」也要在這類全框架審查請求時主動觸發。**只負責唯讀審查、評分與產出重構計畫,不直接改 code**(修正另循一般流程)。
bee-library 新增對外公開的 BO 方法(FormBusinessObject / SystemBusinessObject)跨 contract / wire / BO / Repository / Client 共 7~8 個檔案的完整流程,含 3 條硬性規則、層別樣板、兩層 round-trip 測試與最終 checklist。當使用者要「新增 BO 方法」、「為 progId.action 加 API」、「FormBO/SystemBO 加方法」、「實作 GetList / Insert / Update / Delete」之類需求時使用。
在一個已接好的 Bee.NET app 上「加一張表單」的多檔流程與避雷 —— 一張可用的 CRUD 表單 = 4 處純定義修改(FormSchema + TableSchema + DbCategorySettings 註冊 + ProgramSettings 上選單),不寫 UI / CRUD 程式碼。涵蓋 4 檔 checklist(漏哪個會有什麼徵兆)、business 表用 company scope、TableSchema 資料夾必須 = CategoryId、FormSchema 慣例(lookup 的 RelationProgId+RelationFieldMappings+ref_* RelationField、master-detail 的 sys_master_rowid、DropDownEdit+ListItems、計算欄 FormField.ReadOnly、sys_name 可省)、何時才需要自訂 BO。當使用者要「加一張表單 / 主檔 / 單據」、「新增一個 ProgId / 畫面」、「為某張表做 CRUD」、「Bee 表單要怎麼定義 lookup / 明細 / 下拉 / 唯讀欄」之類需求時使用,即使沒明講「加表單」也要主動觸發。
在 bee-library(或畢業後的獨立 repo)搭一個「獨立 Bee.NET 後端應用/demo」的接線慣例 —— 不走 Bee.Samples.Shared,只依賴公開 Bee.* 套件或 ProjectReference。涵蓋最易踩錯的 DB scoping(CategoryId 是 common/company/log scope 選擇器、業務資料必須 company)、輕量 company context、自訂 auth(免 st_user)、seeder(DbCategorySettings 驅動建表 + sys_id 關連 seeding)、ProgramSettings 身兼 BO 綁定 + 選單來源、Server 不可依賴 Bee.Api.Client、以及反覆出現的操作避雷。當使用者要「起一個 Bee app / 後端」、「做一個會畢業到獨立 repo 的 demo」、「自己接 Bee 後端 host」、「設定 DatabaseSettings / DbCategorySettings / company 資料庫」、「Bee 的 common vs company 怎麼分」之類需求時使用,即使沒明講 scaffold 也要主動觸發。
bee-library 從一個 FormSchema XML 反推 / 產出對應的 FormLayout、TableSchema、雙語 LanguageResource 三類「sidecar」定義檔。涵蓋 throw-away xUnit fact idiom(直接呼叫 framework public generator 序列化原貌)、FormSchemaLocalizer sub-key 規範(Schema.DisplayName / Table.X.DisplayName / Field.X.Caption)、中→英欄位翻譯指引(sys_/ref_/audit_ 系統前綴 + ERP 慣用詞)、target 衝突偵測與處理。當使用者要「依 X.FormSchema 產 layout / language / tableschema」、「為 X 補 i18n」、「scaffold 一個 form 的 sidecar 定義」、「FormSchema 轉 layout / 翻 language / 反推 tableschema」之類需求時使用。
bee-library 物件「三棲序列化」(XML / JSON / MessagePack)的設計指引。核心兩軸用途——XML 用於持久化(存檔 / 定義檔 / 快照 / 落 DB)、JSON + MessagePack 用於 API 傳遞資料(wire payload,由 PayloadFormat 決定上線哪個,JSON 給 JS 友善、MessagePack 高效)。涵蓋物件三棲 recipe(無參數 ctor + 三標籤共存 + 衍生欄位 ignore)、集合三棲(MessagePackCollectionBase + 必顯式註冊 CollectionBaseFormatter,否則沉默出空集合)、wire 傳遞模式(物件本身 vs XML string)、踩雷與三棲 round-trip 測試樣板。當使用者要「物件要支援 XML/JSON/MessagePack」、「序列化」、「傳前端又要存檔」、「跨 wire 傳物件」、「KeyCollectionBase / MessagePack 集合序列化」、「可序列化物件設計」之類需求時使用。
整理 CHANGELOG(自上一版 tag 至 HEAD),產出雙語草稿供使用者 review。當使用者提到「整理 CHANGELOG」、「準備發版」、「draft changelog」、「發 v4.x.x」、「下一版要發了」、「整理 release notes」之類情境時使用。