# Task: Integrate official project scaffold plugin ## Identity - Task ID: 20260904-project-scaffold-integration-client-4f2a8c71 - Mode: Integration - Branch: codex/20260904-project-scaffold-integration-client-4f2a8c71-project-scaffold-integration-client - Worktree: D:\Datas\OthersProjects\.codex-worktrees\makelore\20260904-project-scaffold-integration-client-4f2a8c71 - Base commit: 336e0bb0caf24537b7b0f350aba3e04a37f5544c - Owner: codex - Status: Ready for Integration ## Scope - Integrate the four-commit interactive-AI-application scaffold chain ending at `ddb678b46ff10a28e04beeafcfc00c8c8a23ff9f` onto the committed `main` frontier `336e0bb0caf24537b7b0f350aba3e04a37f5544c`. - Reconcile ADR-008 and the canonical architecture/current-state records with the final official Marketplace delivery model. - Verify the merged client tree and prepare it for safe default-branch promotion without touching the unowned dirty primary checkout. ## Intent And Constraints - Preserve normal Git ancestry; do not rebase, squash, rewrite history, or resolve semantic conflicts by choosing a side mechanically. - The executable `.mjs` authority belongs only to the fixed code-owned plugin bundled in the signed MakeLore client. Downloadable Marketplace artifacts retain the text/image-only P0 policy. - Preserve `interactive_ai_app` as the canonical new type and `mini_game` / `mini_program` only as read compatibility aliases. - Do not package, install, publish, deploy, push, or modify the unknown files in the primary `main` checkout. ## Outcome - Merged the four-commit source chain ending at `ddb678b46ff10a28e04beeafcfc00c8c8a23ff9f` with a normal `--no-ff` merge at `2bc3e4420852388ce46841e05c1cbf49e80b250c`. - Reconciled ADR-008 and the canonical architecture, domain, success-criteria, current-state, and history records to describe `makelore.project-scaffold` as a code-owned official bundled Marketplace plugin. - Preserved the narrow execution boundary: the fixed bundled resource root may contain and run `scaffold.mjs`; downloadable Marketplace artifact ingestion remains text/image-only and rejects `.mjs`. - Kept `interactive_ai_app` canonical while retaining `mini_game` and `mini_program` only as read-compatibility aliases. - Excluded source-task-owned records from the integrated tree; they remain immutable on their source branches and reachable through the recorded source commits. ## Verification - `validate_plugin.py resources/coding-plugins/project-scaffold` passed. - `quick_validate.py resources/coding-plugins/project-scaffold/skills/makelore-project-scaffold` passed. - Focused Vitest integration set: 6 files, 88 tests passed. - Scaffold Node test suite: 12 tests passed. - `pnpm typecheck` passed. - `git diff --check`, `check_project_docs.py`, and the task-aware documentation drift check passed after reconciliation. ## Follow-ups - Promote this integration branch to `main` only after the unowned dirty primary checkout is made clean or explicitly adopted by its owner; this task did not touch those files. - Packaging, deployment, pushing, and live Marketplace publication remain separate authorized operations. ## Promotion Candidates - None. Accepted project-memory changes were applied directly under the Integration Gate.