35 lines
2.9 KiB
Markdown
35 lines
2.9 KiB
Markdown
# Internal Component Overview
|
|
|
|
## Purpose
|
|
|
|
This document inventories Promptkit's implemented components for contributors.
|
|
The [architecture policy](../policy/architecture.md) owns durable boundary and
|
|
dependency rules. See the [development guide](../development.md) for
|
|
contributor workflow and validation.
|
|
|
|
## Implemented Components
|
|
|
|
| Component | Implemented responsibility | References |
|
|
| --- | --- | --- |
|
|
| Root `promptkit` package | Establishes the public package boundary for the Go module. It does not yet provide migrated framework behavior or exported APIs. | [Package declaration](../../doc.go) |
|
|
| `internal/domain` | Defines internal framework values for requests, artifacts, prompt definitions, profiles, execution targets, rendering, generation, and validation. | [Domain declarations](../../internal/domain/domain.go) |
|
|
| `internal/defaults` | Defines application-neutral framework constants and constructs the default execution target. It contains no CLI, server, or inbound HTTP limits. | [Framework defaults](../../internal/defaults/defaults.go) |
|
|
| `internal/filecatalog` | Provides deterministic YAML discovery and path helpers for operating-system filesystems and `fs.FS` sources. | [File catalog](../../internal/filecatalog/catalog.go) |
|
|
| `internal/promptdef` | Loads strictly decoded, validated prompt definitions from filesystem and `fs.FS` sources, including version selection and contained file-backed message content. | [Prompt-definition repository](../../internal/promptdef/filesystem_repository.go) |
|
|
| `internal/profile` | Loads strictly decoded, validated execution profiles from filesystem and `fs.FS` sources and composes repositories with error-preserving fallback. | [Profile repositories](../../internal/profile/filesystem_repository.go) |
|
|
| `internal/profile/builtin` | Embeds the built-in execution profile catalog and combines it with an optional primary repository. | [Built-in profile repository](../../internal/profile/builtin/repository.go) |
|
|
| `internal/prompt` | Renders prompt messages from Go templates with artifact, variable, session, and cache-control data. | [Go-template renderer](../../internal/prompt/go_renderer.go) |
|
|
| `internal/artifact` | Resolves ordinary inline and unrestricted caller-selected file references into copied artifacts with metadata and hashes. | [Internal sources and validation](sources.md) |
|
|
| `internal/validate` | Validates basic, JSON, and JSON Schema output using operating-system filesystem or `fs.FS` schema sources. | [Internal sources and validation](sources.md) |
|
|
|
|
These packages provide the internal model, source, and rendering foundation.
|
|
Model clients, orchestration, and a usable public engine are not implemented in
|
|
Promptkit yet.
|
|
|
|
## Maintenance
|
|
|
|
Update this inventory as framework extraction introduces packages or changes
|
|
component responsibilities. List only implemented components; proposed package
|
|
boundaries belong in temporary planning documents until their implementation
|
|
lands.
|