Skip to content

feat: define project configuration schema - #83

Closed
dDevAhmed wants to merge 13 commits into
mainfrom
feat/cli-034-configuration-schema
Closed

feat: define project configuration schema#83
dDevAhmed wants to merge 13 commits into
mainfrom
feat/cli-034-configuration-schema

Conversation

@dDevAhmed

Copy link
Copy Markdown
Contributor

Summary

Implements CLI-034 with a versioned, project-root StellarForge configuration contract and safe deployment integration.

Included

  • adds stellarforge.config.json MVP schema
  • requires version: 1
  • supports explicit network and named Stellar CLI identity
  • records configuration architecture in ADR-0005
  • documents loading rules and precedence
  • loads only a fixed project-root JSON file
  • rejects symbolic links, non-files, oversized config, malformed JSON, unknown fields, secret-bearing fields, raw Stellar StrKeys, and unsafe identity values
  • resolves CLI options above project configuration
  • keeps missing values missing instead of silently defaulting a network
  • integrates resolved configuration with stellarforge deploy
  • keeps deploy command Testnet-only after configuration resolution
  • adds unit and command-level coverage for validation, missing configuration, precedence, redaction, and deployment consumption

Precedence

CLI option > stellarforge.config.json > missing

Environment-variable precedence is intentionally outside the MVP.

Security

  • no executable JS/TS configuration
  • no implicit Mainnet/default network
  • no raw signing material in project configuration
  • secret-like fields are rejected without echoing values
  • Stellar CLI remains the signing-material boundary
  • deployment still enforces Testnet independently of configuration

Closes #37

Copy link
Copy Markdown
Contributor Author

Closing as duplicate/superseded: CLI-034 has already been merged to main via #80, and #81 contains newer documentation changes on top of it. Merging this branch would reintroduce stale history and duplicate the completed configuration work.

@dDevAhmed dDevAhmed closed this Sep 11, 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.

CLI-034 — Define and implement CLI configuration schema

1 participant