Documentation
¶
Index ¶
- func FeatureBranchFor(projectID string) string
- type Engine
- func (e *Engine) CIStatus(ctx context.Context, root string) interface{}
- func (e *Engine) CommitVerified(ctx context.Context, root, message string) (string, error)
- func (e *Engine) Feedback(root, requestID, text, status, credName string) error
- func (e *Engine) InspectChecks(ctx context.Context, root string) ci.Report
- func (e *Engine) NextCredential(root string, names []string) (human.Request, error)
- func (e *Engine) OpenFromPRD(ctx context.Context, prdPath string) (Result, error)
- func (e *Engine) OpenMilestonePR(ctx context.Context, root, title, body string) (vcs.PR, error)
- func (e *Engine) Prepare(ctx context.Context, req Request) (Result, error)
- func (e *Engine) PrepareRepair(ctx context.Context, req Request) (repair.Packet, error)
- func (e *Engine) Reconcile(ctx context.Context, root string) error
- func (e *Engine) RepairRuntime(ctx context.Context, root string) (repair.Packet, apprun.Report, error)
- func (e *Engine) RequestHuman(ctx context.Context, root string, req human.Request) (human.Request, error)
- func (e *Engine) Resume(ctx context.Context, root string) error
- func (e *Engine) Review(ctx context.Context, req Request) (review.Result, error)
- func (e *Engine) Run(ctx context.Context, req Request) (Result, error)
- func (e *Engine) RunGraph(ctx context.Context, req Request) (PhaseResult, error)
- func (e *Engine) RunPhase(ctx context.Context, req Request) (PhaseResult, error)
- func (e *Engine) StartRuntime(ctx context.Context, root string) (apprun.Report, error)
- func (e *Engine) TryMerge(ctx context.Context, root string) (MergeDecision, vcs.MergeResult, error)
- func (e *Engine) Verify(ctx context.Context, req Request) (testeng.Result, error)
- type Execution
- type GitHubBlock
- type MergeDecision
- type Options
- type PhaseResult
- type Request
- type Result
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FeatureBranchFor ¶
Types ¶
type Engine ¶
type Engine struct {
// contains filtered or unexported fields
}
func (*Engine) CommitVerified ¶
func (*Engine) InspectChecks ¶
func (*Engine) NextCredential ¶
func (*Engine) OpenFromPRD ¶
OpenFromPRD is the PRD-only entry: validate, place the Studio project, then prepare. It does not invoke a Cursor worker.
func (*Engine) OpenMilestonePR ¶
func (*Engine) Prepare ¶
Prepare builds a deterministic task packet and Git baseline without invoking a worker.
func (*Engine) PrepareRepair ¶
func (*Engine) Reconcile ¶
Reconcile inspects Git/GitHub reality and repairs persisted delivery state without repeating operations.
func (*Engine) RepairRuntime ¶
func (e *Engine) RepairRuntime(ctx context.Context, root string) (repair.Packet, apprun.Report, error)
RepairRuntime runs bounded runtime repair after a failed local start.
func (*Engine) RequestHuman ¶
func (*Engine) RunGraph ¶
RunGraph walks READY phases sequentially. Each phase uses RunPhase as the inner loop.
func (*Engine) RunPhase ¶
RunPhase is the headless sequential loop for one phase: worker, verify, review, bounded repair.
func (*Engine) StartRuntime ¶
StartRuntime starts the local application after verified project completion.
func (*Engine) TryMerge ¶
func (e *Engine) TryMerge(ctx context.Context, root string) (MergeDecision, vcs.MergeResult, error)
type Execution ¶
type Execution struct {
SchemaVersion int `json:"schema_version"`
RunID string `json:"run_id"`
TaskID string `json:"task_id"`
ProjectID string `json:"project_id"`
PhaseID string `json:"phase_id"`
ProductRoot string `json:"product_root"`
Baseline vcs.Baseline `json:"baseline"`
PacketRef string `json:"packet_ref"`
TranscriptRef string `json:"transcript_ref,omitempty"`
Invoked bool `json:"invoked"`
RefusalReason string `json:"refusal_reason,omitempty"`
ExitCode int `json:"exit_code"`
DurationMS int64 `json:"duration_ms"`
TimedOut bool `json:"timed_out"`
ChangedPaths []string `json:"changed_paths"`
WorkerClaimedSuccess bool `json:"worker_claimed_success"`
ClaimedDone bool `json:"claimed_done"`
VerifiedSuccess bool `json:"verified_success"`
CLIMechanism string `json:"cli_mechanism,omitempty"`
RecordedAt string `json:"recorded_at"`
IncidentID string `json:"incident_id,omitempty"`
RepairAttempt int `json:"repair_attempt,omitempty"`
Subagent string `json:"subagent,omitempty"`
}
Execution is the persisted P4 record.
type GitHubBlock ¶
type GitHubBlock struct {
Operation string `json:"operation"`
Reason string `json:"reason"`
HumanAction string `json:"human_action"`
}
func (GitHubBlock) Error ¶
func (b GitHubBlock) Error() string
type MergeDecision ¶
type Options ¶
type Options struct {
Worker cursor.Worker
Git *vcs.Client
Now func() time.Time
NewID func() string
Timeout time.Duration
TestTimeout time.Duration
AllowSelf bool
PreflightEnv preflight.Env
LookPath func(file string) (string, error)
ProcRunner *proc.Runner
Config config.Config
LLM llm.Adapter
RepairWorker cursor.Worker
GH *vcs.GHClient
CI *ci.Watcher
Bell *notify.Bell
SkipWait bool
Cwd string
Home string
Runtime apprun.Starter
}
Options injects P4 dependencies. This is not the full orchestration engine.