Skip to content
published Visibility internal Owner erik@uvilo.com Approver _ Created _ Updated _

Project Complete

When to Use

Knowledge extraction is done and the project is ready to close.

Inputs

  • Project path: {Dept}/Projects/{Project}/
  • Completion action: approve or archive

Context Boundary

Read only the Phase document, Changelog, and sidebar configuration. Never read Vision, Research, Spec, or Plans — Complete is an administrative phase, not a content review.

Prerequisites

  • Extract_Eval must have passed (Phase: Extract_Eval_Completed).
  • Changelog must be up to date.

Procedure

  1. Confirm with user: approve or archive?

  2. If archive: verify no name collision in archive target. Check whether {Dept}/Archived/{Project}/ already exists. If it does, stop and inform the user — suggest using Project_Rename to rename either the active or the existing archived project before archiving.

  3. Update {Project}_Phase.md: set Phase: Complete_Started

  4. Build, commit, push

  5. If Archive:

    • Set status: archived on all .md files in the project
    • Move project directory to {Dept}/Archived/ using git mv
    • Update sidebar paths from projects/ to archived/ in .internal/astro.config.mjs
    • Move the sidebar group from Projects to Archived section
    • Update or create {Dept}/Archived/index.md
  6. If Approve:

    • Set status: approved on all .md files
    • Keep project in {Dept}/Projects/
  7. Clean up:

    • Ensure Learnings file is empty (should have been cleared during execution)
  8. Update sidebar by spawning the Page Manager bot via spawnAgent with { botGroup: 'forge', botHandle: 'page-manager' }

  9. Build, commit, push

  10. Present the result to the user for review

  11. Iterate until the user approves

  12. Update {Project}_Phase.md: set Phase: Complete_Completed

  13. Build, commit, push

Post-Complete Prompts

After completing the project, remind the user:

  • Back up .secrets to RoboForm if it was modified during this project
  • Back up Railway env vars to RoboForm if they were modified during this project
  • Re-index Typesense — the following files were created, modified, or deleted during this project (see Changelog for full list)

Archive Details

Frontmatter

Set status: archived on every .md file. For files missing required frontmatter fields, add them first:

FieldDefault if missing
titleDerive from filename
visibilityinternal
statusarchived
owner"erik@uvilo.com"
approver_
  • Replace slug paths: dept_lower/projects/project_lower/dept_lower/archived/project_lower/
  • Move the project’s sidebar group from the Projects section to the department’s Archived section
  • If no Archived section exists, create one

Archived Index

Add entry to {Dept}/Archived/index.md (create if missing):

- [{Project}](./{Project}/README.md)

Relationship to Project_Archive

Project_Complete is the lifecycle phase that closes a project. It handles both approve and archive outcomes. Project_Archive handles restoring an archived project back to approved status. Use Project_Complete to close; use Project_Archive to unarchive.

Rules

  • Always use git mv for directory moves to preserve history