Propose thesis update
propose_thesis_updateThe task is centered on a saved ticker, thesis, claim, or research review.
When to use it
The task is centered on a saved ticker, thesis, claim, or research review.
Use company context first, then thesis, claims, reviews, and evidence gaps.
Company thesis context, claims, reviews, and evidence health signals.
Avoid using it when
The ticker is not saved in Prism or the task only needs generic market data.
Advanced input contract
Agent hosts use this JSON Schema to validate the exact input shape.
View full registry notes
Create a draft thesis review that records proposed thesis field updates for user approval. Does not update the saved thesis. Keep summary to two or three plain sentences on what changes and why; the user reads it before any edit. Put the reason for each change in that field's rationale, and longer working notes (derivations, model or spreadsheet references, caveats) in rationale entries, which the user can open on request.
View JSON Schema
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"minLength": 1,
"maxLength": 12
},
"companyId": {
"type": "string",
"format": "uuid"
},
"summary": {
"type": "string",
"minLength": 1,
"maxLength": 5000,
"description": "Two or three plain sentences, ideally under 400 characters: what changes and why. Not a place for working notes."
},
"proposedChanges": {
"type": "object",
"properties": {
"thesisFields": {
"type": "array",
"maxItems": 20,
"items": {
"type": "object",
"properties": {
"field": {
"type": "string",
"enum": [
"oneLineThesis",
"bullCase",
"baseCase",
"bearCase",
"convictionLevel",
"thesisStatus",
"nextReviewAt",
"bullTargetPrice",
"baseTargetPrice",
"bearTargetPrice",
"bullProbability",
"baseProbability",
"bearProbability"
],
"description": "Target prices are positive numbers, probabilities are whole percents 0-100, thesisStatus is active|watching|paused|closed, and nextReviewAt is an ISO date. All values are sent as strings."
},
"currentValue": {
"type": [
"string",
"null"
]
},
"proposedValue": {
"type": [
"string",
"null"
]
},
"rationale": {
"type": "string",
"minLength": 1,
"maxLength": 2000
}
},
"required": [
"field",
"currentValue",
"proposedValue",
"rationale"
],
"additionalProperties": false
}
},
"listChanges": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"properties": {
"list": {
"type": "string",
"enum": [
"keyRisks",
"catalysts"
]
},
"op": {
"type": "string",
"enum": [
"add",
"remove"
]
},
"value": {
"type": "string",
"minLength": 1,
"maxLength": 2000
}
},
"required": [
"list",
"op",
"value"
],
"additionalProperties": false
}
},
"agendaItems": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"properties": {
"section": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"question": {
"type": "string",
"minLength": 1,
"maxLength": 2000
}
},
"required": [
"section",
"question"
],
"additionalProperties": false
}
}
},
"required": [
"thesisFields",
"listChanges",
"agendaItems"
],
"additionalProperties": false
},
"proposedUpdates": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "Deprecated compatibility input. Prefer proposedChanges with typed fields, lists, and agenda items."
},
"rationale": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 20,
"description": "Optional working notes, one point per entry (up to 500 characters each): derivations, model or spreadsheet references, caveats. Shown behind the summary."
}
},
"required": [
"summary"
],
"additionalProperties": false
}