You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-**XML doc comments**: Required on all public members (enforced by `GenerateDocumentationFile true`)
130
-
-**Configuration**: Read from `%LocalAppData%\DevMaid\appsettings.json`; never hard-code connection strings; use `SecurityUtils.IsValidPath()` and `SecurityUtils.IsValidPostgreSQLIdentifier()` before using any user-supplied input
149
+
-**Configuration**: Read from `%LocalAppData%\DevMaid\appsettings.json`; never hard-code connection strings; use `SecurityUtils.IsValidPath()` and `SecurityUtils.IsValidPostgreSQLIdentifier()` before using any user-supplied input; `SecurityUtils.IsValidHost()` and `SecurityUtils.IsValidPort()` para conexões; `*` é aceito como curinga em host/port/username no pgpass
131
150
-**Async**: All service methods that touch I/O or external processes must be `async Task<T>` and accept `CancellationToken`
132
151
-**Progress reporting**: Use `IProgress<OperationProgress>` for operations expected to take > 2s
133
152
-**Logging**: Use `ILogger` from `DevMaid.Core/Logging/ILogger.cs` — not `Microsoft.Extensions.Logging.ILogger` directly in Core
@@ -140,8 +159,31 @@ devmaid windowsfeatures list
140
159
- All inputs validated before use: paths via `SecurityUtils.IsValidPath()`, PostgreSQL identifiers via `SecurityUtils.IsValidPostgreSQLIdentifier()`.
141
160
- Exit codes: `0` success, `1` general error, `2` invalid args, `3` external dependency not found, `130` user cancellation.
142
161
162
+
## OpenSpec Workflow
163
+
164
+
O projeto usa o workflow **OpenSpec** para gerenciar features e mudanças:
165
+
166
+
-**`openspec/config.yaml`** — schema e configurações (idioma pt-BR obrigatório em todos os artefatos)
167
+
-**`openspec/specs/<slug>/spec.md`** — especificações canônicas por feature (substituiu `specs/`)
168
+
-**`openspec/changes/`** — mudanças em andamento (proposal, design, tasks)
169
+
-**`openspec/changes/archive/`** — mudanças implementadas e arquivadas
170
+
171
+
Skills disponíveis em `.opencode/skills/`:
172
+
-`openspec-propose` — cria proposta completa com todos os artefatos
173
+
-`openspec-apply-change` — implementa tasks de uma mudança
174
+
-`openspec-continue-change` — avança para o próximo artefato
175
+
-`openspec-ff-change` — cria todos os artefatos de uma vez
176
+
-`openspec-verify-change` — valida implementação antes de arquivar
- pgpass-cli-setup (2026-04-04): Added `PgPassCommand` — gerenciamento de `pgpass.conf` com subcomandos `add`, `list`, `remove`; `IPgPassService` + `PgPassService`
186
+
- opencode-default-model (2026-04-07): Added `opencode settings default-model` — define modelo padrão via argumento ou menu interativo (Spectre.Console); suporte a `--global`
145
187
- 009-windows-features-manager: Added `WindowsFeaturesCommand` — dism.exe wrapper for export/import/list of Windows optional features
0 commit comments