Skip to content

feat: synchronize universal Bun VS Code launch configuration #235

Description

@artiphishle

Goal

Make ankh devtools sync . install a universal VS Code debug configuration that is valid for every Bun-based Ankhorage repository without repository-specific paths, package names, or assumed scripts.

Required behavior

  • Devtools owns .vscode/launch.json.
  • The shared launch configuration uses the already recommended oven.bun-vscode debugger.
  • Debug the active JavaScript/TypeScript file with:
    • type: "bun"
    • request: "launch"
    • program: "${file}"
    • cwd: "${workspaceFolder}"
    • runtime: "bun"
  • Enable Bun support in the JavaScript Debug Terminal through the managed VS Code settings.
  • Do not infer or hard-code repository-specific dev, start, Expo, Next.js, Studio, or other commands.
  • Do not write absolute machine paths.
  • Sync/status/dry-run/idempotence must cover the new managed file.
  • Package the canonical launch asset in the published Devtools package.
  • Update the manual usage source; do not hand-edit generated README/Paradox output.

Rationale

Issue #24 intentionally left launch.json unmanaged because application launch commands differ between libraries, CLIs, Expo, Next.js and other repositories. The Bun debugger now gives us a genuinely shared repository-independent contract: debug the active source entry file, while repository-specific package scripts remain owned by the repository and can run in the Bun-enabled Debug Terminal.

Skills to load

  • .agents/skills/ankhorage-coding-rules/SKILL.md
  • .agents/skills/ankhorage-project-structure/SKILL.md
  • .agents/skills/hexagonal-architecture/SKILL.md

Acceptance

  • .vscode/launch.json is managed by Devtools.
  • No repository-specific or absolute path appears in the canonical launch configuration.
  • bun.debugTerminal.enabled is centrally enabled.
  • Aggregate and VS Code scoped sync/status include launch configuration.
  • Repeated sync is byte-stable.
  • The packaged Devtools artifact contains the launch asset.
  • Changeset added.

Activity

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

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions