@intentic/resources
v1.381.1
Published
The closed vocabulary of resource kinds the deploy tool emits and reconciles, with the outputs each kind produces.
Readme
resources
The closed vocabulary of resource kinds the deploy tool emits and reconciles, with the outputs each kind produces.
flowchart LR
state["state-resolver<br/>emits ResolvedNode"] --> resources(["resources<br/>ResourceType · OUTPUTS"])
engine["engine<br/>checks produced outputs"] --> resources
providers["providers<br/>one per kind"] --> resources
contract["api-contract<br/>plan schemas"] --> resourcesResourceTypelists every kind, fromhostandcloudflarethroughdeployment,forgejo-teamandgarage-bucket.ResolvedNodenarrows a graph node'stypeto it, so a resolver emitting an unknown kind fails to compile.OUTPUTSis the runtime table of which outputs each kind produces. The engine rejects a provider that returns an undeclared output, andplanseeds pending values from it. An entry ending in:allows a prefix, for per-app keys likeappWebhook:<app>.- The SDK's handle properties mirror
OUTPUTS; a test in sdk fails when the two disagree. - Types and one table only: no logic, no tests of its own.
Key files
- src/resource-types.ts —
ResourceTypeandResolvedNode. - src/outputs.ts —
OUTPUTS, keyed exhaustively overResourceType. - src/index.ts — the package's two exports.
