Skip to content

Commit f202717

Browse files
committed
chore(sync): snapshot local changes
1 parent 6327b8a commit f202717

5 files changed

Lines changed: 475 additions & 0 deletions

File tree

.refiner/blackboard.json

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
{
2+
"activeIntents": [
3+
{
4+
"agentName": "User CLI",
5+
"toolType": "lint",
6+
"intent": "cotnine",
7+
"timestamp": "2026-06-23T16:07:56.215Z",
8+
"expiresAt": "2026-06-23T16:37:56.215Z",
9+
"projectPath": "C:\\PersonalRepo\\portfolio\\autogen"
10+
}
11+
],
12+
"logs": [
13+
{
14+
"timestamp": "2026-06-23T16:07:56.507Z",
15+
"message": "Found 3 total gaps (Rule: 3, Semantic: 0).",
16+
"projectPath": "C:\\PersonalRepo\\portfolio\\autogen"
17+
},
18+
{
19+
"timestamp": "2026-06-23T16:07:56.215Z",
20+
"message": "Scouting project for prompt: \"cotnine...\"",
21+
"projectPath": "C:\\PersonalRepo\\portfolio\\autogen"
22+
},
23+
{
24+
"timestamp": "2026-06-23T16:07:56.215Z",
25+
"message": "Agent [User CLI] intent: cotnine...",
26+
"projectPath": "C:\\PersonalRepo\\portfolio\\autogen"
27+
},
28+
{
29+
"timestamp": "2026-06-23T16:07:56.213Z",
30+
"message": "MCP Call: lint_prompt",
31+
"projectPath": "C:\\PersonalRepo\\portfolio\\autogen"
32+
},
33+
{
34+
"timestamp": "2026-06-23T14:37:58.126Z",
35+
"message": "Found 3 total gaps (Rule: 3, Semantic: 0).",
36+
"projectPath": "C:\\PersonalRepo\\portfolio\\autogen"
37+
},
38+
{
39+
"timestamp": "2026-06-23T14:37:57.878Z",
40+
"message": "Scouting project for prompt: \"continue¨...\"",
41+
"projectPath": "C:\\PersonalRepo\\portfolio\\autogen"
42+
},
43+
{
44+
"timestamp": "2026-06-23T14:37:57.877Z",
45+
"message": "Agent [User CLI] intent: continue¨...",
46+
"projectPath": "C:\\PersonalRepo\\portfolio\\autogen"
47+
},
48+
{
49+
"timestamp": "2026-06-23T14:37:57.876Z",
50+
"message": "MCP Call: lint_prompt",
51+
"projectPath": "C:\\PersonalRepo\\portfolio\\autogen"
52+
},
53+
{
54+
"timestamp": "2026-06-23T14:26:05.950Z",
55+
"message": "Found 3 total gaps (Rule: 3, Semantic: 0).",
56+
"projectPath": "C:\\PersonalRepo\\portfolio\\autogen"
57+
}
58+
]
59+
}

.refiner/memory.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"patterns":[]}

autogen_dashboard/schemas.py

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,33 @@
88
from maf_starter.orchestration import RunStagePauseKind, SpecialistRole, StageName, StageStatus
99
from maf_starter.routing_types import RouteLane
1010

11+
SDLC_PHASE_ID = Literal[
12+
"understand",
13+
"research",
14+
"analyze",
15+
"plan",
16+
"risk-assessment",
17+
"implement",
18+
"verify",
19+
"review",
20+
"improve",
21+
"document",
22+
"update-memory",
23+
"finished",
24+
]
25+
ExecutionBatch = Literal["discovery", "design", "change", "assurance", "closure"]
26+
PhaseStatus = Literal[
27+
"pending",
28+
"ready",
29+
"running",
30+
"passed",
31+
"failed",
32+
"invalidated",
33+
"rolled-back",
34+
"waiting",
35+
"terminal",
36+
]
37+
1138
ProviderName = Literal[
1239
"ollama",
1340
"openai",
@@ -138,6 +165,84 @@ class StageOutputModel(BaseModel):
138165
raw_output: str | None = None
139166

140167

168+
class SdlcPhaseModel(BaseModel):
169+
id: SDLC_PHASE_ID
170+
name: str
171+
batch: ExecutionBatch
172+
dependencies: list[SDLC_PHASE_ID] = Field(default_factory=list)
173+
verifier: str
174+
required_artifacts: list[str] = Field(default_factory=list)
175+
success_criteria: list[str] = Field(default_factory=list)
176+
rollback_to: SDLC_PHASE_ID | None = None
177+
max_attempts: int | None = None
178+
179+
180+
class SdlcProfileModel(BaseModel):
181+
kind: Literal["SdlcProfile"] = "SdlcProfile"
182+
profile_id: str
183+
profile_version: Literal["v1.1"] = "v1.1"
184+
goal_budget: int
185+
phases: list[SdlcPhaseModel] = Field(default_factory=list)
186+
goal_attempts: int | None = None
187+
iterations: int | None = None
188+
runtime_minutes: int | None = None
189+
model_calls: int | None = None
190+
no_progress_limit: int | None = None
191+
repository_overrides: dict[str, Any] = Field(default_factory=dict)
192+
193+
194+
class PhaseExecutionRequestModel(BaseModel):
195+
kind: Literal["PhaseExecutionRequest"] = "PhaseExecutionRequest"
196+
profile_version: Literal["v1.1"] = "v1.1"
197+
phase: SDLC_PHASE_ID
198+
batch: ExecutionBatch
199+
goal: str
200+
constraints: list[str] = Field(default_factory=list)
201+
validated_inputs: list[str] = Field(default_factory=list)
202+
prior_evidence: list[dict[str, Any]] = Field(default_factory=list)
203+
required_output_schema: str | None = None
204+
required_artifacts: list[str] = Field(default_factory=list)
205+
success_criteria: list[str] = Field(default_factory=list)
206+
verifier: str = ""
207+
failure_behavior: str | None = None
208+
rollback_behavior: str | None = None
209+
memory_candidate_fields: list[str] = Field(default_factory=list)
210+
human_escalation_conditions: list[str] = Field(default_factory=list)
211+
212+
213+
class PhaseExecutionResultModel(BaseModel):
214+
kind: Literal["PhaseExecutionResult"] = "PhaseExecutionResult"
215+
phase: SDLC_PHASE_ID
216+
batch: ExecutionBatch | None = None
217+
status: PhaseStatus
218+
prompt_digest: str
219+
artifacts: list[dict[str, Any]] = Field(default_factory=list)
220+
output: dict[str, Any] = Field(default_factory=dict)
221+
prompt_metadata: dict[str, Any] = Field(default_factory=dict)
222+
sanitized_prompt: str | None = None
223+
verifier: str = ""
224+
checkpoint: str | None = None
225+
226+
227+
class PhaseVerificationResultModel(BaseModel):
228+
kind: Literal["PhaseVerificationResult"] = "PhaseVerificationResult"
229+
phase: SDLC_PHASE_ID
230+
verifier: str
231+
outcome: Literal["passed", "failed", "inconclusive"]
232+
invalidated_phase_ids: list[SDLC_PHASE_ID] = Field(default_factory=list)
233+
evidence: list[dict[str, Any]] = Field(default_factory=list)
234+
reason: str | None = None
235+
236+
237+
class MemoryCandidateRecordModel(BaseModel):
238+
kind: Literal["MemoryCandidateRecord"] = "MemoryCandidateRecord"
239+
phase: SDLC_PHASE_ID
240+
version: str
241+
summary: str
242+
evidence: list[str] = Field(default_factory=list)
243+
created_at: datetime
244+
245+
141246
class StageTimelineEntry(BaseModel):
142247
stage: StageName
143248
status: StageStatus
@@ -240,6 +345,15 @@ class SessionSummary(BaseModel):
240345
workspace_stale_detail: str | None = None
241346
workspace_last_checked_at: datetime | None = None
242347
workspace_drift_fields: list[str] = Field(default_factory=list)
348+
sdlc_profile: SdlcProfileModel | None = None
349+
current_sdlc_phase: SDLC_PHASE_ID | None = None
350+
current_sdlc_batch: ExecutionBatch | None = None
351+
current_sdlc_verifier: str | None = None
352+
current_sdlc_budget: dict[str, Any] = Field(default_factory=dict)
353+
rollback_origin: SDLC_PHASE_ID | None = None
354+
rollback_reason: str | None = None
355+
phase_execution: dict[str, PhaseExecutionResultModel] = Field(default_factory=dict)
356+
phase_verifications: dict[str, PhaseVerificationResultModel] = Field(default_factory=dict)
243357
attempt_count: int = 0
244358
latest_attempt_id: str | None = None
245359
artifact_manifest: dict[str, Any] = Field(default_factory=dict)

0 commit comments

Comments
 (0)