Skip to content

Choreography: Multi-PDF Print and Bugs

OrderRunDirectoryTriggerAgentsRepos
1Bug Fixesrun-1-bug-fixes/Manualbe-bug-fixes, fe-bug-fixesoperations, arda-frontend-app, documentation
2Multi-Templaterun-2-multi-template/After Run 1 exit gatebe-multi-template, fe-multi-templateoperations, arda-frontend-app, documentation
3Diagnosticsrun-3-diagnostics/After Run 2 exit gatebe-diagnosticsoperations, documentation
4API Testsrun-4-api-tests/After Run 3 exit gate + local deploymentate-api-testsapi-test
5API Proxyrun-5-api-proxy/After Run 3 exit gatets-api-proxyapi-proxy

Runs 1→2→3 are strictly sequential. Runs 4 and 5 can execute in parallel after Run 3 — they operate on independent repositories with no code dependencies.

All runs share the existing worktrees — no additional worktrees are needed. Runs commit sequentially to the same branch (jmpicnic/multi-pdf-print-and-bugs) in each repository.

RepositoryWorktree PathBranch
operations/Users/jmp/code/arda/projects/multi-pdf-print-and-bugs-worktrees/operationsjmpicnic/multi-pdf-print-and-bugs
arda-frontend-app/Users/jmp/code/arda/projects/multi-pdf-print-and-bugs-worktrees/arda-frontend-appjmpicnic/multi-pdf-print-and-bugs
documentation/Users/jmp/code/arda/projects/multi-pdf-print-and-bugs-worktrees/documentationjmpicnic/multi-pdf-print-and-bugs
api-test/Users/jmp/code/arda/projects/multi-pdf-print-and-bugs-worktrees/api-testjmpicnic/multi-pdf-print-and-bugs
api-proxy/Users/jmp/code/arda/projects/multi-pdf-print-and-bugs-worktrees/api-proxyjmpicnic/multi-pdf-print-and-bugs
ArtifactProduced ByConsumed ByPathFormat
Fixed KanbanCardPrinter (notes)Run 1Run 2, Run 4operations/src/.../KanbanCardPrinter.ktKotlin
UNMARK event type + endpointRun 1Run 4operations/src/.../KanbanCard.kt, KanbanCardEndpoint.ktKotlin
Frontend unmark actionRun 1arda-frontend-app/src/.../CardInfo.tsxTSX
CompositeRenderResult typesRun 2Run 3, Run 4operations/src/.../RenderResult.ktKotlin
PdfRenderService.renderGroups()Run 2Run 3operations/src/.../PdfRenderService.ktKotlin
Printing config patternRun 2Run 3operations/src/.../application.confHOCON
Frontend composite handlingRun 2arda-frontend-app/src/.../page.tsxTSX
Diagnostic parametersRun 3Run 4operations/src/.../ItemEndpoint.ktKotlin
debugPayload in GroupRenderResultRun 3Run 4operations/src/.../RenderResult.ktKotlin
Bruno API testsRun 4api-test/collections/Bruno
Updated api-proxy types + methodsRun 5api-proxy/src/TypeScript

All hand-offs are filesystem-only — no in-memory state is shared between runs. Each run reads committed code from the worktree and writes its changes as new commits.

  1. Current run completes all tasks.
  2. Run validate-exit.sh — all checks must pass.
  3. User reviews exit gate output.
  4. Next run’s entry criteria are checked.
  5. Next run is launched.

The following actions require explicit user authorization:

  • Pushing branches to remote
  • Creating pull requests
  • Deploying to dev environment (shared resource)
  • Running helmInstallToLocal for local K8s deployment (Run 4 entry)

Agents must stop and request user authorization before any of these actions.

Each run that modifies operations appends to CHANGELOG.md using the format:

## [X.Y.Z-jmpicnic-MMDD]

Where MMDD is the current date. This pre-release version format enables PR deployment to dev before merge.

  1. Check which tasks completed (review git log and task status).
  2. Fix the failing task.
  3. Re-run validate-exit.sh to confirm recovery.
  4. Continue to next run.
  1. Read the specific check that failed.
  2. Diagnose: build failure → fix code; test failure → fix test or code; clean worktree → commit changes.
  3. Re-run validate-exit.sh.
  1. The entry criteria reference Run N’s exit gate — if Run N passed, Run N+1 should too.
  2. If the worktree state has changed (e.g., manual edits between runs), re-run the previous exit gate to confirm.
RunCommand
1/launch-team run-1-bug-fixes/project-plan.md
2/launch-team run-2-multi-template/project-plan.md
3/launch-team run-3-diagnostics/project-plan.md
4/launch-team run-4-api-tests/project-plan.md
5/launch-team run-5-api-proxy/project-plan.md

All project plan paths are relative to: /Users/jmp/code/arda/projects/multi-pdf-print-and-bugs-worktrees/documentation/src/content/docs/roadmap/in-progress/multi-pdf-print-and-bugs/

After all runs complete, PRs are merged, and the project is verified:

  1. Move project docs from roadmap/in-progress/ to roadmap/completed/
  2. Remove worktrees:
    Terminal window
    for repo in operations arda-frontend-app documentation api-test api-proxy; do
    git -C /Users/jmp/code/arda/$repo worktree remove \
    /Users/jmp/code/arda/projects/multi-pdf-print-and-bugs-worktrees/$repo
    done
  3. Delete local branches (after PR merge):
    Terminal window
    for repo in operations arda-frontend-app documentation api-test api-proxy; do
    git -C /Users/jmp/code/arda/$repo branch -d jmpicnic/multi-pdf-print-and-bugs
    done

Copyright: (c) Arda Systems 2025-2026, All rights reserved