Rebuild AgentCompany-New renderer to match design spec
- Port design tokens, sidebar, topbar, and icons to inline SVG set - Rewrite each page (Home/Team/Work/Chat/Files/Approvals/Social/Settings) to drive real snapshot data and match the bento, kanban, three-pane chat, file tree + pinned cards, approval queue, social schedule + calendar, and settings sub-nav layouts - Split Chat and Settings into per-concern subcomponents so every file stays under 500 lines - Add schema v4 for pinned files and scheduled posts plus IPC + service wiring; cover new behavior in unit tests - Update onboarding labels and Hire form to remove ambiguity for the expanded e2e suite (all settings tabs + 8 routes at 1280 and 980)
This commit is contained in:
1 parent
00736d5719
commit
74266566b7
47 files changed
+4609
-1552
No files matched your search
@@ -1,6 +1,6 @@
|
||||
import type { DatabaseSync } from "node:sqlite";
|
||||
|
||||
const SCHEMA_VERSION = 3;
|
||||
const SCHEMA_VERSION = 4;
|
||||
|
||||
export function installSchema(db: DatabaseSync): void {
|
||||
db.exec(`
|
||||
@@ -455,5 +455,34 @@ export function installSchema(db: DatabaseSync): void {
|
||||
insert into schema_migrations(version, name, applied_at)
|
||||
values (3, 'onboarding_execution_schema', datetime('now'));
|
||||
`);
|
||||
currentVersion = 3;
|
||||
}
|
||||
|
||||
if (currentVersion < 4) {
|
||||
db.exec(`
|
||||
alter table file_objects add column pinned integer not null default 0;
|
||||
alter table file_objects add column space_id text;
|
||||
alter table file_objects add column updated_at text;
|
||||
|
||||
create table if not exists scheduled_posts (
|
||||
id text primary key,
|
||||
org_id text not null references organizations(id) on delete cascade,
|
||||
social_account_id text not null references social_accounts(id) on delete cascade,
|
||||
body_md text not null,
|
||||
scheduled_for text not null,
|
||||
state text not null,
|
||||
approval_id text references approvals(id) on delete set null,
|
||||
created_by_employee_id text references employees(id) on delete set null,
|
||||
created_at text not null,
|
||||
updated_at text not null
|
||||
);
|
||||
|
||||
create index if not exists idx_files_org_pinned on file_objects(org_id, pinned);
|
||||
create index if not exists idx_scheduled_posts_org_state on scheduled_posts(org_id, state);
|
||||
create index if not exists idx_scheduled_posts_account_date on scheduled_posts(social_account_id, scheduled_for);
|
||||
|
||||
insert into schema_migrations(version, name, applied_at)
|
||||
values (4, 'files_pinned_and_scheduled_posts', datetime('now'));
|
||||
`);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user