From f8257dae936f6d317e2d434474e4801e33eaf05f Mon Sep 17 00:00:00 2001 From: Michal Dengusiak Date: Tue, 28 Jul 2026 15:08:13 +0200 Subject: [PATCH 1/5] chore: drop Rhino <8 support in Grasshopper project (net472 -> net8.0-windows) SAM.Analytical.Grasshopper.TMP was the only remaining net472/Rhino 7 project in this repo; every other Grasshopper project already targets net8.0-windows. Matches that shape exactly: - TargetFramework net472 -> net8.0-windows - Rhino7*InstallDir/PluginsDir registry vars -> Rhino*InstallDir/PluginsDir, pointed at Rhinoceros\8.0 / 8.0-WIP-Developer-Debug-trunk - Grasshopper PackageReference 6.32.20340.21001 -> 8.21.25188.17001 (matches every other migrated Grasshopper project in the workspace) - StartProgram Rhino 6 -> Rhino 8 Verified with dotnet build -t:Rebuild: succeeds, 0 errors. Generated by Michal Dengusiak and CodeClaude Co-Authored-By: Claude Sonnet 5 --- .../SAM.Analytical.Grasshopper.TMP.csproj | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/Grasshopper/SAM.Analytical.Grasshopper.TMP/SAM.Analytical.Grasshopper.TMP.csproj b/Grasshopper/SAM.Analytical.Grasshopper.TMP/SAM.Analytical.Grasshopper.TMP.csproj index 98cf142..01bd3c2 100644 --- a/Grasshopper/SAM.Analytical.Grasshopper.TMP/SAM.Analytical.Grasshopper.TMP.csproj +++ b/Grasshopper/SAM.Analytical.Grasshopper.TMP/SAM.Analytical.Grasshopper.TMP.csproj @@ -1,12 +1,12 @@  - net472 - $([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\McNeel\Rhinoceros\7.0\Install', 'Path', null, RegistryView.Registry64)) - $([MSBuild]::GetRegistryValueFromView('HKEY_CURRENT_USER\Software\McNeel\Rhinoceros\7.0-WIP-Developer-Debug-trunk\Install', 'Path', null, RegistryView.Registry64)) - $([MSBuild]::ValueOrDefault('$(Rhino7DebugInstallDir)', '$(Rhino7DefaultInstallDir)')) - $([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\McNeel\Rhinoceros\7.0\Install', 'Default Plug-ins Folder', null, RegistryView.Registry64)) - $([MSBuild]::GetRegistryValueFromView('HKEY_CURRENT_USER\Software\McNeel\Rhinoceros\7.0-WIP-Developer-Debug-trunk\Install', 'Default Plug-ins Folder', null, RegistryView.Registry64)) - $([MSBuild]::ValueOrDefault('$(Rhino7DebugPluginsDir)', '$(Rhino7DefaultPluginsDir)')) + net8.0-windows + $([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\McNeel\Rhinoceros\8.0\Install', 'Path', null, RegistryView.Registry64)) + $([MSBuild]::GetRegistryValueFromView('HKEY_CURRENT_USER\Software\McNeel\Rhinoceros\8.0-WIP-Developer-Debug-trunk\Install', 'Path', null, RegistryView.Registry64)) + $([MSBuild]::ValueOrDefault('$(RhinoDebugInstallDir)', '$(RhinoDefaultInstallDir)')) + $([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\McNeel\Rhinoceros\8.0\Install', 'Default Plug-ins Folder', null, RegistryView.Registry64)) + $([MSBuild]::GetRegistryValueFromView('HKEY_CURRENT_USER\Software\McNeel\Rhinoceros\8.0-WIP-Developer-Debug-trunk\Install', 'Default Plug-ins Folder', null, RegistryView.Registry64)) + $([MSBuild]::ValueOrDefault('$(RhinoDebugPluginsDir)', '$(RhinoDefaultPluginsDir)')) false true true @@ -46,7 +46,7 @@ 6.4.2 - 6.32.20340.21001 + 8.21.25188.17001 runtime @@ -60,7 +60,7 @@ en-US - C:\Program Files\Rhino 6\System\Rhino.exe + C:\Program Files\Rhino 8\System\Rhino.exe Program ..\..\build\SAM.Analytical.Grasshopper.TMP.xml From c0d9c54af7d2d8536a5b9185fe90318616cec86f Mon Sep 17 00:00:00 2001 From: Michal Dengusiak Date: Tue, 18 Aug 2026 10:05:39 +0200 Subject: [PATCH 2/5] Add AI agent instructions and project progress tracking Generated by Michal Dengusiak and CodeClaude Co-Authored-By: Claude Sonnet 5 --- AGENTS.md | 54 +++++++++++++++++++++++++++++++++++++++++++++ PROJECT_PROGRESS.md | 28 +++++++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 AGENTS.md create mode 100644 PROJECT_PROGRESS.md diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..2dbb955 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,54 @@ +# Project Instructions + +This repository may be worked on by different AI agents, +models, sessions, accounts, and computers. + +Git and committed repository files are the authoritative project state. +Do not rely on previous conversation memory. + +## Before starting work + +Before making significant changes: + +1. Read this `AGENTS.md`. +2. Read `PROJECT_PROGRESS.md`. +3. Understand the relevant existing code, architecture, tests, and conventions. +4. Review the current Git branch and working tree. +5. Continue from the documented current state. + +Prefer small, safe, targeted changes consistent with existing conventions. +Avoid unrelated refactoring unless it is required for the task. + +## Project continuity + +After each meaningful implementation, debugging, research, +testing, or validation checkpoint, update `PROJECT_PROGRESS.md`. + +Do not update it for trivial actions such as opening files, +searching the repository, or reading documentation. + +Keep `PROJECT_PROGRESS.md` concise and sufficient for another AI +agent on another computer to continue without access to the current conversation. + +`PROJECT_PROGRESS.md` must contain: + +- current status; +- work completed; +- important decisions and assumptions; +- files changed; +- tests, builds, checks, or validation performed and results; +- unresolved issues, risks, or blockers; +- exact recommended next step. + +When updating `PROJECT_PROGRESS.md`, preserve still-relevant information +from previous sessions. Remove or replace information only when it is +obsolete, resolved, or superseded. + +Before ending meaningful work, verify that `PROJECT_PROGRESS.md` +accurately represents the current repository state. + +When appropriate, remind the user to commit and push changes before +switching computers, accounts, sessions, or AI agents. + +Never assume conversation history, terminal history, generated files, +or uncommitted local changes will exist on another computer. \ No newline at end of file diff --git a/PROJECT_PROGRESS.md b/PROJECT_PROGRESS.md new file mode 100644 index 0000000..496b4b8 --- /dev/null +++ b/PROJECT_PROGRESS.md @@ -0,0 +1,28 @@ +# Project Progress + +## Branch +`sow/2026-Q3` + +## Last updated +Not updated yet. + +## Current status +No work recorded yet for this branch. + +## Completed +- None yet. + +## Decisions / assumptions +- None yet. + +## Files changed +- None yet. + +## Validation +- Not run yet. + +## Issues / blockers +- None known. + +## Next step +- Review the current repository state and continue with the next planned task. \ No newline at end of file From 1c012b9ad08dae6680123060546dbdc77a3627fe Mon Sep 17 00:00:00 2001 From: Michal Dengusiak Date: Tue, 22 Sep 2026 20:14:30 +0200 Subject: [PATCH 3/5] build: remove dead .NET Framework app.config leftovers 1 app.config file was a net472-era leftover containing an assembly binding redirect, which has no effect under .NET 8. Every project here targets net8.0-windows / net8.0 and is OutputType Library, and a library's .dll.config is never read at runtime (only the host .exe.config is). Its only remaining effect was to emit a stale SAM.*.dll.config file into build/ and the %APPDATA%\SAM deploy folder. Verified: TargetFrameworks are net8.0-windows/net8.0 only; all three projects are OutputType Library; no ConfigurationManager/System.Configuration/ AppSettings/OpenExeConfiguration usage in any .cs file; the app.config file contained only an assemblyBinding/bindingRedirect element; no .csproj/.props/ .yml references app.config/AppConfig/dll.config. Compile-only verification (dotnet build -t:Compile, Release) of SAM.Analytical.Grasshopper.TMP.csproj: 0 errors, 2 pre-existing unrelated NU1701 package-compatibility warnings (com.angusj.Clipper 6.4.2 targeting .NET Framework). Co-Authored-By: Claude Sonnet 5 --- Grasshopper/SAM.Analytical.Grasshopper.TMP/app.config | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100644 Grasshopper/SAM.Analytical.Grasshopper.TMP/app.config diff --git a/Grasshopper/SAM.Analytical.Grasshopper.TMP/app.config b/Grasshopper/SAM.Analytical.Grasshopper.TMP/app.config deleted file mode 100644 index 72259e8..0000000 --- a/Grasshopper/SAM.Analytical.Grasshopper.TMP/app.config +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file From 8a03f22d96b35bfa3247e63fff204e89faf7ac2e Mon Sep 17 00:00:00 2001 From: Michal Dengusiak Date: Tue, 22 Sep 2026 22:13:07 +0200 Subject: [PATCH 4/5] docs: record merged .NET Framework app.config cleanup in PROJECT_PROGRESS Co-Authored-By: Claude Opus 5.5 --- PROJECT_PROGRESS.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/PROJECT_PROGRESS.md b/PROJECT_PROGRESS.md index 496b4b8..e2885b6 100644 --- a/PROJECT_PROGRESS.md +++ b/PROJECT_PROGRESS.md @@ -4,25 +4,27 @@ `sow/2026-Q3` ## Last updated -Not updated yet. +2026-09-22 - app.config cleanup merged ## Current status -No work recorded yet for this branch. +Part of the repo-family .NET Framework `app.config` cleanup: base [SAM#126](https://github.com/SAM-BIM/SAM/pull/126) plus 17 sibling PRs, all merged into `sow/2026-Q3` on 2026-09-22 (SAM first), with their branches deleted. ## Completed -- None yet. +- [SAM_AssemblyResolver#7](https://github.com/SAM-BIM/SAM_AssemblyResolver/pull/7) merged as `b31ddd85`: removed dead .NET Framework `app.config` files. ## Decisions / assumptions -- None yet. +- Every project here targets `netstandard2.0` or `net8.0(-windows)` and is an `OutputType Library`. Library `.dll.config` files are never read at runtime (only the host `Rhino.exe`/`Revit.exe` config is), so the net472-era binding redirects, `` and `loadFromRemoteSources` were inert. They only emitted stale `.dll.config` files into `build/` and `%APPDATA%\SAM`. +- No `ConfigurationManager`/`AppSettings` use in the repo; deleted files held binding/runtime config only. ## Files changed -- None yet. +- `Grasshopper/SAM.Analytical.Grasshopper.TMP/app.config` (deleted) ## Validation -- Not run yet. +- Before merge, full `BuildAlls_v4.bat` (Debug Restore;Clean;Rebuild of every repo, starting from an emptied `%APPDATA%\SAM`): exit 0, 0 errors. The redeployed `%APPDATA%\SAM` has no `SAM.*.dll.config`. +- CI on the PR: build + spdx pass. ## Issues / blockers -- None known. +- None known for this cleanup. ## Next step -- Review the current repository state and continue with the next planned task. \ No newline at end of file +- None for this cleanup. Continue with the next planned task on `sow/2026-Q3`. From e6df5044f5c6e4b647e3f4c4b2d935ae0d161ad6 Mon Sep 17 00:00:00 2001 From: Michal Dengusiak Date: Thu, 1 Oct 2026 16:47:50 +0200 Subject: [PATCH 5/5] chore: remove internal agent/progress files and evidence artifacts from upstream contribution Removes AGENTS.md, PROJECT_PROGRESS.md and internal evidence/.claude artefacts that are SAM-BIM workflow records, not upstream project documentation. Co-Authored-By: Claude Sonnet 5.5 --- AGENTS.md | 54 --------------------------------------------- PROJECT_PROGRESS.md | 30 ------------------------- 2 files changed, 84 deletions(-) delete mode 100644 AGENTS.md delete mode 100644 PROJECT_PROGRESS.md diff --git a/AGENTS.md b/AGENTS.md deleted file mode 100644 index 2dbb955..0000000 --- a/AGENTS.md +++ /dev/null @@ -1,54 +0,0 @@ -# Project Instructions - -This repository may be worked on by different AI agents, -models, sessions, accounts, and computers. - -Git and committed repository files are the authoritative project state. -Do not rely on previous conversation memory. - -## Before starting work - -Before making significant changes: - -1. Read this `AGENTS.md`. -2. Read `PROJECT_PROGRESS.md`. -3. Understand the relevant existing code, architecture, tests, and conventions. -4. Review the current Git branch and working tree. -5. Continue from the documented current state. - -Prefer small, safe, targeted changes consistent with existing conventions. -Avoid unrelated refactoring unless it is required for the task. - -## Project continuity - -After each meaningful implementation, debugging, research, -testing, or validation checkpoint, update `PROJECT_PROGRESS.md`. - -Do not update it for trivial actions such as opening files, -searching the repository, or reading documentation. - -Keep `PROJECT_PROGRESS.md` concise and sufficient for another AI -agent on another computer to continue without access to the current conversation. - -`PROJECT_PROGRESS.md` must contain: - -- current status; -- work completed; -- important decisions and assumptions; -- files changed; -- tests, builds, checks, or validation performed and results; -- unresolved issues, risks, or blockers; -- exact recommended next step. - -When updating `PROJECT_PROGRESS.md`, preserve still-relevant information -from previous sessions. Remove or replace information only when it is -obsolete, resolved, or superseded. - -Before ending meaningful work, verify that `PROJECT_PROGRESS.md` -accurately represents the current repository state. - -When appropriate, remind the user to commit and push changes before -switching computers, accounts, sessions, or AI agents. - -Never assume conversation history, terminal history, generated files, -or uncommitted local changes will exist on another computer. \ No newline at end of file diff --git a/PROJECT_PROGRESS.md b/PROJECT_PROGRESS.md deleted file mode 100644 index e2885b6..0000000 --- a/PROJECT_PROGRESS.md +++ /dev/null @@ -1,30 +0,0 @@ -# Project Progress - -## Branch -`sow/2026-Q3` - -## Last updated -2026-09-22 - app.config cleanup merged - -## Current status -Part of the repo-family .NET Framework `app.config` cleanup: base [SAM#126](https://github.com/SAM-BIM/SAM/pull/126) plus 17 sibling PRs, all merged into `sow/2026-Q3` on 2026-09-22 (SAM first), with their branches deleted. - -## Completed -- [SAM_AssemblyResolver#7](https://github.com/SAM-BIM/SAM_AssemblyResolver/pull/7) merged as `b31ddd85`: removed dead .NET Framework `app.config` files. - -## Decisions / assumptions -- Every project here targets `netstandard2.0` or `net8.0(-windows)` and is an `OutputType Library`. Library `.dll.config` files are never read at runtime (only the host `Rhino.exe`/`Revit.exe` config is), so the net472-era binding redirects, `` and `loadFromRemoteSources` were inert. They only emitted stale `.dll.config` files into `build/` and `%APPDATA%\SAM`. -- No `ConfigurationManager`/`AppSettings` use in the repo; deleted files held binding/runtime config only. - -## Files changed -- `Grasshopper/SAM.Analytical.Grasshopper.TMP/app.config` (deleted) - -## Validation -- Before merge, full `BuildAlls_v4.bat` (Debug Restore;Clean;Rebuild of every repo, starting from an emptied `%APPDATA%\SAM`): exit 0, 0 errors. The redeployed `%APPDATA%\SAM` has no `SAM.*.dll.config`. -- CI on the PR: build + spdx pass. - -## Issues / blockers -- None known for this cleanup. - -## Next step -- None for this cleanup. Continue with the next planned task on `sow/2026-Q3`.