deepseek-ai/deepseek-harness · error · Error
goal message source is invalid
Error message
goal message source is invalid
What it means
Error "goal message source is invalid" thrown in deepseek-ai/deepseek-harness.
Source
Thrown at packages/goal/goal/src/fold.ts:180
if (updatedAt < createdAt) throw new Error('goal change updatedAt cannot precede createdAt')
return {
kind: 'goal/change',
version: GOAL_CHANGE_VERSION,
operation: value['operation'] as Exclude<GoalOperation, 'clear'>,
goal: decodeSnapshot(value['goal']),
roundsStarted: nonNegativeInteger(value['roundsStarted'], 'roundsStarted'),
createdAt,
updatedAt,
} satisfies GoalSnapshotChangeMeta
}
/** Narrow model attribution to a valid goal source. */
function goalSource(source: MessageSource): GoalMessageSource | undefined {
if (source.kind !== 'goal') return undefined
if (typeof source.goalId !== 'string' || source.goalId.length === 0
|| !Number.isSafeInteger(source.revision) || source.revision < 1
|| !Number.isSafeInteger(source.round) || source.round < 1) {
throw new Error('goal message source is invalid')
}
return source
}
/** Require two snapshots to retain fields that only `edit` may replace. */
function requireSameDefinition(current: GoalSnapshot, next: GoalSnapshot, operation: GoalOperation): void {
if (next.objective !== current.objective || next.maxGoalRounds !== current.maxGoalRounds) {
throw new Error(`goal ${operation} cannot change objective or maxGoalRounds`)
}
}
/** Require one exact next revision of the current goal. */
function requireNextRevision(current: GoalSnapshot, next: GoalRef, operation: GoalOperation): void {
if (next.id !== current.id || next.revision !== current.revision + 1) {
throw new Error(`goal ${operation} must advance the current goal by one revision`)
}
}
View on GitHub (pinned to b150a551b8)
When it happens
Trigger: Thrown at packages/goal/goal/src/fold.ts:180 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of deepseek-ai/deepseek-harness@b150a551b8 (2026-08-24).
Data as JSON: /api/errors/e96c5f1d351ffe9b.
Report an issue: GitHub.