Skip to content

DQ5 — Server default base dir becomes ~/.j5code (stop defaulting into ~/.t3) #33

Description

@Jacksondr5

Problem

The J5 server's default base dir is still upstream's ~/.t3 (apps/server/src/os-jank.ts:105-111). Only the desktop app was rebranded to ~/.j5code (scripts/lib/j5-branding.ts defaultBaseDirName, applied via apps/desktop/src/app/DesktopStatePaths.ts), and it passes the path down as an explicit T3CODE_HOME. On any machine that also runs real T3 Code — the dogfood server box does — a bare serve or pair without an explicit override lands J5 state inside the live T3 install.

Jackson's ruling (dogfood runtime design session, 2026-08-30): fix the default in code; don't rely on people setting env vars. The interim mitigation is the mandatory T3CODE_HOME line in docs/j5/dogfood-runtime.md.

Fix shape

Change the server-side default home from ~/.t3 to ~/.j5code. Resolution precedence is unchanged: --base-dir flag > T3CODE_HOME env > desktop bootstrap > (new) default (apps/server/src/cli/config.ts:273-281). Desktop behavior is unchanged since it already passes an explicit home. The T3CODE_* env var names stay as they are, matching the rebrand's deliberate choice in BRANDING.md — only the default path value changes.

Protected seam

apps/server/src/os-jank.ts is upstream-owned. This edit is Jackson-authorized but must follow FORK.md discipline: record the exception in FORK.md's sanctioned-cases inventory (or extend BRANDING.md's rebrand boundary, whichever matches the precedent better) in the same PR. No refactoring of surrounding upstream code.

Acceptance

  • Bare node apps/server/dist/bin.mjs serve with no overrides uses ~/.j5code.
  • T3CODE_HOME and --base-dir still win; focused test covers the default.
  • FORK.md/BRANDING.md updated in the same PR.
  • The warning block in docs/j5/dogfood-runtime.md is softened to belt-and-braces status.

Complements the runbook; does not overlap #25–#31. Starter tier: single agent, hours.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    dogfood-queueReserved J5-native dogfood work — not staffable in Traycer

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions