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-3/

{
  "context": "Evaluates whether the helper uses @pulumi/pulumi asset and archive primitives to wrap files, inline data, and remote URLs, then combines them into deployable archives while preserving paths and structure.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "File asset",
      "description": "Local file paths are wrapped with pulumi.asset.FileAsset (no manual fs reads) and returned as the file-based asset for consumers.",
      "max_score": 20
    },
    {
      "name": "Inline asset",
      "description": "Inline string content is represented with pulumi.asset.StringAsset so the exact text, including empty strings, flows into the deployment.",
      "max_score": 20
    },
    {
      "name": "Remote asset",
      "description": "HTTP(S) URLs are wrapped with pulumi.asset.RemoteAsset, preserving the provided URI without prefetching or substitution.",
      "max_score": 15
    },
    {
      "name": "Mixed archive",
      "description": "buildArchive produces a pulumi.asset.AssetArchive whose map entries come from FileAsset/StringAsset/RemoteAsset sources with the same keys supplied by callers (no manual zipping).",
      "max_score": 25
    },
    {
      "name": "Directory archive",
      "description": "When includeDir is provided, the solution uses pulumi.asset.FileArchive (optionally nested inside an AssetArchive) to include the full directory tree with preserved subpaths alongside other entries.",
      "max_score": 20
    }
  ]
}