Skip to content

TaskConfig

TaskConfig = object

The whole configuration document, schema v1.

A type alias rather than an interface so it carries an implicit index signature: setConfigValue and friends operate on this and on the raw untyped record from a file with one implementation.

optional allowExec?: boolean

Default for the exec trust gate. A --exec / --no-exec flag still wins.


optional discovery?: DiscoveryMode | "auto"


optional excludePaths?: string[]

Paths to leave out of discovery, on top of the built-in list. A bare name matches any path segment; a value with a slash matches a path prefix from the root, taking the tree beneath it.

The setting a repository reaches for to say that a tree is DATA rather than project structure — a fixture repo, a vendored sample. Unlike runners.disabled, which turns off a runner everywhere in this project, this leaves the runner on and narrows where it looks.

The project layer is the natural home: which of a repository’s own trees are fixtures is a fact about that repository, and the same answer for everyone working in it. Nothing stops the user layer from setting it, and the usual replace-wholesale rule applies if both do.


optional runners?: RunnersConfig


optional trust?: TrustConfig

USER LAYER ONLY. See TrustConfig and the module docblock.