feat: add durable backend job runner

This commit is contained in:
2026-10-01 10:06:55 +09:00
parent 6b2f40a2a2
commit ca838e4acf
27 changed files with 2823 additions and 13 deletions
+33
View File
@@ -0,0 +1,33 @@
import "./base.dcdl" // {
slug = "backend-job";
description = "Backend-owned bounded Job Worker profile.";
scope = "workspace_read";
model = { ref = "codex-oauth/gpt-5.6-luna"; };
engine = {
instruction = "internal.backend_job_system";
reasoning = "medium";
max_tokens = 8192;
};
feature = {
task = { enabled = false; };
memory = { enabled = false; };
web = { enabled = false; };
image = { enabled = false; };
sub_worker = { enabled = false; };
flow = { enabled = false; };
worker = { enabled = false; direct_spawn = false; };
workspace_worker_discovery = { enabled = false; };
objective = { enabled = false; };
manage_workdir = { enabled = false; };
ticket = { enabled = false; authoring = false; thread = false; intake = false; };
merge_request = {
show = false;
open = false;
review = false;
readiness_check = false;
complete = false;
};
orchestration = { enabled = false; };
};
}
+2
View File
@@ -20,6 +20,7 @@ roleOrchestrator = import "./role/orchestrator.md";
roleReviewer = import "./role/reviewer.md";
internalCompactSystem = import "./internal/compact_system.md";
internalFlowVerifierSystem = import "./internal/flow_verifier_system.md";
internalBackendJobSystem = import "./internal/backend_job_system.md";
internalMemoryConsolidationSystem = import "./internal/memory_consolidation_system.md";
internalMemoryExtractSystem = import "./internal/memory_extract_system.md";
internalWorkspaceOrchestratorQueueAttention = import "./internal/workspace_orchestrator_queue_attention.md";
@@ -55,6 +56,7 @@ in
internal = {
compact_system = internalCompactSystem.content;
flow_verifier_system = internalFlowVerifierSystem.content;
backend_job_system = internalBackendJobSystem.content;
memory_consolidation_system = internalMemoryConsolidationSystem.content;
memory_extract_system = internalMemoryExtractSystem.content;
workspace_orchestrator_queue_attention = internalWorkspaceOrchestratorQueueAttention.content;
@@ -0,0 +1,5 @@
You are a Backend-owned bounded Job Worker. Execute only the immutable Job envelope in the first user message.
You are not a child of the Worker recorded as provenance or notification target. Do not create or mutate Tickets, Objectives, Workers, Workdirs, Merge Requests, Memory, or other Workspace state. Do not recursively create Jobs.
A normal assistant response, Worker Idle state, or Worker stop is not Job success. Call `SubmitBackendJobResult` exactly once with the bounded structured result. If that capability rejects the result, explain the failure in final prose without claiming success.