Skip to content

feat: OPE46-00042: QoL: Add machine alias support - #15

Open
andrei-hasna wants to merge 1 commit into
mainfrom
factory/679914cb-4b44-4f62-b466-396ef5a6-f9ffa76e
Open

feat: OPE46-00042: QoL: Add machine alias support#15
andrei-hasna wants to merge 1 commit into
mainfrom
factory/679914cb-4b44-4f62-b466-396ef5a6-f9ffa76e

Conversation

@andrei-hasna

@andrei-hasna andrei-hasna commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Objective

OPE46-00042: QoL: Add machine alias support

Add alias support in config: allow defining shortcuts like prod -> production-server-01 in config.json for quick access.

MEASURED on origin/main: src/config.ts contains no alias concept. Add an optional aliases map to the config schema so prod resolves to production-server-01, and resolve aliases in ONE place (the machine-id resolution helper) so every command that accepts a machine id benefits. Unknown alias must produce a clear error, not a silent fallthrough to a literal machine id.

EXECUTION NOTES (added 2026-07-29 for autonomous execution)
Repo: github.com/hasna/monitor. CLI commands are registered in src/cli/index.ts (Commander). Verified against origin/main that this surface does NOT already exist.
Requirements: implement in src/ (not docs); keep existing output shapes and the -j/--json contract intact; reuse the existing helpers in that file (parseLimitOption, parseCursorOption, chalk formatting) rather than inventing new patterns.
Acceptance: bun run typecheck, bun run build and bun test are all green, and a new/extended test under src/ exercises the new behaviour (assert on the command's JSON output and/or exit code, not on colored text). No network, no live remote machines, no credentials — tests must run offline against local collectors/fixtures.

Verification

  • policy source: base c4cbd1e (immutable commit — agent-proof)
  • ⚠️ GATE-INTEGRITY: agent touched verify-bearing config — REVIEW (scripts.typecheck)
  • containment: env — allowlist env, non-login shell, run-scoped HOME (registry auth seeded for install)
  • install: pass
  • typecheck: pass
  • lint: pass
  • build: pass
  • test: pass
  • doctor (ci): ok — 11 checks passed (1 advisory)

Run run_c51ff509d0e7 · backend codewith · task 679914cb-4b44-4f62-b466-396ef5a60ddc
🏭 Generated by @hasnaxyz/factory


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

OPE46-00042: QoL: Add machine alias support

Add alias support in config: allow defining shortcuts like `prod` -> `production-server-01` in config.json for quick access.

MEASURED on origin/main: src/config.ts contains no alias concept. Add an optional `aliases` map to the config schema so `prod` resolves to `production-server-01`, and resolve aliases in ONE place (the machine-id resolution helper) so every command that accepts a machine id benefits. Unknown alias must produce a clear error, not a silent fallthrough to a literal machine id.

EXECUTION NOTES (added 2026-07-29 for autonomous execution)
Repo: github.com/hasna/monitor. CLI commands are registered in src/cli/index.ts (Commander). Verified against origin/main that this surface does NOT already exist.
Requirements: implement in src/ (not docs); keep existing output shapes and the -j/--json contract intact; reuse the existing helpers in that file (parseLimitOption, parseCursorOption, chalk formatting) rather than inventing new patterns.
Acceptance: `bun run typecheck`, `bun run build` and `bun test` are all green, and a new/extended test under src/ exercises the new behaviour (assert on the command's JSON output and/or exit code, not on colored text). No network, no live remote machines, no credentials — tests must run offline against local collectors/fixtures.

X-Factory-Run: run_c51ff509d0e7
X-Factory-Task: 679914cb-4b44-4f62-b466-396ef5a60ddc
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