Trim page props and page the conversation's messages
Bot and workspace lists in page props leave out instructions, memory and workspace context, and carry the last message as a short preview. The header avatar's edit form loads the bot's instructions when it opens. The conversation renders its latest 30 messages and loads older ones as the thread scrolls to its top. Also: the composer shows a placeholder until its editor loads, and `bun start` no longer builds first. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
@@ -10,6 +10,8 @@ import grabHarnessOverview from "@/src/functions/backend/db/harness/grab-harness
|
||||
import grabBotWorkspaces from "@/src/functions/backend/db/workspaces/grab-bot-workspaces";
|
||||
import grabUserWorkspaces from "@/src/functions/backend/db/workspaces/grab-user-workspaces";
|
||||
import grabCrewSettingsServerProps from "../../(functions)/grab-crew-settings-server-props";
|
||||
import railBots from "@/src/utils/rail-bots";
|
||||
import railWorkspaces from "@/src/utils/rail-workspaces";
|
||||
|
||||
/**
|
||||
* One bot's settings: its details, models, workspaces, computers, tools
|
||||
@@ -63,8 +65,8 @@ export const server: BunextPageServerFn<PagePropsType> = async (params) => {
|
||||
props: {
|
||||
...settings.props,
|
||||
bot,
|
||||
bots,
|
||||
workspaces,
|
||||
bots: railBots({ bots }),
|
||||
workspaces: railWorkspaces({ workspaces }),
|
||||
bot_workspaces,
|
||||
bot_computers,
|
||||
computers: all_computers,
|
||||
|
||||
@@ -2,6 +2,7 @@ import type { PagePropsType } from "@/src/types";
|
||||
import type { BunextPageServerFn } from "@moduletrace/bunext/types";
|
||||
import grabBots from "@/src/functions/backend/db/bots/grab-bots";
|
||||
import grabCrewSettingsServerProps from "../(functions)/grab-crew-settings-server-props";
|
||||
import railBots from "@/src/utils/rail-bots";
|
||||
|
||||
export const server: BunextPageServerFn<PagePropsType> = async (params) => {
|
||||
const settings = await grabCrewSettingsServerProps(params);
|
||||
@@ -11,7 +12,7 @@ export const server: BunextPageServerFn<PagePropsType> = async (params) => {
|
||||
return {
|
||||
props: {
|
||||
...settings.props,
|
||||
bots: await grabBots({ user_id: settings.props.person.id }),
|
||||
bots: railBots({ bots: await grabBots({ user_id: settings.props.person.id }) }),
|
||||
},
|
||||
};
|
||||
};
|
||||
|
||||
@@ -6,6 +6,8 @@ import grabUserComputer from "@/src/functions/backend/db/computers/grab-user-com
|
||||
import grabUserComputers from "@/src/functions/backend/db/computers/grab-user-computers";
|
||||
import grabUserWorkspaces from "@/src/functions/backend/db/workspaces/grab-user-workspaces";
|
||||
import grabCrewSettingsServerProps from "../../(functions)/grab-crew-settings-server-props";
|
||||
import railBots from "@/src/utils/rail-bots";
|
||||
import railWorkspaces from "@/src/utils/rail-workspaces";
|
||||
|
||||
/**
|
||||
* One computer's settings: its state and resources, direct bot access,
|
||||
@@ -52,8 +54,8 @@ export const server: BunextPageServerFn<PagePropsType> = async (params) => {
|
||||
props: {
|
||||
...settings.props,
|
||||
computer,
|
||||
bots,
|
||||
workspaces,
|
||||
bots: railBots({ bots }),
|
||||
workspaces: railWorkspaces({ workspaces }),
|
||||
computer_bots: access.bots,
|
||||
computer_workspaces: access.workspaces,
|
||||
},
|
||||
|
||||
@@ -8,6 +8,8 @@ import grabUserWorkspaces from "@/src/functions/backend/db/workspaces/grab-user-
|
||||
import grabWorkspaceBots from "@/src/functions/backend/db/workspaces/grab-workspace-bots";
|
||||
import grabWorkspaceComputers from "@/src/functions/backend/db/workspaces/grab-workspace-computers";
|
||||
import grabCrewSettingsServerProps from "../../(functions)/grab-crew-settings-server-props";
|
||||
import railBots from "@/src/utils/rail-bots";
|
||||
import railWorkspaces from "@/src/utils/rail-workspaces";
|
||||
|
||||
/**
|
||||
* One workspace's settings: its picture, details, bots, computers, tools
|
||||
@@ -52,14 +54,16 @@ export const server: BunextPageServerFn<PagePropsType> = async (params) => {
|
||||
grabWorkspaceExtensionsOverview({ user_id, workspace_id }),
|
||||
]);
|
||||
|
||||
const crew = railBots({ bots: workspace_bots });
|
||||
|
||||
return {
|
||||
props: {
|
||||
...settings.props,
|
||||
workspaces,
|
||||
workspaces: railWorkspaces({ workspaces }),
|
||||
workspace,
|
||||
bots: workspace_bots,
|
||||
workspace_bots,
|
||||
all_bots,
|
||||
bots: crew,
|
||||
workspace_bots: crew,
|
||||
all_bots: railBots({ bots: all_bots }),
|
||||
workspace_computers,
|
||||
computers,
|
||||
workspace_harness_overview,
|
||||
|
||||
@@ -2,6 +2,7 @@ import type { PagePropsType } from "@/src/types";
|
||||
import type { BunextPageServerFn } from "@moduletrace/bunext/types";
|
||||
import grabUserWorkspaces from "@/src/functions/backend/db/workspaces/grab-user-workspaces";
|
||||
import grabCrewSettingsServerProps from "../(functions)/grab-crew-settings-server-props";
|
||||
import railWorkspaces from "@/src/utils/rail-workspaces";
|
||||
|
||||
export const server: BunextPageServerFn<PagePropsType> = async (params) => {
|
||||
const settings = await grabCrewSettingsServerProps(params);
|
||||
@@ -11,7 +12,9 @@ export const server: BunextPageServerFn<PagePropsType> = async (params) => {
|
||||
return {
|
||||
props: {
|
||||
...settings.props,
|
||||
workspaces: await grabUserWorkspaces({ user_id: settings.props.person.id }),
|
||||
workspaces: railWorkspaces({
|
||||
workspaces: await grabUserWorkspaces({ user_id: settings.props.person.id }),
|
||||
}),
|
||||
},
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user