prometeu-studio/docs/packer/pull-requests/PR-01-packer-project-bootstrap-and-module-boundaries.md
2026-03-24 13:42:41 +00:00

2.4 KiB

PR-01 Packer Project Bootstrap and Module Boundaries

Domain Owner: docs/packer

Briefing

Create the standalone prometeu-packer project and establish the production module boundaries required by the packer specs.

This PR starts the implementation track without leaking packer behavior into Studio.

Objective

Deliver a separate top-level prometeu-packer project with build wiring, package boundaries, test harness, and service-facing contracts that future PRs can implement incrementally.

Dependencies

Scope

  • add prometeu-packer as a separate project in the repository build
  • define the baseline package/module layout for:
    • workspace and registry services
    • declaration parsing and validation
    • mutation preview/apply services
    • build planning and artifact emission
    • diagnostics and event reporting
  • define the public service contracts that Studio may consume through adapters
  • add baseline unit-test and fixture support for packer-only development

Non-Goals

  • no full workspace semantics yet
  • no asset build emission yet
  • no Studio UI changes beyond dependency wiring preparation

Execution Method

  1. Add prometeu-packer to Gradle settings and repository build wiring.
  2. Create baseline package namespaces and service interfaces.
  3. Establish a packer-owned test fixture layout for workspace samples and artifact assertions.
  4. Keep Studio integration contract-based so Studio does not depend on filesystem internals.

Acceptance Criteria

  • prometeu-packer exists as a separate build target
  • packer contracts compile without depending on Studio UI classes
  • future PRs can add implementations without restructuring the project root
  • packer test infrastructure is usable from the next PR onward

Validation

  • build graph includes prometeu-packer
  • baseline compile test for public contracts
  • fixture-loading smoke test in the new project

Affected Artifacts

  • settings.gradle.kts
  • prometeu-packer/**
  • repository build wiring
  • cross-domain reference: Studio adapter call sites that will later consume packer services