Creato un file agents di riferimento da opecode.ai, aggiunnto un todo operativo, avviato pi.dev per il refactor del codice...

This commit is contained in:
Samuele E. Locatelli (W11-AI)
2026-05-16 19:11:59 +02:00
parent eaa8eea7fe
commit e3689f5ec7
2 changed files with 40 additions and 0 deletions
+25
View File
@@ -0,0 +1,25 @@
# Agent Instructions: MAPO-IOB-WIN
## Project Overview
A collection of .NET (C#/VB) projects for industrial communication with NC controls (Fanuc, Siemens, Mitsubishi, etc.) via the Mapo Protocol.
## Build & Release
- **Toolchain**: MSBuild (`x86` target).
- **Config**: Always use `Release` configuration and `x86` platform.
- **Command Example**:
```powershell
& "$env:MSBUILD_PATH" "ProjectName\ProjectName.csproj" -target:Build /p:Configuration=Release /p:Platform="x86" /p:OutputPath=bin/ /nodeReuse:false /verbosity:minimal /m
```
- **NuGet**: Requires Steamware Nexus Proxy sources (defined in `.gitlab-ci.yml`).
- **Versioning**: Automated during CI via `VersGen\VersGen.cs` and `.nuspec` updates.
- **Release Artifacts**: Zipped using `7z.exe`; MD5/SHA1 hashes are generated; uploaded to Nexus.
## Key Directories & Files
- **`IOB-WIN-*`**: Protocol-specific implementations (e.g., `FANUC`, `SIEMENS`, `SHELLY`).
- **`VersGen\`**: Handles automated assembly versioning during build.
- **`UtilityScripts\`**: Contains `alarmFormatter.py` for converting alarm CSV/Excel to JSON. Requires `python3` and `pip install inquirer`.
## Environment & Setup
- **Siemens PLC**: Must enable "PUT/GET" permission in TIA Portal.
- **Dependencies**: Uses `saltminion` (via Chocolatey) and specific Windows accounts (`steamware`/`IOB`).
- **Docs**: Documentation for several modules is generated via `docfx`.
+15
View File
@@ -0,0 +1,15 @@
Todo per il refactor del Simulatore.
Comincia dalla folder IOB-WIN-FORM, da qui analizza Simula.cs che si trova nella subfolder Iob.
Questa classe estende altri oggetti: segui la catena di eredita dei file per comprenderrne il funzionamento.
in particolare questo oggetto eredita dalla classe generic, che è sudddivisa in 2 files, Generic.Protected.cs e Generic.Public.cs (essendo molto corposa ho suddiviso i metodi pper scope)
Se devi leggere file particolarmente
lunghi procedi per segmenti parziali segnnandoti su un file wip.md i risultati parziali per evitare loop continui sennza uscita
Questo file definisce un programma di simulazione di lettura dati da device esterni ed invio di stati e dati al server centrale. E' stato progettato per lavorare con gli stessi elementi logici dei veri file che implementano la comunicazione con machinari vari ed il MES centrale.
Pianifica un insieme di modifiche che possano ridurre il consumo della CPU, eventualmente anche cambiando i periodi base di esecuzione per favorire il rilascio delle risorse alla CPU.
Tieni in considerazione che questo sw vviene eseguito in diverse decine di unità nello stessso momento dentro una vm proxmox, e quindi il context switch genera consumo CPU che non viene sempre evidenziato dal task manager della VM, e il miio scopo è ridurre il consumo della CPU complessiva e reale vista da proxmox, non solo quuella evidennziata dentro la VM