authorgravatar for julius0216@outlook.comJulius Marminge <julius0216@outlook.com> 2026-03-05 18:20:21-08:00
committergravatar for jmarminge@gmail.comJulius Marminge <jmarminge@gmail.com> 2026-03-05 23:00:41-08:00
log1683ee7b112dce0886b354a3fff7c8625bf95d7e
tree2b105755851b1904d119cb64f688e24967ca4696
parente6575c41491c001f08c8bd9424dc71aa1e89c103

Fix post-rebase typecheck regressions

Co-authored-by: codex <codex@users.noreply.github.com>

4 files changed, 8 insertions(+), 24 deletions(-)

apps/web/src/components/ChatView.browser.tsx+4-6
......@@ -6,7 +6,6 @@ import {
66 type MessageId,
77 type OrchestrationReadModel,
88 type ProjectId,
9 type ProviderSessionId,
109 type ServerConfig,
1110 type ThreadId,
1211 type WsWelcomePayload,
......@@ -204,6 +203,8 @@ function createSnapshotForTargetUser(options: {
204203 projectId: PROJECT_ID,
205204 title: "Browser test thread",
206205 model: "gpt-5",
206 interactionMode: "default",
207 runtimeMode: "full-access",
207208 branch: "main",
208209 worktreePath: null,
209210 latestTurn: null,
......@@ -212,15 +213,13 @@ function createSnapshotForTargetUser(options: {
212213 deletedAt: null,
213214 messages,
214215 activities: [],
216 proposedPlans: [],
215217 checkpoints: [],
216218 session: {
217219 threadId: THREAD_ID,
218220 status: "ready",
219221 providerName: "codex",
220 providerSessionId: "session-1" as ProviderSessionId,
221 providerThreadId: null,
222 approvalPolicy: "on-failure",
223 sandboxMode: "workspace-write",
222 runtimeMode: "full-access",
224223 activeTurnId: null,
225224 lastError: null,
226225 updatedAt: NOW_ISO,
......@@ -552,7 +551,6 @@ describe("ChatView timeline estimator parity (full app)", () => {
552551 projects: [],
553552 threads: [],
554553 threadsHydrated: false,
555 runtimeMode: "full-access",
556554 });
557555 });
558556
apps/web/src/components/ChatView.tsx-14
......@@ -4716,20 +4716,6 @@ type TimelineRow =
47164716 }
47174717 | { kind: "working"; id: string; createdAt: string | null };
47184718
4719function estimateTimelineMessageHeight(message: TimelineMessage): number {
4720 const textLength = message.text.length;
4721 if (message.role === "assistant") {
4722 const estimatedLines = Math.max(1, Math.ceil(textLength / 72));
4723 return 78 + Math.min(estimatedLines * 22, 820);
4724 }
4725
4726 const estimatedLines = Math.max(1, Math.ceil(textLength / 56));
4727 const attachmentCount = message.attachments?.length ?? 0;
4728 const attachmentRows = Math.ceil(attachmentCount / 2);
4729 const attachmentHeight = attachmentRows * 124;
4730 return 96 + Math.min(estimatedLines * 22, 620) + attachmentHeight;
4731}
4732
47334719function estimateTimelineProposedPlanHeight(proposedPlan: TimelineProposedPlan): number {
47344720 const estimatedLines = Math.max(1, Math.ceil(proposedPlan.planMarkdown.length / 72));
47354721 return 120 + Math.min(estimatedLines * 22, 880);
packages/contracts/src/orchestration.ts+3-3
......@@ -263,7 +263,7 @@ export const OrchestrationReadModel = Schema.Struct({
263263});
264264export type OrchestrationReadModel = typeof OrchestrationReadModel.Type;
265265
266const ProjectCreateCommand = Schema.Struct({
266export const ProjectCreateCommand = Schema.Struct({
267267 type: Schema.Literal("project.create"),
268268 commandId: CommandId,
269269 projectId: ProjectId,
......@@ -337,7 +337,7 @@ const ThreadInteractionModeSetCommand = Schema.Struct({
337337 createdAt: IsoDateTime,
338338});
339339
340const ThreadTurnStartCommand = Schema.Struct({
340export const ThreadTurnStartCommand = Schema.Struct({
341341 type: Schema.Literal("thread.turn.start"),
342342 commandId: CommandId,
343343 threadId: ThreadId,
......@@ -980,7 +980,7 @@ export const TurnCountRange = Schema.Struct({
980980 ),
981981);
982982
983const ThreadTurnDiff = TurnCountRange.mapFields(
983export const ThreadTurnDiff = TurnCountRange.mapFields(
984984 Struct.assign({
985985 threadId: ThreadId,
986986 diff: Schema.String,
packages/contracts/src/terminal.ts+1-1
......@@ -23,7 +23,7 @@ const TerminalIdWithDefaultSchema = TerminalIdSchema.pipe(
2323 Schema.withDecodingDefault(() => DEFAULT_TERMINAL_ID),
2424);
2525
26const TerminalThreadInput = Schema.Struct({
26export const TerminalThreadInput = Schema.Struct({
2727 threadId: TrimmedNonEmptyStringSchema,
2828});
2929export type TerminalThreadInput = Schema.Codec.Encoded<typeof TerminalThreadInput>;