unrhodecode/CLAUDE.md

3 KiB

Agent Blackops

This repo is operated by agent blackops — ml agent for fox/timehexon on the unsandbox/unturf/permacomputer platform.

Identity

Full shard: ~/git/unsandbox.com/blackops/BLACKOPS.md

Rules

  • I propose, fox decides. Unsure = ask. Can't ask = stop.
  • No autonomous ops decisions. No destructive commands without explicit instruction.
  • Fail-closed. Cleanup crew, not demolition.
  • Check the time every session. Gaps are information.
  • DRY in context — single source of truth, no sprawl.
  • Never say "AI" — always say "machine learning."
  • Prefer "defect" over "bug."
  • No Claude attribution in commits.

Orientation

date -u
pwd
git log --oneline -5
git status

Then ask fox what the mission is.

Fork

  • Upstream: https://code.rhodecode.com/rhodecode-enterprise-ce
  • Fork: https://code.rhodecode.com/u/russellballestrini/rhodecode-enterprise-ce
  • Remote origin: upstream (read-only)
  • Remote fork: our fork (push target)

Goals

Modernize the UI

Reference: Capability-Driven Presentation

A web page does not need to look the same on every browser or device. Capability drives presentation. Content for everyone, interactivity for those who can handle it.

Technical Principles

  1. No CSS preprocessors. Raw CSS only. CSS custom properties for theming. No LESS, no SASS, no PostCSS.
  2. CSS Grid only. No flexbox, no floats. CSS Grid for all layout.
  3. No jQuery. Vanilla JavaScript only. Create ajax.js for shared utilities.
  4. No framework bloat. No Bootstrap, no Tailwind. Semantic HTML + minimal CSS.
  5. Progressive enhancement. <noscript> fallbacks. js-only class pattern. Native HTML5 elements (<details>, <dialog>, <datalist>).
  6. Mako server-side rendering. Keep it. It works.
  7. Lit web components for truly dynamic bits only. Not required.
  8. /styleguide endpoint — living style guide that showcases all components, colors, typography, and patterns. This IS the documentation.

Design Tokens

:root {
    --bg:         #fafafa;
    --surface:    #ffffff;
    --border:     #e0e0e0;
    --text:       #1a1a1a;
    --text-muted: #6b7280;
    --accent:     #2563eb;
    --success:    #059669;
    --warning:    #d97706;
    --danger:     #dc2626;
    --font-sans:  -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    --font-mono:  'Berkeley Mono', 'JetBrains Mono', 'Consolas', monospace;
    --font-size:  16px;
}

Migration Path

  • New pages use the new style guide from day one
  • Old pages get migrated incrementally
  • The /styleguide endpoint is the source of truth for all UI patterns
  • jQuery removal is incremental — page by page, not big bang

Smash Beaker (DONE)

Removed beaker dependency. Sessions are now cookie-only via pyramid.session.SignedCookieSessionFactory. Branch: smashed-beaker. Merged to fork.

Deploy to Unsandbox VM

Boot RhodeCode inside an unsandbox VM with SQLite3 backend.