Correct source option documentation

This commit is contained in:
2026-07-26 17:43:42 +00:00
parent eb6dfb19b0
commit a9e1b7435c
2 changed files with 9 additions and 6 deletions

View File

@@ -40,10 +40,13 @@ Source options replace their matching directory source:
- LLM client: `WithLLMClient(client)`. - LLM client: `WithLLMClient(client)`.
`fs.FS` prompt-content and schema paths stay inside their configured roots. `fs.FS` prompt-content and schema paths stay inside their configured roots.
A single-file option exposes that file by its base name. In-memory profiles take Single-file prompt and profile sources are selected by their YAML `id`, not
precedence over an explicit or directory-backed profile source, which in turn their file names. `WithPromptFile` resolves relative `content_file` paths from
takes precedence over built-ins. File and filesystem sources use the format and the prompt file's directory. `WithSchemaFile` exposes its schema by the schema
credential rules in the [configuration reference](../config.md). file's base name. In-memory profiles take precedence over an explicit or
directory-backed profile source, which in turn takes precedence over built-ins.
File and filesystem sources use the format and credential rules in the
[configuration reference](../config.md).
## Prepare And Run ## Prepare And Run

View File

@@ -18,7 +18,8 @@ Domain behavior is centralized in `internal/usecase` and `internal/domain`.
- Keep orchestration narrow: Scriptorium executes one prompt request; it is not a multi-step workflow engine. - Keep orchestration narrow: Scriptorium executes one prompt request; it is not a multi-step workflow engine.
- Keep adapter logic thin: adapters map external shapes to domain requests/results and should not hold domain decisions. - Keep adapter logic thin: adapters map external shapes to domain requests/results and should not hold domain decisions.
- Keep boundaries explicit: repositories/loaders/renderers/validators/LLM client stay behind package interfaces. - Keep boundaries explicit: repositories/loaders/renderers/validators/LLM client stay behind package interfaces.
- Keep config strict: YAML/JSON decoding for external inputs should reject unknown fields. - Keep external decoding strict: configuration, prompt, and profile YAML and
HTTP JSON should reject unknown fields.
- Keep secrets out of payloads: raw API key values must not be accepted or emitted. - Keep secrets out of payloads: raw API key values must not be accepted or emitted.
## Dependency Direction ## Dependency Direction
@@ -63,7 +64,6 @@ defined by the [documentation policy](documentation.md).
## Architectural Invariants ## Architectural Invariants
- `Runner.Run` reuses `Runner.Prepare` flow. - `Runner.Run` reuses `Runner.Prepare` flow.
- Unknown input fields in config/prompt/profile/http JSON should be rejected by strict decoding.
- Raw API key values must not be accepted through external configuration or - Raw API key values must not be accepted through external configuration or
request payloads, and resolved secret values must not be emitted. request payloads, and resolved secret values must not be emitted.