Skip to content

docs(wish): canonical-pgserve-pm2-supervision G2 + G3 implementation history#99

Merged
namastex888 merged 1 commit into
mainfrom
docs/canonical-wish-implementation-history
May 9, 2026
Merged

docs(wish): canonical-pgserve-pm2-supervision G2 + G3 implementation history#99
namastex888 merged 1 commit into
mainfrom
docs/canonical-wish-implementation-history

Conversation

@namastex888

Copy link
Copy Markdown
Contributor

Summary

Mirrors the docs-fix pattern from PR #97 (G2-5 spec drift fix on autopg-distribution-cutover-finalize): records the truth that the canonical-pgserve-pm2-supervision wish has substantially shipped while its HANDOFF row + wish text were stuck at 2026-04-30 "NOT-STARTED".

Surfaced via T9 pre-flight audits (ENGINEER-AUDIT-CANONICAL-G2.md / G3.md / G4.md in the agent dir).

Changes

File Change
.genie/wishes/canonical-pgserve-pm2-supervision/WISH.md Two Implementation history (2026-05-09) blocks added at the end of Group 2 + Group 3 sections, immediately before the --- separator. No code, no acceptance criteria changes.

Diff: 4 insertions, 0 deletions.

What the new blocks record

G2 (genie install + pm2 supervision, Wave 2) — substantially shipped via automagik-dev/genie:

  • src/genie-commands/install.ts self-documents as Wave 2 of THIS wish (PR pgserve#55, Wave 1 = pgserve#57).
  • pm2 service renamed genie-serveGenie at v4.260507.2; LEGACY_PM2_PROCESS_NAMES drives the in-place migration of operators on the older name.
  • Doctor checks landed under different IDs than the wish prescribed: pgserve binary + pgserve under pm2 (vs pm2-supervision + canonical-autopg). Functional intent matches; the literal IDs differ.
  • Decision 3 (src/lib/pm2-args.js shared lib) NOT yet landed in genie — pgserve's src/lib/pm2-args.js is canonical but genie has no copy. Constants likely inlined in install.ts. Tracked as follow-up.

G3 (omni install reconfig + migration, Wave 3) — partially shipped via automagik-dev/omni:

  • packages/cli/src/lib/canonical-pgserve.ts exposes resolveCanonicalPgservePreference, consumed by commands/install.ts.
  • Migration helper file is not present under the wish-prescribed name migrate-from-embedded-pgserve.ts — TBD whether renamed or pending.
  • canonical-connection-string doctor check is not found by literal grep of commands/doctor.ts — either renamed during implementation or still pending.
  • Acceptance criterion 2 ("no data loss") has no defined fixture or comparison script.

G4 (Brain ingestion + ADR, Wave 4) — unverifiable locally; namastexlabs/genie-configure is not under /home/genie/workspace/repos/. No history block added for G4 in this PR.

Why

Without these blocks, a future team-lead reading the wish text + HANDOFF row would dispatch a "build G2/G3 from scratch" team that re-implements work already merged in automagik-dev/genie + automagik-dev/omni, generating merge collisions and wasted cycles. The cross-cutting CRITICAL from T9's audits flagged the HANDOFF cohort row separately; this PR synchronizes the wish text with the corrected truth.

Out of scope

  • HANDOFF cohort table updates (already done by genie-pgserve in a separate update).
  • Decision 3 follow-up (landing src/lib/pm2-args.js in genie repo) — separate work.
  • G4 implementation-history block — gated on cloning namastexlabs/genie-configure for verification.
  • Doctor-check rename or migration-file rename in genie/omni — separate audits.

Test plan

  • git diff --stat confirms 4 insertions, no other changes.
  • Wish file still parses as valid markdown (no broken section nesting; --- separators intact).
  • Optional: route to qa for human-eyeball confirmation that the new blocks are accurate against current genie + omni source.

🤖 Generated with Claude Code

…history

The canonical-pgserve-pm2-supervision wish was authored 2026-04-30 and
the cohort table in HANDOFF marked Groups 2/3/4 as NOT-STARTED. Reading
origin/main as of 2026-05-09 shows the truth is different:

  - **G2 substantially shipped** in `automagik-dev/genie`. The
    `src/genie-commands/install.ts` header self-documents as "Wave 2 of
    the canonical-pgserve-pm2-supervision wish (PR pgserve#55, Wave 1
    = pgserve#57)". The pm2 service was renamed `genie-serve` → `Genie`
    at v4.260507.2 (handled in code via `LEGACY_PM2_PROCESS_NAMES`).
    Doctor checks landed under different names (`pgserve binary` +
    `pgserve under pm2` vs wish-prescribed `pm2-supervision` +
    `canonical-autopg`); same intent, different IDs.
    `src/lib/pm2-args.js` (Decision 3) NOT landed in genie — likely
    inlined in install.ts; tracked as follow-up.

  - **G3 partially shipped** in `automagik-dev/omni`.
    `packages/cli/src/lib/canonical-pgserve.ts` exposes
    `resolveCanonicalPgservePreference`, consumed by
    `commands/install.ts`. Migration helper file is not present under
    the wish-prescribed name `migrate-from-embedded-pgserve.ts`. The
    `canonical-connection-string` doctor check is not found by literal
    grep — either renamed during implementation or still pending.

  - **G4 unverifiable locally** — `namastexlabs/genie-configure` is
    not under `/home/genie/workspace/repos/`; the three brain doc
    files prescribed by G4 cannot be inspected from this audit.

This commit lands two `Implementation history (2026-05-09)` blocks
(one in G2, one in G3) at the end of each group section, immediately
before the `---` separator. Mirrors the docs-fix pattern from PR #97
(G2-5 spec drift fix on `autopg-distribution-cutover-finalize`) and
ab4d859 (G1 single-install.sh decision). Future readers see what
shipped vs what's still pending without having to cross-reference
HANDOFF + multiple repos.

No code changes. No acceptance criteria changes. Audit references
point at:
  - /home/genie/workspace/agents/genie-pgserve/ENGINEER-AUDIT-CANONICAL-G2.md
  - /home/genie/workspace/agents/genie-pgserve/ENGINEER-AUDIT-CANONICAL-G3.md
  - /home/genie/workspace/agents/genie-pgserve/ENGINEER-AUDIT-CANONICAL-G4.md

The cross-cutting CRITICAL (HANDOFF table cohort-row corrections) was
already actioned by genie-pgserve in a separate update; this commit
synchronizes the wish text with the corrected truth.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented May 9, 2026

Copy link
Copy Markdown

Warning

Rate limit exceeded

@namastex888 has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 24 minutes and 20 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 6df95cb9-a0eb-4881-ba29-c932e2653d66

📥 Commits

Reviewing files that changed from the base of the PR and between a18c849 and 213143a.

📒 Files selected for processing (1)
  • .genie/wishes/canonical-pgserve-pm2-supervision/WISH.md
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/canonical-wish-implementation-history

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Code Review

This pull request updates the WISH.md documentation to include detailed implementation history for Groups 2 and 3 of the canonical-pgserve-pm2-supervision wish. The changes document the current shipping status for the genie and omni repositories, highlighting discrepancies in naming, missing components, and pending integration tests as identified in recent audits. No review comments were provided for this pull request, so I have no feedback to offer.

namastex888 added a commit that referenced this pull request May 9, 2026
…ry (genie-configure brain files)

Mirrors PR #99 (G2 + G3 implementation-history blocks) and ab4d859
(G1 docs-fix). Records the truth that G4's three brain deliverables
shipped to namastexlabs/genie-configure during the original 2026-04-30
sprint, but the wish text never updated to reflect it.

Verified by cloning namastexlabs/genie-configure during T11:
  - brain/Configuration & Routing/canonical-pgserve-pm2.md   (230 lines)
  - brain/Runbooks/recover-pm2-stack.md                        (246 lines)
  - brain/_decisions/2026-04-30-canonical-pgserve.md           (112 lines, ACCEPTED)

Notable findings recorded in the new block:

  - **Filename rename** — 2 of 3 deliverables shipped under
    `canonical-pgserve-*` rather than the wish-prescribed
    `canonical-autopg-*`. Aligns with Decision #7 of the finalize wish
    (autopg + pgserve are interchangeable bin names) but the validation
    block in G4 still test-f's the wish-prescribed filenames and so
    fails against shipped state. Flagged for separate cleanup.

  - **No fixture for acceptance criterion 2** — "architecture map
    matches actual pm2 list" needs a recorded `pm2 list --json` fixture;
    today verification is human-eyeball.

  - **Brain ingestion is human-authored, not automated** — no
    @khal-os/brain imports observed in the cloned repo. The "ingestion"
    deliverable was fulfilled by manually authoring three Markdown
    files. Recording this so future contributors don't go looking for
    a missing automation pipeline.

No code, no acceptance criteria changes, no validation block touched
in this commit (the rename + validation cleanup is a separate
follow-up task; this commit just records the truth so the next reader
isn't blindsided).

Audit trail:
  - /home/genie/workspace/agents/genie-pgserve/ENGINEER-AUDIT-CANONICAL-G4.md
  - HANDOFF cohort row already corrected by genie-pgserve in a
    separate update (G4 row flipped from UNVERIFIABLE LOCALLY to
    SHIPPED).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@namastex888 namastex888 merged commit 99d5ee0 into main May 9, 2026
9 checks passed
@namastex888 namastex888 deleted the docs/canonical-wish-implementation-history branch May 10, 2026 02:44
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.

1 participant