1. 21 Oct, 2026 1 commit
    • 郭阔's avatar
      feat: platform abstraction layer (auto-detect darwin/linux) · 3ac999b0
      郭阔 authored
      - bin/platform.sh: single source of truth for platform differences —
        OS detection (NH_OS override for tests), PATH bootstrap without
        shadowing caller-injected commands, platform default paths, scheduler
        abstraction (systemd timer + systemctl <-> launchd plist + launchctl
        with named entry scripts), file-level disable on darwin (survives
        reboot, one-click recoverable), sed -i / GNU-sed shims, root check
        only on linux, conf loading (EnvironmentFile equivalent)
      - bin/schedule.py: plist parse/write + auto-detect by filename
        (timer/plist/.disabled); schedule sources listing subcommand
      - harvest/continue/daily-digest: drop hardcoded nvm//home/yichu paths,
        self-bootstrap via platform.sh, harvest now loads conf itself
        (run.sh wrapper no longer required)
      - add-source/modify-source: fully cross-platform schedule management
        (plist generation + launchctl on darwin, timer + systemctl on linux)
      - status.sh: cross-platform overview/detail/journal (launchd log on darwin)
      - deploy/migrate: linux-only guard with pointer to setup.sh
      - tests: env-synced platform simulation (NH_OS), fake launchctl suite,
        darwin plist/disable/enable roundtrip tests; new disable contract
        (unload + preserve times) replaces clear-times; 37 tests green
      3ac999b0
  2. 20 Oct, 2026 2 commits
    • 郭阔's avatar
      feat: macOS platform adaptation, concurrency guard and detail page redesign · ed91787c
      郭阔 authored
      - web/app.py: IS_DARWIN branches (launchctl kickstart for manual trigger,
        direct execution for digest/continue without sudo); _active_harvests()
        concurrency guard on /run and /continue; normalized detail state
        (last run time from log filename, next trigger computed from schedule)
      - detail.html: layout redesign — status badge header, real overview cards,
        merged duplicate run metadata, collapsible logs/config, history moved up
      - gitignore: exclude .zcode/
      ed91787c
    • 谢宇轩's avatar
      feat: new feature · 4e3e086a
      谢宇轩 authored
      4e3e086a
  3. 09 Sep, 2026 1 commit
  4. 07 Sep, 2026 1 commit
  5. 02 Sep, 2026 2 commits