Files
scriptorium/docs/roadmap/implementation.md

2.7 KiB

Step 7 Implementation Completion

Status

Complete as of 2026-07-28.

Result

Scriptorium now consumes gitea.maximumdirect.net/eric/promptkit v0.1.0 as an ordinary direct module dependency. The published tag resolves to Promptkit commit 9e68a2bbf779545995270c47842048a3bc6c85dc; no workspace, replacement, vendored dependency, or sibling-repository state is required.

The Scriptorium module root no longer exposes a Go package. The remaining production boundary consists of:

  • cmd/scriptorium;
  • internal/adapter/cli;
  • internal/adapter/http;
  • internal/config;
  • internal/defaults; and
  • internal/format.

The CLI constructs and invokes Promptkit engines, the HTTP adapter maps its transport contract to Promptkit public values, and the HTTP-specific restricted artifact reader is injected through Promptkit's public extension point. Scriptorium retains application configuration, presentation, transport, containment, process, packaging, and executable-example responsibilities.

The former root facade, duplicated framework packages, built-in profile copy, framework tests and fixtures, Go-library example, and framework-owned documentation were removed. Permanent Scriptorium documentation now describes the CLI and HTTP application and links to the tagged Promptkit documentation for framework contracts.

Validation Evidence

Scriptorium passed, outside a Go workspace and without a replacement:

  • module identity, graph, tagged dependency, and go mod tidy -diff checks;
  • ordinary and race-enabled tests, including retained HTTP decoding, limit, restricted-file, error-mapping, and raw-output coverage;
  • vet, formatting, whitespace, architecture, and tracked-tree hygiene checks;
  • temporary native and release-equivalent Linux amd64 and arm64 builds;
  • the maintained render script and both configuration examples without model credentials; and
  • all maintained local and tagged Promptkit documentation links.

A fresh temporary module and build cache resolved Promptkit remotely, reported the expected v0.1.0 origin commit, and passed the Scriptorium test suite and build without reading the sibling Promptkit checkout.

Promptkit was reconfirmed independently at the exact published tag. Its local and remote tag targets agree, its working tree remains clean, and its documented test, race, vet, build, example, formatting, module, link, whitespace, and repository-hygiene checks pass.

Next Gate

Step 8 may now inventory and migrate downstream Go consumers. Step 7 did not migrate external consumers, publish a breaking Scriptorium release, or complete the release and documentation cutover assigned to Step 9.