Skip to content

Restore layered settings and add reusable deployment packages and local GUI - #30

Open
VargaJoe wants to merge 5 commits into
developfrom
codex/layered-settings-generic-packages
Open

VargaJoe wants to merge 5 commits into
developfrom
codex/layered-settings-generic-packages

Conversation

@VargaJoe

@VargaJoe VargaJoe commented Sep 17, 2026

Copy link
Copy Markdown
Owner

Summary

Restore explicit default → project → environment configuration files, followed by invocation overrides. Nested objects merge; arrays and explicit null/false/zero replace earlier values. Settings references recursively resolve indirect environment values and chained references, with cycle detection and a 64-reference bound. Invalid static references fail before operations; previous-step outputs remain deferred and their contents remain literal data. Preserve ISO timestamp strings and reject explicitly blank configuration paths. CLI errors use stable stderr messages.

Provide 14 independently installable native packages / 49 steps:

  • Filesystem, ZIP, JSON and XML operations.
  • Bounded process execution, HTTP downloads/readiness and TCP readiness.
  • Git, dotnet/NuGet and Docker image/container/network commands through declared process dependencies.
  • SQL Server query/batch execution, authenticated readiness, database create/drop, backup/restore with explicit logical-file mappings, file sizing, login and database-user management.
  • IIS creation/status/recycle alongside existing start/stop, plus generic app_offline.htm maintenance steps.
  • Compose config/pull/build/up/ps/logs/stop/down with explicit project names and ordered file lists.

Add native SQL/IIS/Compose scenario examples, a local catalog/plan/run JSON bridge, and a Windows Forms launcher using asynchronous child execution. Native preview now returns structured Skipped results without host text contaminating JSON stdout. The historical Angular client/listener remains separate.

This is a fresh generic capability implementation. No corporate source/history, infrastructure settings, application schemas or application-specific Helm charts are transferred.

Validation

Local checks on the delivered implementation:

  • PowerShell 7.6.6: 102/102 regression tests.
  • Windows PowerShell 5.1.26100.9444: 101/101 regression tests.
  • Both hosts: 24 real SQL Server/Compose operations, including parameterized multi-result queries and NULLs, database/user/login operations, backup, restore into a separate database and restored-content verification. Disposable loopback-only SQL Server Developer containers; test projects/volumes removed.
  • Both hosts: hidden Windows Forms construction and asynchronous preview/run smoke test, with actual temporary-file output.
  • git diff --check passed.

Commands:

pwsh -NoProfile -File ./tests/Run-Tests.ps1
powershell.exe -NoProfile -File ./tests/Run-Tests.ps1
pwsh -NoProfile -File ./tests/Run-GuiSmoke.ps1
# Explicit opt-in; requires local Docker + an already present SQL Server image:
pwsh -NoProfile -File ./tests/Run-PlatformIntegration.ps1 -RunDocker

Operational boundaries

  • Real IIS provisioning is covered by command/state fixtures; acceptance on a disposable IIS host and visual GUI review remain manual.
  • SQL administrative steps use explicit database names, server-side paths and role lists. They do not force disconnected sessions, default to db_owner, or automatically overwrite backups/restores. A failed administration step can leave partial state; inspect before retrying.
  • Compose timeouts stop the client, not daemon-side work already accepted. Extra native arguments and successful query/tool output remain operator-controlled and may contain sensitive data.
  • The desktop host uses the caller's identity, has no network listener, and does not provide cancellation or rollback.
  • Examples are reusable compositions, not unchanged compatibility for every legacy scenario. Remote access, host/firewall/ACL policies, external scheduling and application-specific workflows are not implicitly migrated.

See docs/platform-packages.md, docs/local-integration.md and tests/README.md for contracts, examples, recovery behavior and acceptance steps.

@VargaJoe VargaJoe changed the title Restore layered settings and add generic operational packages Restore layered settings and add reusable deployment packages and local GUI Sep 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant