or run

npx @tessl/cli init
Log in

Version

Files

docs

asset-management.mdautomation.mdconfiguration.mddynamic-resources.mdindex.mdlogging-diagnostics.mdoutput-system.mdprovider-development.mdresource-management.mdruntime-operations.mdstack-references.mdutilities.md
tile.json

rubric.jsonevals/scenario-10/

{
  "context": "Evaluates how well the solution uses Pulumi stack references to pull outputs from other stacks, preserve secrets, and combine them into a consumable configuration for network, database, and monitoring values.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Stack references",
      "description": "Creates pulumi.StackReference instances for the provided network and database stack names and only instantiates one for monitoring when a name is supplied, avoiding hard-coded outputs.",
      "max_score": 20
    },
    {
      "name": "Required outputs",
      "description": "Uses requireOutput (or getOutput with explicit validation) to read the VPC identifier and private subnet IDs from the network stack, producing a clear error when either is missing.",
      "max_score": 20
    },
    {
      "name": "Database outputs",
      "description": "Uses requireOutput to fetch the database endpoint/host and password from the database stack reference rather than static values or config.",
      "max_score": 20
    },
    {
      "name": "Secret handling",
      "description": "Preserves the password as a secret Output by consuming the secret-aware output from the stack reference (e.g., getOutputDetails/secretOutputNames or wrapping with pulumi.secret) and never unwrapping to plain text.",
      "max_score": 20
    },
    {
      "name": "Output composition",
      "description": "Combines referenced outputs using Pulumi helpers such as pulumi.all/output/interpolate/apply so the returned configuration keeps dependency and secret tracking rather than plain synchronous values.",
      "max_score": 10
    },
    {
      "name": "Monitoring optionality",
      "description": "Handles the optional monitoring stack by conditionally reading its URL via getOutput/requireOutput and returning undefined when absent without creating a failing reference.",
      "max_score": 10
    }
  ]
}