@sireai/optimus 0.1.45 → 0.1.46
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/feedback-delivery.js +13 -8
- package/dist/cli/feedback-delivery.js.map +1 -1
- package/dist/cli/optimus.js +370 -63
- package/dist/cli/optimus.js.map +1 -1
- package/dist/integrations/feishu/feishu-client.d.ts +13 -0
- package/dist/integrations/feishu/feishu-client.js +111 -6
- package/dist/integrations/feishu/feishu-client.js.map +1 -1
- package/dist/integrations/feishu/feishu-reference-material-downloader.d.ts +34 -0
- package/dist/integrations/feishu/feishu-reference-material-downloader.js +572 -0
- package/dist/integrations/feishu/feishu-reference-material-downloader.js.map +1 -0
- package/dist/integrations/feishu/feishu-token-store.d.ts +25 -1
- package/dist/integrations/feishu/feishu-token-store.js +148 -4
- package/dist/integrations/feishu/feishu-token-store.js.map +1 -1
- package/dist/integrations/feishu/feishu-user-auth-service.d.ts +39 -0
- package/dist/integrations/feishu/feishu-user-auth-service.js +228 -0
- package/dist/integrations/feishu/feishu-user-auth-service.js.map +1 -0
- package/dist/integrations/jira/jira-cli.js +127 -19
- package/dist/integrations/jira/jira-cli.js.map +1 -1
- package/dist/task-environment/delivery/commit-message/coder-commit-message-template.d.ts +12 -0
- package/dist/task-environment/delivery/commit-message/coder-commit-message-template.js +105 -0
- package/dist/task-environment/delivery/commit-message/coder-commit-message-template.js.map +1 -0
- package/dist/task-environment/delivery/commit-message/commit-message-builder.js +2 -1
- package/dist/task-environment/delivery/commit-message/commit-message-builder.js.map +1 -1
- package/dist/task-environment/delivery/feishu-analysis-doc-service.d.ts +6 -0
- package/dist/task-environment/delivery/feishu-analysis-doc-service.js +106 -34
- package/dist/task-environment/delivery/feishu-analysis-doc-service.js.map +1 -1
- package/dist/task-environment/delivery/feishu-content/feishu-content-renderer.js +16 -1
- package/dist/task-environment/delivery/feishu-content/feishu-content-renderer.js.map +1 -1
- package/dist/task-environment/delivery/feishu-content/feishu-copy-config.d.ts +6 -0
- package/dist/task-environment/delivery/feishu-content/feishu-copy-config.js +19 -0
- package/dist/task-environment/delivery/feishu-content/feishu-copy-config.js.map +1 -1
- package/dist/task-environment/delivery/feishu-notifier.js +8 -8
- package/dist/task-environment/delivery/feishu-notifier.js.map +1 -1
- package/dist/task-environment/delivery/feishu-templates/coder-message-template.d.ts +6 -0
- package/dist/task-environment/delivery/feishu-templates/coder-message-template.js +58 -0
- package/dist/task-environment/delivery/feishu-templates/coder-message-template.js.map +1 -0
- package/dist/task-environment/delivery/feishu-templates/template-registry.js +2 -0
- package/dist/task-environment/delivery/feishu-templates/template-registry.js.map +1 -1
- package/dist/task-environment/delivery/task-delivery-dispatcher.js +6 -0
- package/dist/task-environment/delivery/task-delivery-dispatcher.js.map +1 -1
- package/dist/task-environment/delivery/task-delivery-service.d.ts +1 -0
- package/dist/task-environment/delivery/task-delivery-service.js +124 -8
- package/dist/task-environment/delivery/task-delivery-service.js.map +1 -1
- package/dist/task-environment/delivery/task-publication-service.js +9 -6
- package/dist/task-environment/delivery/task-publication-service.js.map +1 -1
- package/dist/task-environment/document-input/document-structure.d.ts +13 -0
- package/dist/task-environment/document-input/document-structure.js +438 -0
- package/dist/task-environment/document-input/document-structure.js.map +1 -0
- package/dist/task-environment/intake/manual-problem-intake.js +36 -0
- package/dist/task-environment/intake/manual-problem-intake.js.map +1 -1
- package/dist/task-environment/observability/logger.d.ts +1 -0
- package/dist/task-environment/observability/logger.js +26 -0
- package/dist/task-environment/observability/logger.js.map +1 -1
- package/dist/task-environment/observability/runtime-panel.js +10 -1
- package/dist/task-environment/observability/runtime-panel.js.map +1 -1
- package/dist/task-environment/orchestration/reference-material-relocator.d.ts +2 -0
- package/dist/task-environment/orchestration/reference-material-relocator.js +69 -0
- package/dist/task-environment/orchestration/reference-material-relocator.js.map +1 -0
- package/dist/task-environment/orchestration/task-orchestrator.d.ts +3 -0
- package/dist/task-environment/orchestration/task-orchestrator.js +182 -8
- package/dist/task-environment/orchestration/task-orchestrator.js.map +1 -1
- package/dist/task-environment/orchestration/task-package-inputs.js +7 -1
- package/dist/task-environment/orchestration/task-package-inputs.js.map +1 -1
- package/dist/task-environment/orchestration/task-runtime-policy.js +11 -0
- package/dist/task-environment/orchestration/task-runtime-policy.js.map +1 -1
- package/dist/task-environment/orchestration/triage-runner.js +3 -0
- package/dist/task-environment/orchestration/triage-runner.js.map +1 -1
- package/dist/task-environment/runtime/optimus-runtime.js +3 -0
- package/dist/task-environment/runtime/optimus-runtime.js.map +1 -1
- package/dist/task-environment/storage/sqlite-task-store.d.ts +4 -0
- package/dist/task-environment/storage/sqlite-task-store.js +70 -1
- package/dist/task-environment/storage/sqlite-task-store.js.map +1 -1
- package/dist/task-environment/task-handler-descriptor.d.ts +5 -0
- package/dist/task-environment/task-handler-descriptor.js +15 -0
- package/dist/task-environment/task-handler-descriptor.js.map +1 -0
- package/dist/types.d.ts +47 -1
- package/embedded-skills/shared/feishu-task-inputs/SKILL.md +56 -0
- package/embedded-skills/shared/feishu-task-inputs/scripts/fetch-feishu-doc.mjs +756 -0
- package/embedded-skills/shared/feishu-task-inputs/skill.json +5 -0
- package/package.json +4 -1
- package/task-harnesses/coder/ACCEPT.md +73 -0
- package/task-harnesses/coder/CONSTRAINTS.md +72 -0
- package/task-harnesses/coder/CONTEXT.md +36 -0
- package/task-harnesses/coder/EVOLUTION.md +83 -0
- package/task-harnesses/coder/ROLE.md +39 -0
- package/task-harnesses/coder/STANDARD.md +258 -0
- package/task-harnesses/coder/manifest.json +13 -0
- package/task-harnesses/pm/ACCEPT.md +7 -0
- package/task-harnesses/pm/CONSTRAINTS.md +5 -0
- package/task-harnesses/pm/ROLE.md +5 -4
- package/task-harnesses/pm/STANDARD.md +31 -1
- package/task-harnesses/registry.json +4 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const TASK_HANDLER_LABELS = {
|
|
2
|
+
bugfix: "Bugfix Engineer",
|
|
3
|
+
coder: "Main Implementation Agent",
|
|
4
|
+
pm: "PM Prototype Builder"
|
|
5
|
+
};
|
|
6
|
+
export function resolveTaskHandlerDescriptor(taskType) {
|
|
7
|
+
const normalizedTaskType = typeof taskType === "string" && taskType.trim().length > 0
|
|
8
|
+
? taskType.trim()
|
|
9
|
+
: "unknown";
|
|
10
|
+
return {
|
|
11
|
+
taskType: normalizedTaskType,
|
|
12
|
+
handler: TASK_HANDLER_LABELS[normalizedTaskType] ?? "Task Agent"
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=task-handler-descriptor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-handler-descriptor.js","sourceRoot":"","sources":["../../src/task-environment/task-handler-descriptor.ts"],"names":[],"mappings":"AAKA,MAAM,mBAAmB,GAA2B;IAClD,MAAM,EAAE,iBAAiB;IACzB,KAAK,EAAE,2BAA2B;IAClC,EAAE,EAAE,sBAAsB;CAC3B,CAAC;AAEF,MAAM,UAAU,4BAA4B,CAAC,QAA4B;IACvE,MAAM,kBAAkB,GAAG,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QACnF,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE;QACjB,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO;QACL,QAAQ,EAAE,kBAAkB;QAC5B,OAAO,EAAE,mBAAmB,CAAC,kBAAkB,CAAC,IAAI,YAAY;KACjE,CAAC;AACJ,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -114,6 +114,49 @@ export interface TaskInputReferenceMaterial {
|
|
|
114
114
|
token?: string;
|
|
115
115
|
mimeType?: string;
|
|
116
116
|
sourceType?: string;
|
|
117
|
+
localPath?: string;
|
|
118
|
+
downloadStatus?: "downloaded" | "skipped" | "failed";
|
|
119
|
+
downloadError?: string;
|
|
120
|
+
assetId?: string;
|
|
121
|
+
order?: number;
|
|
122
|
+
anchorHeading?: string;
|
|
123
|
+
sectionPath?: string[];
|
|
124
|
+
nearbyTextBefore?: string;
|
|
125
|
+
nearbyTextAfter?: string;
|
|
126
|
+
}
|
|
127
|
+
export interface TaskInputDocumentMapNode {
|
|
128
|
+
nodeId: string;
|
|
129
|
+
type: "heading" | "paragraph" | "table" | "code" | "image" | "file" | "whiteboard" | "sheet" | "bitable" | "link" | "note" | "divider" | "unknown";
|
|
130
|
+
order: number;
|
|
131
|
+
text?: string;
|
|
132
|
+
title?: string;
|
|
133
|
+
level?: number;
|
|
134
|
+
assetId?: string;
|
|
135
|
+
sectionPath?: string[];
|
|
136
|
+
}
|
|
137
|
+
export interface TaskInputDocumentMap {
|
|
138
|
+
version: "1";
|
|
139
|
+
title?: string;
|
|
140
|
+
sourceUrl?: string;
|
|
141
|
+
nodes: TaskInputDocumentMapNode[];
|
|
142
|
+
}
|
|
143
|
+
export interface TaskInputEvidenceBundle {
|
|
144
|
+
assetId: string;
|
|
145
|
+
type: TaskInputReferenceMaterial["type"];
|
|
146
|
+
title: string;
|
|
147
|
+
order: number;
|
|
148
|
+
nodeId?: string;
|
|
149
|
+
token?: string;
|
|
150
|
+
url?: string;
|
|
151
|
+
mimeType?: string;
|
|
152
|
+
localPath?: string;
|
|
153
|
+
sourceType?: string;
|
|
154
|
+
downloadStatus?: TaskInputReferenceMaterial["downloadStatus"];
|
|
155
|
+
downloadError?: string;
|
|
156
|
+
anchorHeading?: string;
|
|
157
|
+
sectionPath?: string[];
|
|
158
|
+
nearbyTextBefore?: string;
|
|
159
|
+
nearbyTextAfter?: string;
|
|
117
160
|
}
|
|
118
161
|
export type PmTaskInputReferenceMaterial = TaskInputReferenceMaterial;
|
|
119
162
|
export interface PmTaskInput {
|
|
@@ -246,7 +289,7 @@ export interface TaskArtifact {
|
|
|
246
289
|
path: string;
|
|
247
290
|
createdAt: string;
|
|
248
291
|
}
|
|
249
|
-
export type DeliveryOutcome = "analysis_only" | "repair_candidate" | "verified_fix" | "canceled" | "failed";
|
|
292
|
+
export type DeliveryOutcome = "analysis_only" | "repair_candidate" | "verified_fix" | "needs_human" | "canceled" | "failed";
|
|
250
293
|
export type TaskPublicationReviewSystemType = "gerrit" | "github" | "unknown" | "mixed";
|
|
251
294
|
export type TaskPublicationReviewStrategy = "gerrit_change" | "github_pr" | "manual";
|
|
252
295
|
export interface TaskPublicationReviewSystem {
|
|
@@ -335,6 +378,9 @@ export interface TaskDeliveryBundle {
|
|
|
335
378
|
analysisDocUrl?: string;
|
|
336
379
|
prototypePreviewUrl?: string;
|
|
337
380
|
prototypeDownloadUrl?: string;
|
|
381
|
+
reviewStatus?: "approved" | "changes_requested" | "missing";
|
|
382
|
+
reviewVerdict?: string;
|
|
383
|
+
reviewRounds?: number;
|
|
338
384
|
risk?: string;
|
|
339
385
|
nextAction?: string;
|
|
340
386
|
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Feishu Task Inputs
|
|
2
|
+
|
|
3
|
+
Use this skill during agent execution when task content references Feishu doc/wiki material.
|
|
4
|
+
|
|
5
|
+
## Execution Boundary
|
|
6
|
+
|
|
7
|
+
- `submit` may already localize Feishu inputs.
|
|
8
|
+
- execution-time agents use this skill only when required Feishu content is still missing.
|
|
9
|
+
- this skill is for main agents and subagents, not for submit implementation.
|
|
10
|
+
|
|
11
|
+
## Source Priority
|
|
12
|
+
|
|
13
|
+
Prefer existing localized task inputs first:
|
|
14
|
+
|
|
15
|
+
- main task text
|
|
16
|
+
- `referenceMaterials`
|
|
17
|
+
- `documentMap`
|
|
18
|
+
- local attachment paths
|
|
19
|
+
- local image paths
|
|
20
|
+
- evidence bundles generated during submit
|
|
21
|
+
|
|
22
|
+
## Command
|
|
23
|
+
|
|
24
|
+
If required Feishu content is missing from localized inputs, fetch it with:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
node .agents/skills/feishu-task-inputs/scripts/fetch-feishu-doc.mjs \
|
|
28
|
+
--url <feishu-doc-or-wiki-url> \
|
|
29
|
+
--output-dir <artifactDir>/feishu-reference
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Output
|
|
33
|
+
|
|
34
|
+
- `content.md`: rendered document content
|
|
35
|
+
- `manifest.json`: title, source metadata, and localized reference materials
|
|
36
|
+
- `attachments/`: downloaded images and files referenced by the fetched document
|
|
37
|
+
|
|
38
|
+
## Required Behavior
|
|
39
|
+
|
|
40
|
+
- Read local paths first; do not re-fetch when task inputs already contain the needed evidence.
|
|
41
|
+
- Preserve structure with `documentMap`, nearby text, fetched `content.md`, and localized attachments.
|
|
42
|
+
- After running the command, read results from the exact `--output-dir` you chose.
|
|
43
|
+
- If required content still cannot be fetched, stop with `needs_human`.
|
|
44
|
+
|
|
45
|
+
## Do Not Use
|
|
46
|
+
|
|
47
|
+
- local `feishu` CLI
|
|
48
|
+
- local `lark-*` skills
|
|
49
|
+
- user machine auth state outside Optimus
|
|
50
|
+
- raw Feishu URLs as an execution-time dependency
|
|
51
|
+
|
|
52
|
+
## Quick Checks
|
|
53
|
+
|
|
54
|
+
- Confirm every required attachment exists at a local path before relying on it.
|
|
55
|
+
- Keep image-to-text pairing intact when deriving requirements.
|
|
56
|
+
- Cite local artifact paths, not remote Feishu URLs.
|