添加 MX-PD-盘古 项目文件
将 MX-PD-盘古 - new 目录下的所有文件添加到主仓库
This commit is contained in:
92
MX-PD-盘古 - new/PanGu.DieBonderApp/.github/instructions/recipe-and-logging.instructions.md
vendored
Normal file
92
MX-PD-盘古 - new/PanGu.DieBonderApp/.github/instructions/recipe-and-logging.instructions.md
vendored
Normal file
@@ -0,0 +1,92 @@
|
||||
---
|
||||
applyTo: "MainShell/Recipe/**/*.cs,MainShell/Parameter/**/*.cs,MainShell/Log/**/*.cs,MainShell/Filewritable/**/*.cs,MainShell/Process/**/*.cs"
|
||||
---
|
||||
|
||||
# Recipe, Persistence, and Logging Instructions
|
||||
|
||||
## Recipe System
|
||||
Recipe hierarchy includes:
|
||||
- IRecipe
|
||||
- RecipeBase
|
||||
- SubstrateRecipe
|
||||
- WaferRecipe
|
||||
- CarrierRecipe
|
||||
- ProcessRecipe
|
||||
|
||||
Use existing recipe abstractions and managers:
|
||||
- RecipeManager
|
||||
- RecipeWrapManager
|
||||
|
||||
Do not bypass repository recipe patterns by creating incompatible configuration systems.
|
||||
|
||||
## <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
|
||||
<EFBFBD>䷽ϵͳ<EFBFBD><EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD>в㼶<EFBFBD><EFBFBD>
|
||||
- `IRecipe`
|
||||
- `RecipeBase`
|
||||
- `SubstrateRecipe`
|
||||
- `WaferRecipe`
|
||||
- `CarrierRecipe`
|
||||
- `ProcessRecipe`
|
||||
|
||||
Ӧ<EFBFBD><EFBFBD><EFBFBD>ȸ<EFBFBD><EFBFBD>ã<EFBFBD>
|
||||
- `RecipeManager`
|
||||
- `RecipeWrapManager`
|
||||
|
||||
<EFBFBD><EFBFBD>Ҫ<EFBFBD>ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䷽<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD>½<EFBFBD>һ<EFBFBD>ײ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD>
|
||||
|
||||
## Parameter and Process Input Rules
|
||||
- Prefer reading process inputs from recipe objects and formal managers
|
||||
- Do not pull process parameters from UI state when repository recipe/domain objects already exist
|
||||
- Keep process input sources explicit and traceable
|
||||
|
||||
## <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
- <20><><EFBFBD>ȴ<EFBFBD><C8B4>䷽<EFBFBD><E4B7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA> UI ״̬<D7B4><CCAC>ȡ<EFBFBD><C8A1><EFBFBD>̲<EFBFBD><CCB2><EFBFBD>
|
||||
- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԴҪ<D4B4><D2AA>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD><D7B7>
|
||||
|
||||
## File Persistence Rules
|
||||
Persistence follows:
|
||||
- IFileWritable
|
||||
- FileWriteBase
|
||||
- JsonFileWritableBase
|
||||
|
||||
Use:
|
||||
- FileWriteQueue for async queued file writes
|
||||
- Newtonsoft.Json for JSON serialization
|
||||
|
||||
Reuse IgnorePropertiesResolver when selective serialization is needed.
|
||||
|
||||
## <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
|
||||
<EFBFBD>ļ<EFBFBD><EFBFBD>־û<EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><EFBFBD><EFBFBD>мܹ<EFBFBD><EFBFBD><EFBFBD>
|
||||
- `IFileWritable`
|
||||
- `FileWriteBase`
|
||||
- `JsonFileWritableBase`
|
||||
|
||||
Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ã<EFBFBD>
|
||||
- `FileWriteQueue` <20><><EFBFBD><EFBFBD><EFBFBD>첽д<ECB2BD><D0B4><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD>
|
||||
- `Newtonsoft.Json` <20><><EFBFBD><EFBFBD> JSON <20><><EFBFBD>л<EFBFBD>
|
||||
- <20><>Ҫѡ<D2AA><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> `IgnorePropertiesResolver`
|
||||
|
||||
## Logging Rules
|
||||
- Use `LogNameDefine` for log names
|
||||
- Use `LogManager` for unified log management
|
||||
- Keep logs consistent with existing MaxWellGeneralLog usage
|
||||
|
||||
## <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
|
||||
<EFBFBD><EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
- <20><>־<EFBFBD><D6BE><EFBFBD><EFBFBD>ͳһ<CDB3><D2BB> `LogNameDefine` <20>ж<EFBFBD><D0B6><EFBFBD>
|
||||
- ͨ<><CDA8> `LogManager` ͳһ<CDB3><D2BB><EFBFBD><EFBFBD>
|
||||
- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> `MaxWellGeneralLog` <20>÷<EFBFBD>һ<EFBFBD><D2BB>
|
||||
|
||||
## Logging Expectations
|
||||
Generated code should:
|
||||
- log major workflow and hardware steps
|
||||
- log failures with enough context
|
||||
- preserve traceability for production and troubleshooting
|
||||
|
||||
## <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
|
||||
<EFBFBD><EFBFBD><EFBFBD>ɴ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>־Ӧ<EFBFBD><EFBFBD><EFBFBD>㣺
|
||||
- <20>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD>̲<EFBFBD><CCB2><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
|
||||
- ʧ<><CAA7><EFBFBD><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD>㹻<EFBFBD><E3B9BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
- <20><>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݺ<EFBFBD><DDBA>ֳ<EFBFBD><D6B3><EFBFBD><EFBFBD><EFBFBD>
|
||||
Reference in New Issue
Block a user