@xfey/tutti 0.1.21 → 0.1.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/collaboration-state/index.d.ts +1 -1
- package/dist/collaboration-state/index.js +1 -1
- package/dist/collaboration-state/messages.js +50 -1
- package/dist/collaboration-state/scratchpad.d.ts +2 -0
- package/dist/collaboration-state/scratchpad.js +63 -0
- package/dist/collaboration-state/storage-types.d.ts +5 -0
- package/dist/collaboration-state/types.d.ts +8 -1
- package/dist/control-plane/scratchpad-refresh-start.d.ts +2 -0
- package/dist/control-plane/scratchpad-refresh-start.js +10 -0
- package/dist/control-plane/scratchpad-refresh.d.ts +2 -0
- package/dist/control-plane/scratchpad-refresh.js +1 -0
- package/dist/project-timeline/index.d.ts +17 -3
- package/dist/server-shell/cli/host-lifecycle.js +2 -19
- package/dist/server-shell/cli/launch-command.d.ts +11 -0
- package/dist/server-shell/cli/launch-command.js +42 -6
- package/dist/server-shell/cli/terminal-qr.d.ts +3 -0
- package/dist/server-shell/cli/terminal-qr.js +17 -0
- package/dist/server-shell/http/routes/project-api/openapi-collaboration-routes.d.ts +1 -0
- package/dist/server-shell/http/routes/project-api/openapi-timeline-routes.d.ts +94 -5
- package/dist/server-shell/http/routes/project-api/openapi.d.ts +95 -5
- package/dist/server-shell/http/routes/project-api/payload-validation.d.ts +6 -2
- package/dist/server-shell/http/routes/project-api/payload-validation.js +3 -0
- package/dist/server-shell/http/routes/project-api/project-timeline-projection.js +694 -502
- package/migrations/0013_scratchpad_receipt_sources.sql +24 -0
- package/migrations/README.md +3 -2
- package/node_modules/@tutti/shared/dist/schemas/api/index.d.ts +1 -1
- package/node_modules/@tutti/shared/dist/schemas/api/index.js +1 -1
- package/node_modules/@tutti/shared/dist/schemas/api/messages.d.ts +1 -0
- package/node_modules/@tutti/shared/dist/schemas/api/messages.js +1 -0
- package/node_modules/@tutti/shared/dist/schemas/api/project-timeline.d.ts +313 -12
- package/node_modules/@tutti/shared/dist/schemas/api/project-timeline.js +131 -14
- package/node_modules/@tutti/shared/dist/schemas/api/types.d.ts +5 -1
- package/package.json +1 -1
- package/web/assets/index-BfFYfzeO.js +29 -0
- package/web/assets/index-De6mK5Q2.css +1 -0
- package/web/index.html +2 -2
- package/web/assets/index-BtneECwp.js +0 -29
- package/web/assets/index-CM9mbbeW.css +0 -1
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
CREATE TABLE IF NOT EXISTS scratchpad_source_refs (
|
|
2
|
+
scratchpad_id TEXT NOT NULL DEFAULT 'current' CHECK (scratchpad_id = 'current'),
|
|
3
|
+
message_id TEXT NOT NULL,
|
|
4
|
+
source_scope TEXT NOT NULL CHECK (source_scope IN ('main_chat', 'clarification_round')),
|
|
5
|
+
created_at TEXT NOT NULL,
|
|
6
|
+
PRIMARY KEY (scratchpad_id, message_id),
|
|
7
|
+
FOREIGN KEY (message_id) REFERENCES messages(id) ON DELETE CASCADE
|
|
8
|
+
);
|
|
9
|
+
|
|
10
|
+
CREATE INDEX IF NOT EXISTS idx_scratchpad_source_refs_created_at
|
|
11
|
+
ON scratchpad_source_refs (scratchpad_id, created_at ASC, message_id ASC);
|
|
12
|
+
|
|
13
|
+
CREATE TABLE IF NOT EXISTS scratchpad_receipt_sources (
|
|
14
|
+
workflow_ref TEXT NOT NULL,
|
|
15
|
+
message_id TEXT NOT NULL,
|
|
16
|
+
source_scope TEXT NOT NULL CHECK (source_scope IN ('main_chat', 'clarification_round')),
|
|
17
|
+
created_at TEXT NOT NULL,
|
|
18
|
+
PRIMARY KEY (workflow_ref, message_id),
|
|
19
|
+
FOREIGN KEY (workflow_ref) REFERENCES scratchpad_receipts(workflow_ref) ON DELETE CASCADE,
|
|
20
|
+
FOREIGN KEY (message_id) REFERENCES messages(id) ON DELETE CASCADE
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
CREATE INDEX IF NOT EXISTS idx_scratchpad_receipt_sources_created_at
|
|
24
|
+
ON scratchpad_receipt_sources (workflow_ref, created_at ASC, message_id ASC);
|
package/migrations/README.md
CHANGED
|
@@ -25,12 +25,13 @@
|
|
|
25
25
|
- `0010_project_brief.sql`:新增 host-local Project Brief projection 表,用于保存四个 baseline Project Docs 的短摘要和 source fingerprint。
|
|
26
26
|
- `0011_message_author_avatar.sql`:为消息作者增加可选 Relay account avatar 快照,保证跨浏览器查看历史消息时不依赖当前 viewer profile 或 presence sample。
|
|
27
27
|
- `0012_scratchpad_receipts.sql`:为当前 Scratchpad 增加 `submitted` 状态字段,并新增已提交 Scratchpad 小票历史表。
|
|
28
|
+
- `0013_scratchpad_receipt_sources.sql`:新增当前 Scratchpad snapshot 与 submitted receipt 的 source message id 引用表,供 Timeline Task Accepted 追溯原始聊天依据。
|
|
28
29
|
|
|
29
30
|
## 当前实现状态
|
|
30
31
|
|
|
31
|
-
- `0001_init.sql`、`0002_allow_sealed_round_successor_note.sql`、`0003_drop_scratchpad_source_message_refs.sql`、`0004_read_state.sql`、`0005_provider_usage.sql`、`0006_scratchpad_source_state.sql`、`0007_workspace_signal_read_state_scopes.sql`、`0008_provider_usage_anchors.sql`、`0009_project_timeline_events.sql`、`0010_project_brief.sql`、`0011_message_author_avatar.sql` 与 `
|
|
32
|
+
- `0001_init.sql`、`0002_allow_sealed_round_successor_note.sql`、`0003_drop_scratchpad_source_message_refs.sql`、`0004_read_state.sql`、`0005_provider_usage.sql`、`0006_scratchpad_source_state.sql`、`0007_workspace_signal_read_state_scopes.sql`、`0008_provider_usage_anchors.sql`、`0009_project_timeline_events.sql`、`0010_project_brief.sql`、`0011_message_author_avatar.sql`、`0012_scratchpad_receipts.sql` 与 `0013_scratchpad_receipt_sources.sql` 已存在,代表当前 host project SQLite schema contract。
|
|
32
33
|
- SQLite adapter、migration runner、checksum 校验、store metadata 初始化、transaction helper 与 command recovery scan helper 已实现。
|
|
33
|
-
- 协作 repository 与 Control Plane 已实现第一批业务读写;Phase 7 首批已复用 `0001_init.sql` 中的 `tasks.latest_run_result_id`、`task_details.result_json` 与 `run_results` 表完成 Run result / checks / promotion 摘要持久化。Control Plane recovery resolver 与 task-bound continuation / retry 复用现有 schema;deterministic promotion reconcile 的业务 truth 仍写入最终 Run result / task detail result,Timeline
|
|
34
|
+
- 协作 repository 与 Control Plane 已实现第一批业务读写;Phase 7 首批已复用 `0001_init.sql` 中的 `tasks.latest_run_result_id`、`task_details.result_json` 与 `run_results` 表完成 Run result / checks / promotion 摘要持久化。Control Plane recovery resolver 与 task-bound continuation / retry 复用现有 schema;deterministic promotion reconcile 的业务 truth 仍写入最终 Run result / task detail result,Timeline 默认从 `tasks`、`run_results` 与主群聊 `refs.worklist_feedback` 投影三类任务级审计节点,`project_timeline_events` 只保留缺少稳定 record 的轻量可观测性事件。merge workspace 不进入 SQLite truth。`provider_usage_events` 只保存 token 计数、调用来源、模型名、记录时间和可空 anchor,不保存 provider secret、prompt 或 raw response。store 基础设施本身已经可以创建并迁移 `tutti.sqlite`。
|
|
34
35
|
|
|
35
36
|
## PRAGMA 边界
|
|
36
37
|
|
|
@@ -3,7 +3,7 @@ export type * from "./types.js";
|
|
|
3
3
|
export { ApiErrorCodeSchema, ApiErrorResponseSchema, CommandDispositionBaseSchema, CursorPageRequestSchema, DEFAULT_SSE_REPLAY_WINDOW_POLICY, InterruptedCommandDispositionSchema, QueryInvalidationHintSchema, RelayInvalidationHintSchema, RelaySseEventTypeSchema, SseReplayWindowPolicySchema, WorkspaceSseEventTypeSchema, commandEnvelopeSchema, commandResponseSchema, commandResponseWithResultSchema, cursorPageSchema, relaySseEventSchema, timelineWindowSchema, workspaceSseEventSchema, } from "./primitives.js";
|
|
4
4
|
export { ProviderConfigInvalidReasonCodeSchema, ProviderConfigProjectionSchema, ProviderUnavailableReasonCodeSchema, } from "./provider-config.js";
|
|
5
5
|
export { ProviderUsageBreakdownProjectionSchema, ProviderUsageCategorySchema, ProviderUsageModelSummaryProjectionSchema, ProviderUsageProjectionSchema, ProviderUsageSourceSummaryProjectionSchema, } from "./provider-usage.js";
|
|
6
|
-
export { ProjectTimelineItemKindSchema, ProjectTimelineItemSchema, ProjectTimelineItemStatusSchema, ProjectTimelineResponseSchema, } from "./project-timeline.js";
|
|
6
|
+
export { ProjectTimelineChangeStatusSchema, ProjectTimelineClarificationTraceSchema, ProjectTimelineDecisionSummarySchema, ProjectTimelineItemKindSchema, ProjectTimelineItemSchema, ProjectTimelineItemStatusSchema, ProjectTimelineResponseSchema, ProjectTimelineSourceSnippetSchema, ProjectTimelineTaskUpdateStateSchema, ProjectTimelineTraceCardSchema, ProjectTimelineTraceLinkSchema, ProjectTimelineTraceToneSchema, } from "./project-timeline.js";
|
|
7
7
|
export { MAX_REFERENCE_STAGED_UPLOAD_BYTES, MAX_SKILL_ZIP_STAGED_UPLOAD_BYTES, MAX_STAGED_UPLOAD_BYTES, PresignedUploadPutSchema, ReferenceFileStartRelayUploadPayloadSchema, ReferenceStagedUploadReferenceProperties, RelayUploadProjectionSchema, RelayUploadPurposeSchema, Sha256DigestSchema, SkillZipStartRelayUploadPayloadSchema, SkillZipStagedUploadReferenceProperties, StagedUploadReferenceProperties, StagedUploadReferenceSchema, StartRelayUploadBodySchema, StartRelayUploadDispositionSchema, StartRelayUploadPayloadSchema, StartRelayUploadResponseSchema, StartRelayUploadResultSchema, maxStagedUploadBytesForPurpose, } from "./uploads.js";
|
|
8
8
|
export { MarkReadBodySchema, MarkReadDispositionSchema, MarkReadPayloadSchema, MarkReadResponseSchema, MarkReadResultSchema, ReadStateScopeProjectionSchema, ReadStateScopeSchema, ReadStateSummaryProjectionSchema, } from "./read-state.js";
|
|
9
9
|
export { GetMessagesRequestSchema, MessageAuthorSchema, MessageCreatedEventPayloadSchema, MessageKindSchema, MessageProjectionSchema, MessageReferenceFileRefSchema, MessageRefsSchema, MessageScopeSchema, MessageWindowSchema, ReferenceFileCategorySchema, SendMainChatMessageBodySchema, SendMainChatMessageCreatedDispositionSchema, SendMainChatMessageDispositionSchema, SendMainChatMessagePayloadSchema, SendMainChatMessageResponseSchema, SendMainChatMessageResultSchema, WorklistFeedbackItemSchema, WorklistFeedbackGeneratedFileSchema, WorklistFeedbackRefSchema, } from "./messages.js";
|
|
@@ -2,7 +2,7 @@ export * from "./openapi.js";
|
|
|
2
2
|
export { ApiErrorCodeSchema, ApiErrorResponseSchema, CommandDispositionBaseSchema, CursorPageRequestSchema, DEFAULT_SSE_REPLAY_WINDOW_POLICY, InterruptedCommandDispositionSchema, QueryInvalidationHintSchema, RelayInvalidationHintSchema, RelaySseEventTypeSchema, SseReplayWindowPolicySchema, WorkspaceSseEventTypeSchema, commandEnvelopeSchema, commandResponseSchema, commandResponseWithResultSchema, cursorPageSchema, relaySseEventSchema, timelineWindowSchema, workspaceSseEventSchema, } from "./primitives.js";
|
|
3
3
|
export { ProviderConfigInvalidReasonCodeSchema, ProviderConfigProjectionSchema, ProviderUnavailableReasonCodeSchema, } from "./provider-config.js";
|
|
4
4
|
export { ProviderUsageBreakdownProjectionSchema, ProviderUsageCategorySchema, ProviderUsageModelSummaryProjectionSchema, ProviderUsageProjectionSchema, ProviderUsageSourceSummaryProjectionSchema, } from "./provider-usage.js";
|
|
5
|
-
export { ProjectTimelineItemKindSchema, ProjectTimelineItemSchema, ProjectTimelineItemStatusSchema, ProjectTimelineResponseSchema, } from "./project-timeline.js";
|
|
5
|
+
export { ProjectTimelineChangeStatusSchema, ProjectTimelineClarificationTraceSchema, ProjectTimelineDecisionSummarySchema, ProjectTimelineItemKindSchema, ProjectTimelineItemSchema, ProjectTimelineItemStatusSchema, ProjectTimelineResponseSchema, ProjectTimelineSourceSnippetSchema, ProjectTimelineTaskUpdateStateSchema, ProjectTimelineTraceCardSchema, ProjectTimelineTraceLinkSchema, ProjectTimelineTraceToneSchema, } from "./project-timeline.js";
|
|
6
6
|
export { MAX_REFERENCE_STAGED_UPLOAD_BYTES, MAX_SKILL_ZIP_STAGED_UPLOAD_BYTES, MAX_STAGED_UPLOAD_BYTES, PresignedUploadPutSchema, ReferenceFileStartRelayUploadPayloadSchema, ReferenceStagedUploadReferenceProperties, RelayUploadProjectionSchema, RelayUploadPurposeSchema, Sha256DigestSchema, SkillZipStartRelayUploadPayloadSchema, SkillZipStagedUploadReferenceProperties, StagedUploadReferenceProperties, StagedUploadReferenceSchema, StartRelayUploadBodySchema, StartRelayUploadDispositionSchema, StartRelayUploadPayloadSchema, StartRelayUploadResponseSchema, StartRelayUploadResultSchema, maxStagedUploadBytesForPurpose, } from "./uploads.js";
|
|
7
7
|
export { MarkReadBodySchema, MarkReadDispositionSchema, MarkReadPayloadSchema, MarkReadResponseSchema, MarkReadResultSchema, ReadStateScopeProjectionSchema, ReadStateScopeSchema, ReadStateSummaryProjectionSchema, } from "./read-state.js";
|
|
8
8
|
export { GetMessagesRequestSchema, MessageAuthorSchema, MessageCreatedEventPayloadSchema, MessageKindSchema, MessageProjectionSchema, MessageReferenceFileRefSchema, MessageRefsSchema, MessageScopeSchema, MessageWindowSchema, ReferenceFileCategorySchema, SendMainChatMessageBodySchema, SendMainChatMessageCreatedDispositionSchema, SendMainChatMessageDispositionSchema, SendMainChatMessagePayloadSchema, SendMainChatMessageResponseSchema, SendMainChatMessageResultSchema, WorklistFeedbackItemSchema, WorklistFeedbackGeneratedFileSchema, WorklistFeedbackRefSchema, } from "./messages.js";
|
|
@@ -329,6 +329,7 @@ export declare const GetMessagesRequestSchema: import("@sinclair/typebox").TObje
|
|
|
329
329
|
anchor: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"latest">, import("@sinclair/typebox").TLiteral<"start">]>>;
|
|
330
330
|
before: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
331
331
|
after: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
332
|
+
around: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
332
333
|
}>;
|
|
333
334
|
export declare const SendMainChatMessageBodySchema: import("@sinclair/typebox").TSchema;
|
|
334
335
|
export declare const SendMainChatMessageResponseSchema: import("@sinclair/typebox").TSchema;
|
|
@@ -135,6 +135,7 @@ export const GetMessagesRequestSchema = Type.Object({
|
|
|
135
135
|
anchor: Type.Optional(Type.Union([Type.Literal("latest"), Type.Literal("start")])),
|
|
136
136
|
before: Type.Optional(CursorSchema),
|
|
137
137
|
after: Type.Optional(CursorSchema),
|
|
138
|
+
around: Type.Optional(MessageIdSchema),
|
|
138
139
|
}, { additionalProperties: false });
|
|
139
140
|
export const SendMainChatMessageBodySchema = commandEnvelopeSchema(SendMainChatMessagePayloadSchema);
|
|
140
141
|
export const SendMainChatMessageResponseSchema = commandResponseWithResultSchema(SendMainChatMessageDispositionSchema, SendMainChatMessageResultSchema);
|
|
@@ -1,8 +1,131 @@
|
|
|
1
|
-
export declare const ProjectTimelineItemKindSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"
|
|
2
|
-
export declare const ProjectTimelineItemStatusSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"
|
|
1
|
+
export declare const ProjectTimelineItemKindSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"task_accepted">, import("@sinclair/typebox").TLiteral<"task_update">, import("@sinclair/typebox").TLiteral<"checkpoint">]>;
|
|
2
|
+
export declare const ProjectTimelineItemStatusSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"completed">, import("@sinclair/typebox").TLiteral<"failed">, import("@sinclair/typebox").TLiteral<"needs_human">]>;
|
|
3
|
+
export declare const ProjectTimelineTaskUpdateStateSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"needs_input">, import("@sinclair/typebox").TLiteral<"completed">, import("@sinclair/typebox").TLiteral<"failed">]>;
|
|
4
|
+
export declare const ProjectTimelineTraceToneSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"neutral">, import("@sinclair/typebox").TLiteral<"success">, import("@sinclair/typebox").TLiteral<"warning">, import("@sinclair/typebox").TLiteral<"error">]>;
|
|
5
|
+
export declare const ProjectTimelineTraceLinkSchema: import("@sinclair/typebox").TObject<{
|
|
6
|
+
kind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"worklist_task">, import("@sinclair/typebox").TLiteral<"chat_message">, import("@sinclair/typebox").TLiteral<"reference_file">, import("@sinclair/typebox").TLiteral<"repo_path">]>;
|
|
7
|
+
label: import("@sinclair/typebox").TString;
|
|
8
|
+
task_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
9
|
+
message_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
10
|
+
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
11
|
+
}>;
|
|
12
|
+
export declare const ProjectTimelineSourceSnippetSchema: import("@sinclair/typebox").TObject<{
|
|
13
|
+
message_id: import("@sinclair/typebox").TString;
|
|
14
|
+
author: import("@sinclair/typebox").TString;
|
|
15
|
+
body: import("@sinclair/typebox").TString;
|
|
16
|
+
created_at: import("@sinclair/typebox").TString;
|
|
17
|
+
}>;
|
|
18
|
+
export declare const ProjectTimelineDecisionSummarySchema: import("@sinclair/typebox").TObject<{
|
|
19
|
+
title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
20
|
+
summary: import("@sinclair/typebox").TString;
|
|
21
|
+
source: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"scratchpad">, import("@sinclair/typebox").TLiteral<"clarification">, import("@sinclair/typebox").TLiteral<"contract">]>>;
|
|
22
|
+
}>;
|
|
23
|
+
export declare const ProjectTimelineClarificationTraceSchema: import("@sinclair/typebox").TObject<{
|
|
24
|
+
title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
25
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
26
|
+
request: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
27
|
+
status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"active">, import("@sinclair/typebox").TLiteral<"resolved">]>>;
|
|
28
|
+
answer_count: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
|
|
29
|
+
answers: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
30
|
+
message_id: import("@sinclair/typebox").TString;
|
|
31
|
+
author: import("@sinclair/typebox").TString;
|
|
32
|
+
body: import("@sinclair/typebox").TString;
|
|
33
|
+
created_at: import("@sinclair/typebox").TString;
|
|
34
|
+
}>>>;
|
|
35
|
+
}>;
|
|
36
|
+
export declare const ProjectTimelineChangeStatusSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"added">, import("@sinclair/typebox").TLiteral<"modified">, import("@sinclair/typebox").TLiteral<"deleted">, import("@sinclair/typebox").TLiteral<"renamed">, import("@sinclair/typebox").TLiteral<"unknown">]>;
|
|
37
|
+
export declare const ProjectTimelineTraceCardSchema: import("@sinclair/typebox").TObject<{
|
|
38
|
+
tone: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"neutral">, import("@sinclair/typebox").TLiteral<"success">, import("@sinclair/typebox").TLiteral<"warning">, import("@sinclair/typebox").TLiteral<"error">]>;
|
|
39
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
40
|
+
origin: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
41
|
+
title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
42
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
43
|
+
snippets: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
44
|
+
message_id: import("@sinclair/typebox").TString;
|
|
45
|
+
author: import("@sinclair/typebox").TString;
|
|
46
|
+
body: import("@sinclair/typebox").TString;
|
|
47
|
+
created_at: import("@sinclair/typebox").TString;
|
|
48
|
+
}>>>;
|
|
49
|
+
source_count: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
|
|
50
|
+
unavailable_reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
51
|
+
}>>;
|
|
52
|
+
decisions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
53
|
+
title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
54
|
+
summary: import("@sinclair/typebox").TString;
|
|
55
|
+
source: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"scratchpad">, import("@sinclair/typebox").TLiteral<"clarification">, import("@sinclair/typebox").TLiteral<"contract">]>>;
|
|
56
|
+
}>>>;
|
|
57
|
+
clarification: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
58
|
+
title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
59
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
60
|
+
request: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
61
|
+
status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"active">, import("@sinclair/typebox").TLiteral<"resolved">]>>;
|
|
62
|
+
answer_count: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
|
|
63
|
+
answers: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
64
|
+
message_id: import("@sinclair/typebox").TString;
|
|
65
|
+
author: import("@sinclair/typebox").TString;
|
|
66
|
+
body: import("@sinclair/typebox").TString;
|
|
67
|
+
created_at: import("@sinclair/typebox").TString;
|
|
68
|
+
}>>>;
|
|
69
|
+
}>>;
|
|
70
|
+
contract: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
71
|
+
goal: import("@sinclair/typebox").TString;
|
|
72
|
+
scope: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
73
|
+
truncated: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
74
|
+
}>>;
|
|
75
|
+
result: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
76
|
+
summary: import("@sinclair/typebox").TString;
|
|
77
|
+
error_code: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
78
|
+
}>>;
|
|
79
|
+
changes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
80
|
+
items: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
81
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"added">, import("@sinclair/typebox").TLiteral<"modified">, import("@sinclair/typebox").TLiteral<"deleted">, import("@sinclair/typebox").TLiteral<"renamed">, import("@sinclair/typebox").TLiteral<"unknown">]>;
|
|
82
|
+
path: import("@sinclair/typebox").TString;
|
|
83
|
+
previous_path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
84
|
+
}>>;
|
|
85
|
+
total_count: import("@sinclair/typebox").TInteger;
|
|
86
|
+
truncated: import("@sinclair/typebox").TBoolean;
|
|
87
|
+
}>>;
|
|
88
|
+
verification: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
89
|
+
checks: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"passed">, import("@sinclair/typebox").TLiteral<"failed">, import("@sinclair/typebox").TLiteral<"skipped">]>;
|
|
90
|
+
skip_reason_code: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
91
|
+
skip_reason_summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
92
|
+
}>>;
|
|
93
|
+
promotion: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
94
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"promoted">, import("@sinclair/typebox").TLiteral<"not_promoted">, import("@sinclair/typebox").TLiteral<"not_attempted">]>;
|
|
95
|
+
commit_oid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
96
|
+
commit_short_oid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
97
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
98
|
+
reason_code: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
99
|
+
}>>;
|
|
100
|
+
checkpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
101
|
+
counters: import("@sinclair/typebox").TObject<{
|
|
102
|
+
completed: import("@sinclair/typebox").TInteger;
|
|
103
|
+
failed: import("@sinclair/typebox").TInteger;
|
|
104
|
+
remaining: import("@sinclair/typebox").TInteger;
|
|
105
|
+
}>;
|
|
106
|
+
items: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
107
|
+
task_id: import("@sinclair/typebox").TString;
|
|
108
|
+
title: import("@sinclair/typebox").TString;
|
|
109
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"done">, import("@sinclair/typebox").TLiteral<"failed">]>;
|
|
110
|
+
summary: import("@sinclair/typebox").TString;
|
|
111
|
+
}>>;
|
|
112
|
+
generated_files: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
113
|
+
path: import("@sinclair/typebox").TString;
|
|
114
|
+
name: import("@sinclair/typebox").TString;
|
|
115
|
+
}>>>;
|
|
116
|
+
truncated: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
117
|
+
}>>;
|
|
118
|
+
links: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
119
|
+
kind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"worklist_task">, import("@sinclair/typebox").TLiteral<"chat_message">, import("@sinclair/typebox").TLiteral<"reference_file">, import("@sinclair/typebox").TLiteral<"repo_path">]>;
|
|
120
|
+
label: import("@sinclair/typebox").TString;
|
|
121
|
+
task_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
122
|
+
message_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
123
|
+
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
124
|
+
}>>;
|
|
125
|
+
}>;
|
|
3
126
|
export declare const ProjectTimelineItemSchema: import("@sinclair/typebox").TObject<{
|
|
4
127
|
id: import("@sinclair/typebox").TString;
|
|
5
|
-
kind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"
|
|
128
|
+
kind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"task_accepted">, import("@sinclair/typebox").TLiteral<"task_update">, import("@sinclair/typebox").TLiteral<"checkpoint">]>;
|
|
6
129
|
occurred_at: import("@sinclair/typebox").TString;
|
|
7
130
|
title: import("@sinclair/typebox").TString;
|
|
8
131
|
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
@@ -10,9 +133,10 @@ export declare const ProjectTimelineItemSchema: import("@sinclair/typebox").TObj
|
|
|
10
133
|
task_title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
11
134
|
activity_ref: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
12
135
|
workflow_ref: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"
|
|
136
|
+
run_result_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
137
|
+
message_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
138
|
+
status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"completed">, import("@sinclair/typebox").TLiteral<"failed">, import("@sinclair/typebox").TLiteral<"needs_human">]>>;
|
|
139
|
+
update_state: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"needs_input">, import("@sinclair/typebox").TLiteral<"completed">, import("@sinclair/typebox").TLiteral<"failed">]>>;
|
|
16
140
|
token_usage: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
17
141
|
input_tokens: import("@sinclair/typebox").TInteger;
|
|
18
142
|
cached_input_tokens: import("@sinclair/typebox").TInteger;
|
|
@@ -41,7 +165,95 @@ export declare const ProjectTimelineItemSchema: import("@sinclair/typebox").TObj
|
|
|
41
165
|
total_tokens: import("@sinclair/typebox").TInteger;
|
|
42
166
|
event_count: import("@sinclair/typebox").TInteger;
|
|
43
167
|
}>>>;
|
|
44
|
-
|
|
168
|
+
trace_card: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
169
|
+
tone: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"neutral">, import("@sinclair/typebox").TLiteral<"success">, import("@sinclair/typebox").TLiteral<"warning">, import("@sinclair/typebox").TLiteral<"error">]>;
|
|
170
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
171
|
+
origin: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
172
|
+
title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
173
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
174
|
+
snippets: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
175
|
+
message_id: import("@sinclair/typebox").TString;
|
|
176
|
+
author: import("@sinclair/typebox").TString;
|
|
177
|
+
body: import("@sinclair/typebox").TString;
|
|
178
|
+
created_at: import("@sinclair/typebox").TString;
|
|
179
|
+
}>>>;
|
|
180
|
+
source_count: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
|
|
181
|
+
unavailable_reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
182
|
+
}>>;
|
|
183
|
+
decisions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
184
|
+
title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
185
|
+
summary: import("@sinclair/typebox").TString;
|
|
186
|
+
source: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"scratchpad">, import("@sinclair/typebox").TLiteral<"clarification">, import("@sinclair/typebox").TLiteral<"contract">]>>;
|
|
187
|
+
}>>>;
|
|
188
|
+
clarification: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
189
|
+
title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
190
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
191
|
+
request: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
192
|
+
status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"active">, import("@sinclair/typebox").TLiteral<"resolved">]>>;
|
|
193
|
+
answer_count: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
|
|
194
|
+
answers: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
195
|
+
message_id: import("@sinclair/typebox").TString;
|
|
196
|
+
author: import("@sinclair/typebox").TString;
|
|
197
|
+
body: import("@sinclair/typebox").TString;
|
|
198
|
+
created_at: import("@sinclair/typebox").TString;
|
|
199
|
+
}>>>;
|
|
200
|
+
}>>;
|
|
201
|
+
contract: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
202
|
+
goal: import("@sinclair/typebox").TString;
|
|
203
|
+
scope: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
204
|
+
truncated: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
205
|
+
}>>;
|
|
206
|
+
result: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
207
|
+
summary: import("@sinclair/typebox").TString;
|
|
208
|
+
error_code: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
209
|
+
}>>;
|
|
210
|
+
changes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
211
|
+
items: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
212
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"added">, import("@sinclair/typebox").TLiteral<"modified">, import("@sinclair/typebox").TLiteral<"deleted">, import("@sinclair/typebox").TLiteral<"renamed">, import("@sinclair/typebox").TLiteral<"unknown">]>;
|
|
213
|
+
path: import("@sinclair/typebox").TString;
|
|
214
|
+
previous_path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
215
|
+
}>>;
|
|
216
|
+
total_count: import("@sinclair/typebox").TInteger;
|
|
217
|
+
truncated: import("@sinclair/typebox").TBoolean;
|
|
218
|
+
}>>;
|
|
219
|
+
verification: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
220
|
+
checks: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"passed">, import("@sinclair/typebox").TLiteral<"failed">, import("@sinclair/typebox").TLiteral<"skipped">]>;
|
|
221
|
+
skip_reason_code: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
222
|
+
skip_reason_summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
223
|
+
}>>;
|
|
224
|
+
promotion: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
225
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"promoted">, import("@sinclair/typebox").TLiteral<"not_promoted">, import("@sinclair/typebox").TLiteral<"not_attempted">]>;
|
|
226
|
+
commit_oid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
227
|
+
commit_short_oid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
228
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
229
|
+
reason_code: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
230
|
+
}>>;
|
|
231
|
+
checkpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
232
|
+
counters: import("@sinclair/typebox").TObject<{
|
|
233
|
+
completed: import("@sinclair/typebox").TInteger;
|
|
234
|
+
failed: import("@sinclair/typebox").TInteger;
|
|
235
|
+
remaining: import("@sinclair/typebox").TInteger;
|
|
236
|
+
}>;
|
|
237
|
+
items: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
238
|
+
task_id: import("@sinclair/typebox").TString;
|
|
239
|
+
title: import("@sinclair/typebox").TString;
|
|
240
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"done">, import("@sinclair/typebox").TLiteral<"failed">]>;
|
|
241
|
+
summary: import("@sinclair/typebox").TString;
|
|
242
|
+
}>>;
|
|
243
|
+
generated_files: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
244
|
+
path: import("@sinclair/typebox").TString;
|
|
245
|
+
name: import("@sinclair/typebox").TString;
|
|
246
|
+
}>>>;
|
|
247
|
+
truncated: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
248
|
+
}>>;
|
|
249
|
+
links: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
250
|
+
kind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"worklist_task">, import("@sinclair/typebox").TLiteral<"chat_message">, import("@sinclair/typebox").TLiteral<"reference_file">, import("@sinclair/typebox").TLiteral<"repo_path">]>;
|
|
251
|
+
label: import("@sinclair/typebox").TString;
|
|
252
|
+
task_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
253
|
+
message_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
254
|
+
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
255
|
+
}>>;
|
|
256
|
+
}>>;
|
|
45
257
|
}>;
|
|
46
258
|
export declare const ProjectTimelineResponseSchema: import("@sinclair/typebox").TObject<{
|
|
47
259
|
generated_at: import("@sinclair/typebox").TString;
|
|
@@ -104,7 +316,7 @@ export declare const ProjectTimelineResponseSchema: import("@sinclair/typebox").
|
|
|
104
316
|
}>;
|
|
105
317
|
items: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
106
318
|
id: import("@sinclair/typebox").TString;
|
|
107
|
-
kind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"
|
|
319
|
+
kind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"task_accepted">, import("@sinclair/typebox").TLiteral<"task_update">, import("@sinclair/typebox").TLiteral<"checkpoint">]>;
|
|
108
320
|
occurred_at: import("@sinclair/typebox").TString;
|
|
109
321
|
title: import("@sinclair/typebox").TString;
|
|
110
322
|
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
@@ -112,9 +324,10 @@ export declare const ProjectTimelineResponseSchema: import("@sinclair/typebox").
|
|
|
112
324
|
task_title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
113
325
|
activity_ref: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
114
326
|
workflow_ref: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"
|
|
327
|
+
run_result_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
328
|
+
message_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
329
|
+
status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"completed">, import("@sinclair/typebox").TLiteral<"failed">, import("@sinclair/typebox").TLiteral<"needs_human">]>>;
|
|
330
|
+
update_state: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"needs_input">, import("@sinclair/typebox").TLiteral<"completed">, import("@sinclair/typebox").TLiteral<"failed">]>>;
|
|
118
331
|
token_usage: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
119
332
|
input_tokens: import("@sinclair/typebox").TInteger;
|
|
120
333
|
cached_input_tokens: import("@sinclair/typebox").TInteger;
|
|
@@ -143,7 +356,95 @@ export declare const ProjectTimelineResponseSchema: import("@sinclair/typebox").
|
|
|
143
356
|
total_tokens: import("@sinclair/typebox").TInteger;
|
|
144
357
|
event_count: import("@sinclair/typebox").TInteger;
|
|
145
358
|
}>>>;
|
|
146
|
-
|
|
359
|
+
trace_card: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
360
|
+
tone: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"neutral">, import("@sinclair/typebox").TLiteral<"success">, import("@sinclair/typebox").TLiteral<"warning">, import("@sinclair/typebox").TLiteral<"error">]>;
|
|
361
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
362
|
+
origin: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
363
|
+
title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
364
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
365
|
+
snippets: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
366
|
+
message_id: import("@sinclair/typebox").TString;
|
|
367
|
+
author: import("@sinclair/typebox").TString;
|
|
368
|
+
body: import("@sinclair/typebox").TString;
|
|
369
|
+
created_at: import("@sinclair/typebox").TString;
|
|
370
|
+
}>>>;
|
|
371
|
+
source_count: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
|
|
372
|
+
unavailable_reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
373
|
+
}>>;
|
|
374
|
+
decisions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
375
|
+
title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
376
|
+
summary: import("@sinclair/typebox").TString;
|
|
377
|
+
source: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"scratchpad">, import("@sinclair/typebox").TLiteral<"clarification">, import("@sinclair/typebox").TLiteral<"contract">]>>;
|
|
378
|
+
}>>>;
|
|
379
|
+
clarification: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
380
|
+
title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
381
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
382
|
+
request: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
383
|
+
status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"active">, import("@sinclair/typebox").TLiteral<"resolved">]>>;
|
|
384
|
+
answer_count: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
|
|
385
|
+
answers: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
386
|
+
message_id: import("@sinclair/typebox").TString;
|
|
387
|
+
author: import("@sinclair/typebox").TString;
|
|
388
|
+
body: import("@sinclair/typebox").TString;
|
|
389
|
+
created_at: import("@sinclair/typebox").TString;
|
|
390
|
+
}>>>;
|
|
391
|
+
}>>;
|
|
392
|
+
contract: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
393
|
+
goal: import("@sinclair/typebox").TString;
|
|
394
|
+
scope: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
395
|
+
truncated: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
396
|
+
}>>;
|
|
397
|
+
result: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
398
|
+
summary: import("@sinclair/typebox").TString;
|
|
399
|
+
error_code: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
400
|
+
}>>;
|
|
401
|
+
changes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
402
|
+
items: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
403
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"added">, import("@sinclair/typebox").TLiteral<"modified">, import("@sinclair/typebox").TLiteral<"deleted">, import("@sinclair/typebox").TLiteral<"renamed">, import("@sinclair/typebox").TLiteral<"unknown">]>;
|
|
404
|
+
path: import("@sinclair/typebox").TString;
|
|
405
|
+
previous_path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
406
|
+
}>>;
|
|
407
|
+
total_count: import("@sinclair/typebox").TInteger;
|
|
408
|
+
truncated: import("@sinclair/typebox").TBoolean;
|
|
409
|
+
}>>;
|
|
410
|
+
verification: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
411
|
+
checks: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"passed">, import("@sinclair/typebox").TLiteral<"failed">, import("@sinclair/typebox").TLiteral<"skipped">]>;
|
|
412
|
+
skip_reason_code: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
413
|
+
skip_reason_summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
414
|
+
}>>;
|
|
415
|
+
promotion: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
416
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"promoted">, import("@sinclair/typebox").TLiteral<"not_promoted">, import("@sinclair/typebox").TLiteral<"not_attempted">]>;
|
|
417
|
+
commit_oid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
418
|
+
commit_short_oid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
419
|
+
summary: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
420
|
+
reason_code: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
421
|
+
}>>;
|
|
422
|
+
checkpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
423
|
+
counters: import("@sinclair/typebox").TObject<{
|
|
424
|
+
completed: import("@sinclair/typebox").TInteger;
|
|
425
|
+
failed: import("@sinclair/typebox").TInteger;
|
|
426
|
+
remaining: import("@sinclair/typebox").TInteger;
|
|
427
|
+
}>;
|
|
428
|
+
items: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
429
|
+
task_id: import("@sinclair/typebox").TString;
|
|
430
|
+
title: import("@sinclair/typebox").TString;
|
|
431
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"done">, import("@sinclair/typebox").TLiteral<"failed">]>;
|
|
432
|
+
summary: import("@sinclair/typebox").TString;
|
|
433
|
+
}>>;
|
|
434
|
+
generated_files: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
435
|
+
path: import("@sinclair/typebox").TString;
|
|
436
|
+
name: import("@sinclair/typebox").TString;
|
|
437
|
+
}>>>;
|
|
438
|
+
truncated: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
439
|
+
}>>;
|
|
440
|
+
links: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
441
|
+
kind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"worklist_task">, import("@sinclair/typebox").TLiteral<"chat_message">, import("@sinclair/typebox").TLiteral<"reference_file">, import("@sinclair/typebox").TLiteral<"repo_path">]>;
|
|
442
|
+
label: import("@sinclair/typebox").TString;
|
|
443
|
+
task_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
444
|
+
message_id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
445
|
+
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
446
|
+
}>>;
|
|
447
|
+
}>>;
|
|
147
448
|
}>>;
|
|
148
449
|
}>;
|
|
149
450
|
//# sourceMappingURL=project-timeline.d.ts.map
|