Skip to content

feat(int-p01): land DEPLOYMENT_PROMPT.md + add compose.local.yaml for Phase 1.5#37

Open
ncimino wants to merge 1 commit into
mainfrom
feature/nik-int-p01-deploy-prep
Open

feat(int-p01): land DEPLOYMENT_PROMPT.md + add compose.local.yaml for Phase 1.5#37
ncimino wants to merge 1 commit into
mainfrom
feature/nik-int-p01-deploy-prep

Conversation

@ncimino
Copy link
Copy Markdown
Contributor

@ncimino ncimino commented May 27, 2026

Summary

Two follow-ups to PR #36 that didn't make the squash-merge:

  1. DEPLOYMENT_PROMPT.md got orphaned. It was pushed to PR feat(anythingllm-docker): INT-P01 DOKS→Docker migration plan + ADR-005 #36's branch 6 minutes AFTER the squash-merge happened at ff11a63, so it landed on the dangling branch ref instead of on main. Restored from the orphan branch in this PR.

  2. No compose.local.yaml for Phase 1.5. The DEPLOYMENT_PROMPT.md inserts a Phase 1.5 (LOCAL-LAPTOP validation) that depends on docker compose -f compose.local.yaml up. PR feat(anythingllm-docker): INT-P01 DOKS→Docker migration plan + ADR-005 #36's rendered ai.weown.agency site doesn't have one, and neither does the canonical anythingllm-docker/template/. Without it, the deployment agent can't execute Phase 1.5.

Changes

  • NEW anythingllm-docker/template/docker/compose.local.yaml.jinja — local-dev variant for the canonical template (mirrors the sandbox-docker pattern from PR Auto-PR: feat(sandbox-docker): add copier template for AIO Sandbox on DO droplets #27). Future renders get it for free.
  • NEW anythingllm-docker/sites/ai.weown.agency/docker/compose.local.yaml — rendered with int-p01-anythingllm project values, anythingllm:1.7.2 image, int_p01_anythingllm_storage volume name matching compose.prod.yaml so restore.sh local <BACKUP> hits the right target.
  • NEW anythingllm-docker/sites/ai.weown.agency/DEPLOYMENT_PROMPT.md — recovered from the orphan branch. New addition: a "STEP 0 — Sync the working tree" section at the top that lists 7 known artifacts the deployment agent should find on main. If the agent reports any missing, it's on a stale checkout and should fix that before proceeding. This prevents the "10 artifacts missing!" false-alarm I just hit running it in Zed against a pre-PR-feat(anythingllm-docker): INT-P01 DOKS→Docker migration plan + ADR-005 #36 checkout.

Test plan

  • compose.local.yaml.jinja template renders cleanly (manually verified via Write + content match against sandbox-docker pattern)
  • compose.local.yaml validates as YAML (no Jinja remnants)
  • docker compose -f compose.local.yaml config would parse it (yaml-level sanity)
  • Volume name int_p01_anythingllm_storage matches compose.prod.yaml line 89 — restore.sh local mode will find the right target

Risk

Minimal — adds 3 new files, no modifications to existing files except the recovered DEPLOYMENT_PROMPT.md (which had a STEP 0 section added at the top).

🤖 Generated with Claude Code

… Phase 1.5

Two follow-ups to PR #36 that didn't make the squash-merge:

1. DEPLOYMENT_PROMPT.md was pushed to the PR #36 branch 6 minutes AFTER
   the squash-merge happened, so it got orphaned on the dangling branch
   ref instead of landing on main. Restored from the orphan branch.

2. PR #36's rendered ai.weown.agency site did not include a
   compose.local.yaml because the anythingllm-docker template doesn't
   have a compose.local.yaml.jinja. Phase 1.5 (LOCAL-LAPTOP validation)
   in DEPLOYMENT_PROMPT.md depends on local-laptop docker-compose, so
   without this file the deployment agent can't execute Phase 1.5.

Fix:
- Add compose.local.yaml.jinja to the canonical anythingllm-docker
  template (so future sites get it for free, matching sandbox-docker's
  pattern from PR #27).
- Add compose.local.yaml directly to ai.weown.agency/docker/ with the
  values pinned (int-p01-anythingllm project, anythingllm:1.7.2 image,
  int_p01_anythingllm_storage volume name matching compose.prod.yaml's
  volume so restore.sh local mode hits the right target).
- Update DEPLOYMENT_PROMPT.md with a new STEP 0 — Sync the working tree
  at the top, including a verification snippet that lists 7 known
  artifacts the agent should find on main. If any are missing, the
  agent is on a stale checkout and should fix that before proceeding.
  This will prevent the "10 artifacts missing!" false-alarm the Zed
  agent reported when run against a pre-PR-#36 checkout.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
Copilot AI review requested due to automatic review settings May 27, 2026 20:17
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR restores an orphaned operational guide (DEPLOYMENT_PROMPT.md) for the ai.weown.agency AnythingLLM Docker migration and adds a compose.local.yaml (template + rendered) to support the Phase 1.5 local-laptop validation workflow described in that guide.

Changes:

  • Adds a local-dev Compose template (compose.local.yaml.jinja) for the AnythingLLM docker template.
  • Adds the rendered local-dev Compose file for anythingllm-docker/sites/ai.weown.agency.
  • Restores DEPLOYMENT_PROMPT.md for the ai.weown.agency site, including the new “STEP 0 — Sync the working tree” section.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.

File Description
anythingllm-docker/template/docker/compose.local.yaml.jinja Introduces a reusable local-dev Compose template for AnythingLLM.
anythingllm-docker/sites/ai.weown.agency/docker/compose.local.yaml Adds the rendered local-dev Compose file for Phase 1.5 validation.
anythingllm-docker/sites/ai.weown.agency/DEPLOYMENT_PROMPT.md Restores the migration execution prompt and documents the Phase 1.5 local validation flow.

Comment on lines +1 to +3
# Local development compose — `cp .env.example .env.local && docker compose -f compose.local.yaml up`
# Both services pull non-secret defaults from .env.local via `env_file:`. For
# real Infisical-injected secrets locally, use `infisical run` instead:
Comment on lines +1 to +4
# Local development compose — `cp .env.example .env.local && docker compose -f compose.local.yaml up`
# Both services pull non-secret defaults from .env.local via `env_file:`. For
# real Infisical-injected secrets locally, use `infisical run` instead:
# infisical run --projectId=<id> --env=dev -- docker compose -f compose.local.yaml up

```bash
copier copy --force ../../../anythingllm-docker /tmp/local-render --data-file <answers.yaml> --defaults --trust --vcs-ref=HEAD
cp /tmp/local-render/docker/compose.local.yaml docker/compose.local.yaml

```bash
# restore.sh local mode reads project_name from itself
./scripts/restore.sh local int-p01-anythingllm_backup_<TS>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants