audit: inventory P_Rec_Annot v1.0.4 sources

This commit is contained in:
codex
2026-07-31 09:37:32 +03:00
parent 596c95a4b6
commit 34222cedc8
32 changed files with 5860 additions and 0 deletions
@@ -0,0 +1,12 @@
{
"auditId": "p-rec-annot-v1.0.4",
"sourceRoot": "C:\\dev\\autodesk\\link\\P_Rec_Annot\\v1.0.4\\repo",
"sourceHead": null,
"findings": [
{"id":"ANNOT-001","category":"Architecture","severity":"HIGH","title":"Legacy multi-project loader binds to Plant 3D 2019","description":"25 x64 .NET Framework 4.7 projects and HintPath references target AutoCAD 2019 assemblies.","evidence":[{"file":"AnnotateLineNumbers/AnnotateLineNumbers.csproj","startLine":1,"endLine":100}],"impact":"Rebuild and adapter work required for 2026.","recommendation":"Separate Core from Plant3D2026 adapter.","migrationAction":"REIMPLEMENT_SAME_BEHAVIOR"},
{"id":"ANNOT-002","category":"Loading","severity":"HIGH","title":"Runtime loads sibling DLLs through _netload","description":"Settings.xml controls a sequential Editor.Command _netload chain.","evidence":[{"file":"OrthoLoader/Loader.cs","startLine":24,"endLine":118}],"impact":"Deployment/order/path failures.","recommendation":"Replace with supported manifest and explicit dependency loading.","migrationAction":"REIMPLEMENT_SAME_BEHAVIOR"},
{"id":"ANNOT-003","category":"DrawingWrite","severity":"HIGH","title":"Custom operations write many DWG entities","description":"Transactions and write-open entity operations create/update/delete annotation blocks and attributes.","evidence":[{"file":"AutoAnnotateView/Commands.cs","startLine":476,"endLine":500},{"file":"AutoLinenumberConnections/Commands.cs","startLine":535,"endLine":558}],"impact":"Partial writes and visual divergence possible.","recommendation":"Golden DWG, rollback and idempotency tests.","migrationAction":"REIMPLEMENT_SAME_BEHAVIOR"},
{"id":"ANNOT-004","category":"UI","severity":"MEDIUM","title":"Ribbon project event lifecycle is incomplete","description":"CurrentProjectOpenedEvent is subscribed during Ribbon initialization; Terminate is empty and project handler unsubscribe is not evidenced.","evidence":[{"file":"OrthoLoader/Ribbon.cs","startLine":147,"endLine":189}],"impact":"Duplicate callbacks or stale UI state.","recommendation":"Central subscription guard and deterministic unsubscribe.","migrationAction":"REIMPLEMENT_SAME_BEHAVIOR"},
{"id":"ANNOT-005","category":"UsageTelemetry","severity":"HIGH","title":"218796 cannot be proven as manual launches from this source","description":"The source contains machine-name lookup for annotation settings but no confirmed writer for the external usage counter.","evidence":[{"file":"GetLinenumberAnnotationText/LinenumberAnnotation.cs","startLine":225,"endLine":250}],"impact":"Usage matrix may overcount operations/objects.","recommendation":"Audit the producer of the XLSX and trace one command end-to-end.","migrationAction":"RETEST_WORKAROUND"}
]
}