Knowledge Portal · engineering documentation

Skip to content

ZAIXOS Engineering Platform — Package Architecture ​

Document type: Technical Specification
Version: 1.0 · Phase: 12-3
Status: Permanent technical authority
Related: DEPENDENCY_MODEL.md · INSTALLATION_ARCHITECTURE.md


Purpose ​

Define the logical and physical package structure of ZEP — what ships inside the platform distribution, how paths map to ownership domains, and how products consume packages without forking.


Distribution model ​

AttributeDecision
Primary distributionSingle Composer package: zaixos/engineering-platform
Package typeLibrary + resource files (no Laravel service provider required for v1)
VersioningPlatform semver on package tag
Secondary distributionGit submodule pointing at platform repository tag (transitional)
Consumer mount.zaixos/platform/ in product repo (copy or symlink from vendor)

Logical packages (internal modules) ​

All logical packages ship inside one Composer artifact. They are not separate Composer packages in v1.

Logical IDPath (platform repo)OwnerContents
LP-0core/constitution/D-PPointers to governance docs (or embedded copies at release)
LP-1core/methodology/D-PDEVELOPMENT_WORKFLOW, RESPONSE_TEMPLATE, freeze, context policy
LP-2contracts/D-Pruntime-contracts.md, JSON schemas, contracts@1
LP-3runtime/specification/D-PERP/runtime abstract spec
LP-4runtime/components/D-PEight component prose specs
LP-5runtime/manifests/D-PSchemas + default inventories
LP-6adapters/{adapter-id}/D-Aprofile, workspace template, manifest.json
LP-7templates/D-PFormat A/B, phase prompts
LP-8knowledge/D-PPlatform knowledge packs (non-runtime)
LP-9validation/D-PPHPUnit suite + support constants
LP-10docs/D-Pdeveloper-guide, acceptance, runtime-validation
LP-11schemas/config/D-Pplatform.yml, platform.lock, extensions JSON schemas

Physical layout (platform repository — normative target) ​

zaixos-engineering-platform/
├── composer.json                    # name: zaixos/engineering-platform
├── CHANGELOG.md
├── core/
│   ├── constitution/                # LP-0
│   ├── methodology/                 # LP-1
│   └── boundaries/                  # symlink or copy of governance
├── contracts/                       # LP-2
│   ├── runtime-contracts.md
│   └── schemas/
├── runtime/
│   ├── specification/               # LP-3
│   ├── components/                  # LP-4
│   └── manifests/                   # LP-5
│       ├── schemas/
│       └── defaults/
├── adapters/
│   └── cursor-adapter-v1/           # LP-6
│       ├── profile.md
│       ├── manifest.json
│       └── workspace/
├── templates/                       # LP-7
├── knowledge/                       # LP-8
├── validation/                      # LP-9
│   ├── tests/
│   └── src/Support/
├── docs/                            # LP-10
└── schemas/config/                  # LP-11

Product-side layout (after installation) ​

product-repo/
├── composer.json                    # requires zaixos/engineering-platform
├── vendor/zaixos/engineering-platform/   # Composer install source
├── .zaixos/
│   ├── platform.yml                 # D-R declarative config
│   ├── platform.lock                # D-R exact pin
│   ├── platform/                    # Materialized snapshot OR symlink → vendor
│   ├── extensions/
│   │   ├── manifest.yml
│   │   ├── procedures/
│   │   ├── workflows/
│   │   ├── agents/
│   │   ├── rules/
│   │   └── knowledge/
│   └── adapters/
│       └── cursor-adapter-v1/
│           └── workspace/           # Canonical adapter tree
├── .cursor/                         # Mount → .zaixos/adapters/cursor-adapter-v1/workspace
└── app/                             # D-R product domain (unchanged)

Materialization strategy (TDR-002) ​

ModeWhen.zaixos/platform/ source
Vendor referenceDefault (PHP/Composer)Symlink vendor/zaixos/engineering-platform → .zaixos/platform
Snapshot copyCI without symlinks; air-gapCopy at install + checksum in lock
SubmoduleTransitional dual devSubmodule at lock SHA → .zaixos/platform

Products MUST NOT edit files under .zaixos/platform/ except via platform upgrade.


Adapter package coupling ​

Adapters are bundled inside zaixos/engineering-platform for v1 — not separate Composer packages.

AttributeValue
Adapter selectionplatform.yml → adapter.id
Adapter filesadapters/{id}/ inside platform package
FutureOptional zaixos/adapter-cursor-v1 package — Experimental; requires TDR amendment

Validation package ​

AttributeValue
Locationvalidation/ inside platform package
Entryvendor/bin/phpunit with config path documented in developer guide
Public commandphp artisan test --testsuite=EngineeringRuntimePlatform (product wires) or documented PHPUnit path
AutoloadPSR-4 Zaixos\Platform\Validation\ → validation/src/

Validation ships with platform; products invoke, never fork.


Templates and knowledge packages ​

PackageRuntime couplingMerge
TemplatesReferenced by methodology; not IDE-nativeCopied to product docs path on request only
KnowledgeDocumentation only; no auto-constraintOptional copy to .zaixos/extensions/knowledge/

Templates never import product modules. Knowledge never depends on adapter hook scripts.


Composer package manifest (normative fields) ​

json
{
  "name": "zaixos/engineering-platform",
  "type": "library",
  "version": "1.0.0",
  "description": "ZAIXOS Engineering Platform — methodology, contracts, adapters, validation",
  "license": "proprietary",
  "require": {
    "php": "^8.2"
  },
  "autoload": {
    "psr-4": {
      "Zaixos\\Platform\\Validation\\": "validation/src/"
    }
  },
  "extra": {
    "zaixos": {
      "platformVersion": "1.0.0",
      "contractMajor": 1,
      "adapters": ["cursor-adapter-v1"],
      "configSchemas": {
        "platformYml": 1,
        "platformLock": 1,
        "extensionsManifest": 1
      }
    }
  }
}

Package release artifact ​

Every platform release ships:

ArtifactFormat
Git tagzaixos-platform@vX.Y.Z
Composer distPackagist or VCS dist
Checksum manifestSHA-256 of adapter workspace + default manifests
Compatibility matrixMarkdown in docs/releases/vX.Y.Z.md

Forbidden package contents ​

ForbiddenReason
app/Modules/Product domain (AR-01)
Product PHPUnit testsProduct CI
Uncertified adapter IDsCertification gate
Modified contract obligations without contracts@N+1Contract freeze

Package Architecture v1.0 — Phase 12-3.

ZAIXOS Knowledge Portal — public engineering docs at /docs · Staff operations at /admin