Skip to main content

Interface: ArtifactTypeProps

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:26

Construction properties for ArtifactType.

Properties

delta?

readonly optional delta?: boolean

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:65

When true, this artifact supports delta files. Only valid for scope: spec.


deltaInstruction?

readonly optional deltaInstruction?: string

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:70

Domain-specific guidance injected by CompileContext alongside format-level delta instructions. Only valid when delta: true.


deltaValidations

readonly deltaValidations: readonly ValidationRule[]

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:80

Structural validation rules applied to the delta file before application. Empty array means no pre-merge validation is performed. Only valid when delta: true.


description?

readonly optional description?: string

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:41

Human-readable summary for tooling.


format?

readonly optional format?: ArtifactFormat

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:61

Declared file format. When omitted, inferred from the output extension.


id

readonly id: string

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:28

Stable identifier for this artifact (e.g. "specs", "tasks").


instruction?

readonly optional instruction?: string

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:47

The LLM instruction used to generate this artifact.


optional?

readonly optional optional?: boolean

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:57

When true, this artifact may be absent without failing validation. When false (default), ValidateArtifacts requires it to be present.


output

readonly output: string

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:39

Glob pattern for the file(s) this artifact outputs (e.g. "proposal.md", "specs/**/spec.md").


preHashCleanup

readonly preHashCleanup: readonly PreHashCleanup[]

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:84

Regex substitutions applied to artifact content before computing any hash.


requires

readonly requires: readonly string[]

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:52

IDs of other artifacts that must be resolved before this artifact can be generated. Defines the generation dependency order within a schema.


rules?

readonly optional rules?: ArtifactRules

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:93

Pre- and post-instruction rules. pre rules are injected before the artifact instruction; post rules are injected after.


scope

readonly scope: ArtifactScope

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:34

Where this artifact lives after archiving. "spec" means the file is synced to the SpecRepository (e.g. spec.md, verify.md). "change" means it stays only in the change directory (e.g. proposal.md, tasks.md).


taskCompletionCheck?

readonly optional taskCompletionCheck?: TaskCompletionCheck

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:88

Declares how to detect task completion within this artifact's file content.


template?

readonly optional template?: string

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:43

Resolved template file content.


templateRef?

readonly optional templateRef?: string

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:45

Original template path reference as declared in the schema YAML.


validations

readonly validations: readonly ValidationRule[]

Defined in: packages/core/src/domain/value-objects/artifact-type.ts:75

Structural validation rules applied to the base artifact content after delta application. Empty array means no post-merge validation is performed.