Commit Graph
20 Commits
Author SHA1 Message Date
gongzhiyong 8e56284baa fix: polish manager account pages 2026-05-30 15:37:28 +08:00
gongzhiyong 8e7bdc6388 fix: sync sub runtime callback state 2026-05-28 21:24:02 +08:00
gongzhiyong 704579f03e fix: normalize agnet runtime callbacks 2026-05-28 20:33:38 +08:00
gongzhiyong 61e060909d fix: localize agnet detail copy 2026-05-28 19:15:41 +08:00
gongzhiyong 7d7c163f37 fix: localize agnet form field labels 2026-05-28 19:03:51 +08:00
gongzhiyong 53cc1a5e63 fix: localize agnet role and resource labels 2026-05-28 18:51:43 +08:00
gongzhiyong 587746db90 fix: localize agnet create run sheet 2026-05-28 18:43:08 +08:00
gongzhiyong 72cbf43dec fix: localize agnet drawer status text 2026-05-28 18:24:07 +08:00
gongzhiyong fd02edcd52 fix: localize simulated agnet status 2026-05-28 18:16:06 +08:00
gongzhiyong efaac446ab fix: localize agnet console copy 2026-05-28 18:08:18 +08:00
gongzhiyong d2f7ab7333 fix: enable encrypted swarm requests 2026-05-28 16:58:27 +08:00
gongzhiyong 10fc64e172 feat: complete sub task flow callbacks 2026-05-27 23:31:57 +08:00
gongzhiyong 4ccf7b1062 feat: complete swarm manager callback loop 2026-05-27 21:17:32 +08:00
gongzhiyong 9f5b4ba777 feat: encrypt desktop sub requests 2026-05-27 18:15:29 +08:00
gongzhiyong beaf1e6611 fix: align runtime create payload with agnet 2026-05-27 15:03:48 +08:00
gongzhiyong 50b76dd4e6 feat: align agnet runtime v2.1 integration 2026-05-27 11:04:08 +08:00
gongzhiyong a80c3e0c35 feat: release manager 1.4.4 agnet persistence 2026-05-26 16:01:49 +08:00
gongzhiyong e1b9de2a49 feat: add azure key vault resource discovery 2026-05-25 17:41:43 +08:00
chenchenandClaude Opus 4.7 d8f61957f0 feat(manager): version 1.4.2 — H2 sk- hash + M9 audit drawer + M3 docs + M7 vault
Bundled release bumping Manager to 1.4.2 with four product-doc gap
closures lined up in a single deploy.

VERSION:
  - 1.2.0 → 1.4.2 (catches up after Sprints 1-5 shipped under 1.2.0)

H2 — sk- hash phase A (server-side, zero client impact):
  - tokens table: new key_hash varchar(64) index column
  - Token.Insert() dual-writes Key + KeyHash on every new token
  - BackfillTokenKeyHash() runs at startup, batches 500 rows at a
    time, idempotent. Fills legacy rows that pre-date the column
    without blocking app boot
  - 5 unit tests pin: sha256 correctness, dual-write on Insert,
    empty Key → empty hash, backfill behaviour, idempotency
  - Phase B (switch lookup index off plaintext + drop Key column)
    can ship later once telemetry shows key_hash IS NULL count is 0

M9 — task detail drawer with audit timeline:
  - Deployments page click → Sheet drawer with RunDetailPanel +
    new RunAuditTimeline component
  - Timeline pulls from existing /api/agnet/deployments/:id/events
    which Sprint 1 already wired to the persistent
    agnet_audit_events table — no new backend
  - Vertical timeline w/ coloured dots (primary / amber / rose by
    classifyEventLevel), occurred_at + correlation_id per row,
    max-height + overflow for long traces
  - 15s polling; empty/loading/error states all rendered

M3 — project_doc as a first-class binding step:
  - Resource binding wizard split "SK or project docs" into two
    distinct steps: "Connect project docs" + "Connect SK skill packs"
  - Each step's Connect button pre-selects the matching type in
    the advanced sheet so users don't accidentally tag a doc repo
    as Git or SK
  - Summary dialog still receives the combined skOrDocSources view
    to keep the recommendation-card contract unchanged

M7 — secret vault status (admin panel):
  - controller/secret_store.go: new GetSecretStoreStatus handler
    + fetchHealth() method. Hits OpenBao /sys/health (token-less
    upstream endpoint), maps to a sanitized response — NEVER
    returns secret names or values per product docs §13.9
  - Graceful degradation: env vars unset → "not configured" pill;
    network error → "unreachable"; sealed → amber warning; healthy
    → green
  - Mounted at GET /api/secret-store/status behind middleware.AdminAuth
  - New SecretStoreSection in system-settings/maintenance,
    registered before Performance. Read-only card with refresh
    button, 7 status fields, message line, "how to enable" hint

Verification:
  - go vet ./... clean
  - go test ./controller/... ./middleware/... ./model/... all green
  - tsc --noEmit clean
  - Backend M7 endpoint deliberately tolerant — production may not
    have OPENBAO_ADDR set yet, UI shows "not configured" instead of
    500ing

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-25 11:19:42 +08:00
chenchen 2a1d8d8191 chore: initial import — heicode manager + website 2026-05-20 14:07:30 +08:00