// Package setup creates the local, non-secret configuration selected by tht setup. package setup // Request contains the stable setup-file inputs. Task 5 will use ConfigureOnly when it adds // Compose validation and lifecycle orchestration. type Request struct { ProjectRoot string InstallationID string Profile string ConfigureOnly bool NonInteractive bool Answers Answers } // Answers are optional explicit answers supplied by command flags. Empty values may be supplied // through THT_SETUP_* environment variables or collected interactively. type Answers struct { ShellMode string ShellDefaultLocale string ShellAdapter string WorkspaceRemote string WorkspaceBranch string WorkspaceAccess string DWHRESTURL string LLMURL string SecretsFile string PiAuthFile string GitCredentialsFile string GitCAFile string GitSSHKeyFile string GitKnownHostsFile string AuthMode string AuthPublicURL string AuthAdminUser string AuthAdminDisplayName string AuthPasswordFile string AuthIssuer string AuthClientID string AuthAuthentikBaseURL string AuthUserGroup string AuthAdminGroup string CreateSecretTemplates bool } // FilesResult identifies configuration written or validated by EnsureFiles. Created contains // only files created during this invocation, in deterministic order. type FilesResult struct { DescriptorPath string EnvironmentPath string Created []string }