diff --git a/docs/SCRIPT_RECOMMENDATIONS.md b/docs/SCRIPT_RECOMMENDATIONS.md index 1ef4c09..d87ba4e 100644 --- a/docs/SCRIPT_RECOMMENDATIONS.md +++ b/docs/SCRIPT_RECOMMENDATIONS.md @@ -12,9 +12,9 @@ ### /district scripts Scripts provided by the districts. These are currently running and actively used by their associated districts. -- SWF Scripts were provided by **James Moffitt** -- SWT Scripts were provided by **Andrew Miller** -- SWL Scripts were provided by **Erin Krebs** +- SWF Scripts were provided by **James M.** +- SWT Scripts were provided by **Andrew M.** +- SWL Scripts were provided by **Eric K.** ### /regi-headless/src/test/resources/usace/rowcps/headless/examples These appear to be older example scripts that haven't been updated since 2019. They are out of sync with other scripts. diff --git a/docs/adr/01-removal-of-unused-scripting-apis.md b/docs/adr/01-removal-of-unused-scripting-apis.md new file mode 100644 index 0000000..46b4931 --- /dev/null +++ b/docs/adr/01-removal-of-unused-scripting-apis.md @@ -0,0 +1,68 @@ +# ADR: Remove Approved Scriptable Public APIs + +## Status + +Accepted + +## Context + +During a dedicated scripting meeting, USACE approved removing several public scriptable API implementation classes +that had previously been identified as candidates for removal. + +The approved removals are class-level API removals only. +At this time, no method-level APIs listed in the API recommendations document will be removed. + +The APIs approved for removal are: + +- `ScriptableExportTSAssociationsImpl` +- `ScriptableExportSigStagesImpl` +- `ScriptableImportSigStagesImpl` +- `RetrieveSigStagesImpl` +- `ScriptablePoolPercentImpl` +- `ScriptableStatusGraphicImpl` + +These APIs were reviewed based on current usage in recent examples, district scripts, and older examples. +The approved removals are not currently used by district scripts. +Some may still appear in examples, but they are associated with unused, obsolete, or replacement functionality. + +## Decision + +We will remove the following public scriptable API implementation classes: + +- `ScriptableExportTSAssociationsImpl` +- `ScriptableExportSigStagesImpl` +- `ScriptableImportSigStagesImpl` +- `RetrieveSigStagesImpl` +- `ScriptablePoolPercentImpl` +- `ScriptableStatusGraphicImpl` + +We will not remove any method-level APIs at this time, including method-level APIs that may have been separately +identified as unused, unsupported, or possible removal candidates. + +## Consequences + +### Positive Consequences + +- Reduces the supported public API surface area. +- Removes obsolete or unused scriptable APIs. +- Simplifies future maintenance. +- Allows replacement or consolidated functionality to become the supported path where applicable. + +### Negative Consequences + +- Recent examples that reference any of these APIs will need to be reviewed and updated. +- Documentation referencing these APIs must be updated to avoid advertising removed functionality. + +## Alternatives Considered + +### Keep All APIs + +Rejected. This would preserve backward compatibility, but updates for CWBI Cloud support will not be backwards compatible to begin with. + +### Remove Both Class-Level and Method-Level APIs + +Rejected for now. The client approved the listed class-level removals only. Method-level removals remain out of scope for this change. + +### Deprecate Before Removal + +Rejected or deferred. The client approved removal of the listed APIs. diff --git a/docs/adr/02-removal-of-windows-solaris-distributions b/docs/adr/02-removal-of-windows-solaris-distributions new file mode 100644 index 0000000..6ee30c9 --- /dev/null +++ b/docs/adr/02-removal-of-windows-solaris-distributions @@ -0,0 +1,53 @@ +# ADR: Remove Windows and Solaris REGI Headless Distribution Support from This Repository + +## Status + +Accepted + +## Context + +The project previously included support for Windows and Solaris distributions of REGI Headless. + +Those distributions will no longer be maintained in this GitHub repository. +Maintenance for Windows and Solaris distributions will continue in the HEC DevNet-hosted fork. + +This repository will be the source of truth for future REGI Headless development targeting CWBI Cloud compatibility, +with commit history preserved from the HEC DevNet fork. + +## Decision + +Remove Windows and Solaris REGI Headless distribution support from this GitHub repository. + +Distribution-specific updates for Windows and Solaris will be made in the HEC DevNet-hosted fork. +Future cloud-compatible development and will be made in this repository. + +## Consequences + +### Positive Consequences + +- Clarifies repository ownership and purpose. +- Reduces maintenance burden for legacy distribution support. +- Focuses this repository on CWBI Cloud compatibility. +- Separates cloud-targeted development from Windows and Solaris distribution maintenance. + +### Negative Consequences + +- Windows and Solaris distribution maintainers will need to use the HEC DevNet-hosted fork. +- Documentation, build scripts, examples, packaging, release processes, and CI/CD automation may need to be updated or removed. + +## Alternatives Considered + +### Continue Supporting All Distributions in This Repository + +Rejected. Supporting Windows, Solaris, and CWBI Cloud targets in the same repository would increase +maintenance burden and make the repository direction less clear. + +### Remove Windows and Solaris Distribution Support Entirely + +Rejected. The distributions may still need maintenance, and the HEC DevNet-hosted fork will +remain available for that work. + +### Move CWBI Cloud Work to a Separate Repository + +Rejected. This GitHub repository will be the source of truth for future CWBI Cloud compatibility work, +with commit history preserved from the HEC DevNet fork. \ No newline at end of file