fix(app): part type gate

This commit is contained in:
Adam 2026-03-06 09:55:23 -06:00
parent 1d9dcd2a27
commit e0ca52ed1f
No known key found for this signature in database
GPG Key ID: 9CB48779AF150E75

View File

@ -494,7 +494,8 @@ export function AssistantParts(props: {
{(() => {
const parts = createMemo(
() => {
const entry = entryAccessor() as { type: "context"; refs: PartRef[] }
const entry = entryAccessor()
if (entry.type !== "context") return emptyTools
return entry.refs
.map((ref) => partByID(list(data.store.part?.[ref.messageID], emptyParts), ref.partID))
.filter((part): part is ToolPart => !!part && isContextGroupTool(part))
@ -514,11 +515,13 @@ export function AssistantParts(props: {
<Match when={entryType() === "part"}>
{(() => {
const message = createMemo(() => {
const entry = entryAccessor() as { type: "part"; ref: PartRef }
const entry = entryAccessor()
if (entry.type !== "part") return
return props.messages.find((item) => item.id === entry.ref.messageID)
})
const part = createMemo(() => {
const entry = entryAccessor() as { type: "part"; ref: PartRef }
const entry = entryAccessor()
if (entry.type !== "part") return
return partByID(list(data.store.part?.[entry.ref.messageID], emptyParts), entry.ref.partID)
})
@ -711,7 +714,8 @@ export function AssistantMessageDisplay(props: {
{(() => {
const parts = createMemo(
() => {
const entry = entryAccessor() as { type: "context"; refs: PartRef[] }
const entry = entryAccessor()
if (entry.type !== "context") return emptyTools
return entry.refs
.map((ref) => partByID(props.parts, ref.partID))
.filter((part): part is ToolPart => !!part && isContextGroupTool(part))
@ -730,7 +734,8 @@ export function AssistantMessageDisplay(props: {
<Match when={entryType() === "part"}>
{(() => {
const part = createMemo(() => {
const entry = entryAccessor() as { type: "part"; ref: PartRef }
const entry = entryAccessor()
if (entry.type !== "part") return
return partByID(props.parts, entry.ref.partID)
})