Branch modules skills#4
Merged
Merged
Conversation
…lette + run button
…packages; route workflow execution through v2 dispatcher
…h + EventBus into core
…writes; remove deleted google() registration from dev-server
…ttings panels + parked task_09 doc; drop throwaway sign-test-token script
…rs so the shell page loads
…); update shell calendar+inbox call sites to v2 prefixed tool names
…x_items every 30s; replaces deleted v1 gmail.gmail-sync workflow
…y (workflow templates left dormant; v2 runner doesn't yet support create-task/wake-agent blocks)
…nts; add per-block run tracking and fork-from-here UI ## Summary **Shell:** Split monolithic Workflows.tsx into modular components: - Editor.tsx — DAG canvas with drag/drop + block palette - RunDrawer.tsx — Run detail view with block-by-block trace - ForkModal.tsx — Fork-from-here with block re-run + input override - sse.ts — Real-time event subscription for per-block status - api.ts — Workflow API call site (list, create, run, delete, fork) **Workflow engine (v2):** Enhanced DAG runner with per-block persistence: - recordBlockStart/recordBlockEnd — track each block's start, output, duration - Block-run events emitted to RealtimeBus (SSE stream to shell) - seedOutputs — pre-populated outputs for resume-from-block flows - startAtBlockId + startAtInputsOverride — fork-from-here entry point **API:** Added /api/admin/workflows/:id/fork endpoint + per-block run read via /api/admin/workflow-runs/:id/blocks **Tests:** Phase 2 gate results verified (SDK regression test, install timing, seeding) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
…ehavior ## Summary Four test failures caused by mismatched expectations after recent code changes: 1. **phase9-admin-api.test.ts** — Approvals table no longer exists (removed in task_06 when approvals collapsed into tasks model). Updated test to use task-based approval model with originKind='agent_action'. 2. **control-plane-disk-catalog.test.ts** — Manifest hash test was computing expected hash from parsed JSON instead of reading actual manifestText + bundleText. Updated to: (a) verify hash is deterministic by loading catalog twice, or (b) compute hash from actual manifest text written to disk. 3. **control-plane-agent-registrar.test.ts** — Re-install test expected 2 agents removed, but only orphan agents (not matching new definition) are deleted. Agent B should be removed (count=1), not 2. Updated expectation with comment explaining upsert strategy. 4. **core-default-apps-provisioning.test.ts** — Re-install protection requires manifestHash to compare against stored value. Test was providing incomplete catalog entries without bundleText/manifestHash, so every re-run was treated as new install. Added createCatalogEntry() helper to compute proper manifestHash for test fixtures. All 384 tests now pass ✓ Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
…o 'human', auto-rewake skips 'human' tasks, comments don't wake when 'human'; add /tasks/:id/{send-to-agent,mark-done} endpoints + UI buttons
…tor='agent' so copilot chat semantics survive the gate (loop safety stays in afterRun + auto-rewake gate)
…ole); fix copilot user-message text-on-bg by removing Markdown's hardcoded text color and letting parent bubbles control it
… ISO timestamp + IANA timezone + weekday at the top of the system prompt; expose {{now}} and {{today}} synthetic vars in workflow runner
…/comments first-user-message + copilot.start_session; metadata.titleAuto flag drives optional persona-driven refine on first reply (framework.tasks.patch now accepts metadata); manual rename clears the flag; postbuild copies persona MDs to dist (was silently empty before)
…/UX pass
Four task tracks landed in this branch.
task_15 — Agents screen ("the cabinet") rebuilt.
Cards grid + org chart toggle, fleet stats strip (server-side
aggregate /agents/stats), right-rail detail panel with tabs
(Overview · Instructions · Skills · Hierarchy · Runs), inherited
module skills + editable routing tags + tenant skill library, role-
keyed icons + custom avatar editor, reparent confirmation modal,
+ New agent modal (persona vs blank), bulk multi-select with
Wake/Pause/Resume action bar, 7-day per-card sparkline from a
/agents/activity aggregate, SSE-driven invalidation of agents/
orgTree/agentStats queries.
task_16 — Shell information architecture cleanup.
Sidebar reshaped into Work / Cabinet / Extend / Admin groups (Extend
+ Admin admin-only). RequireAdmin route guard wraps Workflows / Apps /
Connectors / Settings / Team / Activity / Routines / Budgets so
members no longer hit mystery 403s. Team screen built (members
table, role dropdown, remove, invitations panel, invite modal) on
the existing /api/auth/{team,invite,invitations} backend. Activity
screen built (chronological feed with actor/entity filters, day
grouping). Apps + Modules collapsed into one tabbed screen. Routines
+ Budgets promoted from Settings tabs to top-level Extend routes;
Settings shrunk to General + Branding + app-contributed panels.
task_17 — Tenant settings manifest.
SettingDefinition type added to @boringos/shared (string/boolean/
number/select/longtext/secret); AppDefinition + Module SDK accept
a settings field; agent/v2/setting-registry aggregates module +
framework keys; admin route GET /settings/manifest exposes the list,
PATCH /settings validates against it. Shell auto-renders Settings
→ General from the manifest via <ManifestSection> + <SettingInput>
widget switching on type. Framework registers agents_paused as the
baseline manifest entry.
task_18 — Theme + UX pass to align with hebbs-website.
Tailwind v4 @theme block in shell/src/index.css with semantic tokens
(bg/surface/text/muted/accent/cyan/green/red/navy + Inter +
JetBrains Mono + Space Grotesk); BrandProvider writes resolved
primaryColor/secondaryColor to :root CSS vars so tenant rebrand
repaints the whole shell. Codemod across ~90 files moved every
bg-slate-*, text-slate-*, border-slate-*, bg-blue-* call onto the
semantic tokens. Sidebar wordmark uses font-logo (Space Grotesk).
shadcn-style primitives owned in components/ui/ (Dialog, Button,
Switch, Tabs) on Radix; InviteModal, NewAgentModal, ReparentConfirm
migrated to Dialog; AgentsPanel global pause + SettingInput's
BooleanInput migrated to Switch. Lucide icons replace text glyphs
in the sidebar nav. Framer Motion drives the right-rail slide-in
+ dialog scale-in (200/150ms). Sonner Toaster wired in Layout;
Team mutations + Branding save fire toast.success/.error. Global
⌘K command palette via cmdk with jump-to-anything (nav targets +
cached agents + cached tasks). Login screen rebuilt as split
hero/form layout — dark band with drifting amber/cyan/green orbs
+ gradient "Run your cabinet." headline in Space Grotesk on the
left, warm-beige auth form on the right. Branding panel grew a
live preview block (scoped CSS vars show the draft palette) and
input[type=color] swatches.
Mechanical follow-ups also landed:
- agents.skills jsonb column renamed to agents.routing_tags
end-to-end (DB migration + Drizzle schema + /agents/:id/routing-
tags endpoint + delegation router + UI). Old /agents/:id/skills
path kept as a deprecated alias for one release.
- tests/setting-registry.test.ts (6), tests/shell-team-presenter
.test.ts (4), tests/shell-activity-presenter.test.ts (7), expanded
shell-agents-presenter.test.ts (18 incl. routing tags + activity
series + role icons). 131/131 green across the shell unit suite.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.