Conversation
- constants: add CrushEngine, AgenticEngines update, 3 new feature flags (AwfDiagnosticLogsFeatureFlag, ByokCopilotFeatureFlag, MCPCLIFeatureFlag), Crush model env vars, DefaultCrushVersion, CrushLLMGatewayPort - cli: add secrets set and secrets bootstrap subcommand entries Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
utafrali
left a comment
There was a problem hiding this comment.
The constants additions look structurally correct and follow existing patterns well, but the CLI README has two problems worth fixing: the secrets bootstrap entry incorrectly references secret_set_command.go (almost certainly the wrong file), and both new rows break the table's constructor-name convention by using file paths instead.
| | `gh aw remove` | `NewRemoveCommand` | Remove workflow files from the repository | | ||
| | `gh aw secrets` | `NewSecretsCommand` | Manage workflow secrets | | ||
| | `gh aw secrets set` | (secret_set_command.go) | Create or update a repository secret | | ||
| | `gh aw secrets bootstrap` | (secret_set_command.go) | Validate and configure all required secrets for workflows | |
There was a problem hiding this comment.
secrets bootstrap is attributed to (secret_set_command.go), which is almost certainly wrong. Bootstrap and set are distinct operations and would typically live in separate source files (e.g. secret_bootstrap_command.go). If both commands actually live in the same file, that is worth a separate note, but the auto-extractor should verify this rather than defaulting the bootstrap entry to the set command's file.
| | `gh aw project` | `NewProjectCommand` | Project management helpers | | ||
| | `gh aw remove` | `NewRemoveCommand` | Remove workflow files from the repository | | ||
| | `gh aw secrets` | `NewSecretsCommand` | Manage workflow secrets | | ||
| | `gh aw secrets set` | (secret_set_command.go) | Create or update a repository secret | |
There was a problem hiding this comment.
The new rows break the table's established convention for the middle column. Every other entry uses a Go constructor name (e.g. NewSecretsCommand, NewProjectCommand). The new entries use parenthesized file names like (secret_set_command.go) instead. If the extractor cannot determine the constructor name it should use a consistent placeholder (e.g. N/A) or leave the cell blank, not switch to a different identifier format mid-table.
| // All supported engine names | ||
| constants.AgenticEngines // []string{"claude", "codex", "copilot", "gemini"} | ||
| constants.AgenticEngines // []string{"claude", "codex", "copilot", "gemini", "crush"} | ||
|
|
There was a problem hiding this comment.
The existing AgenticEngines slice was documented in alphabetical order by engine name: ["claude", "codex", "copilot", "gemini"]. Alphabetically, "crush" (c-r) sorts before "gemini" (g), so the correct order would be []string{"claude", "codex", "copilot", "crush", "gemini"}. If the actual Go source appends "crush" at the end rather than inserting it in sorted position, the documentation is accurate but the Go slice itself is inconsistent with the prior ordering convention. Either way, this is worth a manual check against the source.
Package Specification Updates
This PR updates README.md specifications for the following packages, analyzed during spec-extractor run 1.
constantsclisecrets setandsecrets bootstrapsubcommand entriesconsoleagentdrainWhat Changed
pkg/constants/README.mdCrushEngine("crush") and updatedAgenticEnginesto include itAwfDiagnosticLogsFeatureFlag("awf-diagnostic-logs"),ByokCopilotFeatureFlag("byok-copilot"),MCPCLIFeatureFlag("mcp-cli")EnvVarModelAgentCrush,EnvVarModelDetectionCrush,CrushCLIModelEnvVarDefaultCrushVersionCrushLLMGatewayPort(10004)pkg/cli/README.mdgh aw secrets setsubcommand entry (Create or update a repository secret)gh aw secrets bootstrapsubcommand entry (Validate and configure all required secrets)Extraction Method
pkg/constants/*.gosource filesRound-Robin State
agentdrain,cli,console,constantsenvutil,fileutil,gitutil,loggerAuto-generated by Package Specification Extractor workflow