@cleocode/mcp-server 0.86.0
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/LICENSE +21 -0
- package/README.md +306 -0
- package/dist/domains/index.d.ts +16 -0
- package/dist/domains/index.d.ts.map +1 -0
- package/dist/domains/index.js +16 -0
- package/dist/domains/index.js.map +1 -0
- package/dist/domains/lifecycle.d.ts +147 -0
- package/dist/domains/lifecycle.d.ts.map +1 -0
- package/dist/domains/lifecycle.js +452 -0
- package/dist/domains/lifecycle.js.map +1 -0
- package/dist/domains/orchestrate.d.ts +133 -0
- package/dist/domains/orchestrate.d.ts.map +1 -0
- package/dist/domains/orchestrate.js +465 -0
- package/dist/domains/orchestrate.js.map +1 -0
- package/dist/domains/release.d.ts +109 -0
- package/dist/domains/release.d.ts.map +1 -0
- package/dist/domains/release.js +400 -0
- package/dist/domains/release.js.map +1 -0
- package/dist/domains/research.d.ts +139 -0
- package/dist/domains/research.d.ts.map +1 -0
- package/dist/domains/research.js +606 -0
- package/dist/domains/research.js.map +1 -0
- package/dist/domains/session.d.ts +129 -0
- package/dist/domains/session.d.ts.map +1 -0
- package/dist/domains/session.js +433 -0
- package/dist/domains/session.js.map +1 -0
- package/dist/domains/system.d.ts +92 -0
- package/dist/domains/system.d.ts.map +1 -0
- package/dist/domains/system.js +473 -0
- package/dist/domains/system.js.map +1 -0
- package/dist/domains/tasks.d.ts +180 -0
- package/dist/domains/tasks.d.ts.map +1 -0
- package/dist/domains/tasks.js +704 -0
- package/dist/domains/tasks.js.map +1 -0
- package/dist/domains/validate.d.ts +150 -0
- package/dist/domains/validate.d.ts.map +1 -0
- package/dist/domains/validate.js +568 -0
- package/dist/domains/validate.js.map +1 -0
- package/dist/gateways/mutate.d.ts +100 -0
- package/dist/gateways/mutate.d.ts.map +1 -0
- package/dist/gateways/mutate.js +937 -0
- package/dist/gateways/mutate.js.map +1 -0
- package/dist/gateways/query.d.ts +91 -0
- package/dist/gateways/query.d.ts.map +1 -0
- package/dist/gateways/query.js +245 -0
- package/dist/gateways/query.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +299 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/audit.d.ts +118 -0
- package/dist/lib/audit.d.ts.map +1 -0
- package/dist/lib/audit.js +311 -0
- package/dist/lib/audit.js.map +1 -0
- package/dist/lib/background-jobs.d.ts +86 -0
- package/dist/lib/background-jobs.d.ts.map +1 -0
- package/dist/lib/background-jobs.js +183 -0
- package/dist/lib/background-jobs.js.map +1 -0
- package/dist/lib/cache.d.ts +78 -0
- package/dist/lib/cache.d.ts.map +1 -0
- package/dist/lib/cache.js +204 -0
- package/dist/lib/cache.js.map +1 -0
- package/dist/lib/command-builder.d.ts +52 -0
- package/dist/lib/command-builder.d.ts.map +1 -0
- package/dist/lib/command-builder.js +280 -0
- package/dist/lib/command-builder.js.map +1 -0
- package/dist/lib/config.d.ts +42 -0
- package/dist/lib/config.d.ts.map +1 -0
- package/dist/lib/config.js +248 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/defaults.d.ts +115 -0
- package/dist/lib/defaults.d.ts.map +1 -0
- package/dist/lib/defaults.js +61 -0
- package/dist/lib/defaults.js.map +1 -0
- package/dist/lib/error-handler.d.ts +101 -0
- package/dist/lib/error-handler.d.ts.map +1 -0
- package/dist/lib/error-handler.js +277 -0
- package/dist/lib/error-handler.js.map +1 -0
- package/dist/lib/executor.d.ts +110 -0
- package/dist/lib/executor.d.ts.map +1 -0
- package/dist/lib/executor.js +362 -0
- package/dist/lib/executor.js.map +1 -0
- package/dist/lib/exit-codes.d.ts +190 -0
- package/dist/lib/exit-codes.d.ts.map +1 -0
- package/dist/lib/exit-codes.js +1027 -0
- package/dist/lib/exit-codes.js.map +1 -0
- package/dist/lib/formatter.d.ts +196 -0
- package/dist/lib/formatter.d.ts.map +1 -0
- package/dist/lib/formatter.js +260 -0
- package/dist/lib/formatter.js.map +1 -0
- package/dist/lib/gate-validators.d.ts +103 -0
- package/dist/lib/gate-validators.d.ts.map +1 -0
- package/dist/lib/gate-validators.js +689 -0
- package/dist/lib/gate-validators.js.map +1 -0
- package/dist/lib/manifest-parser.d.ts +61 -0
- package/dist/lib/manifest-parser.d.ts.map +1 -0
- package/dist/lib/manifest-parser.js +338 -0
- package/dist/lib/manifest-parser.js.map +1 -0
- package/dist/lib/manifest.d.ts +177 -0
- package/dist/lib/manifest.d.ts.map +1 -0
- package/dist/lib/manifest.js +301 -0
- package/dist/lib/manifest.js.map +1 -0
- package/dist/lib/protocol-enforcement.d.ts +105 -0
- package/dist/lib/protocol-enforcement.d.ts.map +1 -0
- package/dist/lib/protocol-enforcement.js +331 -0
- package/dist/lib/protocol-enforcement.js.map +1 -0
- package/dist/lib/protocol-rules.d.ts +55 -0
- package/dist/lib/protocol-rules.d.ts.map +1 -0
- package/dist/lib/protocol-rules.js +760 -0
- package/dist/lib/protocol-rules.js.map +1 -0
- package/dist/lib/rate-limiter.d.ts +110 -0
- package/dist/lib/rate-limiter.d.ts.map +1 -0
- package/dist/lib/rate-limiter.js +208 -0
- package/dist/lib/rate-limiter.js.map +1 -0
- package/dist/lib/router.d.ts +126 -0
- package/dist/lib/router.d.ts.map +1 -0
- package/dist/lib/router.js +276 -0
- package/dist/lib/router.js.map +1 -0
- package/dist/lib/schema.d.ts +55 -0
- package/dist/lib/schema.d.ts.map +1 -0
- package/dist/lib/schema.js +70 -0
- package/dist/lib/schema.js.map +1 -0
- package/dist/lib/security.d.ts +156 -0
- package/dist/lib/security.d.ts.map +1 -0
- package/dist/lib/security.js +347 -0
- package/dist/lib/security.js.map +1 -0
- package/dist/lib/verification-gates.d.ts +287 -0
- package/dist/lib/verification-gates.d.ts.map +1 -0
- package/dist/lib/verification-gates.js +548 -0
- package/dist/lib/verification-gates.js.map +1 -0
- package/dist/types/domain.d.ts +29 -0
- package/dist/types/domain.d.ts.map +1 -0
- package/dist/types/domain.js +7 -0
- package/dist/types/domain.js.map +1 -0
- package/dist/types/error.d.ts +101 -0
- package/dist/types/error.d.ts.map +1 -0
- package/dist/types/error.js +61 -0
- package/dist/types/error.js.map +1 -0
- package/dist/types/gateway.d.ts +78 -0
- package/dist/types/gateway.d.ts.map +1 -0
- package/dist/types/gateway.js +7 -0
- package/dist/types/gateway.js.map +1 -0
- package/dist/types/index.d.ts +21 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +11 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/operations/lifecycle.d.ts +140 -0
- package/dist/types/operations/lifecycle.d.ts.map +1 -0
- package/dist/types/operations/lifecycle.js +8 -0
- package/dist/types/operations/lifecycle.js.map +1 -0
- package/dist/types/operations/orchestrate.d.ts +140 -0
- package/dist/types/operations/orchestrate.d.ts.map +1 -0
- package/dist/types/operations/orchestrate.js +8 -0
- package/dist/types/operations/orchestrate.js.map +1 -0
- package/dist/types/operations/release.d.ts +97 -0
- package/dist/types/operations/release.d.ts.map +1 -0
- package/dist/types/operations/release.js +7 -0
- package/dist/types/operations/release.js.map +1 -0
- package/dist/types/operations/research.d.ts +122 -0
- package/dist/types/operations/research.d.ts.map +1 -0
- package/dist/types/operations/research.js +8 -0
- package/dist/types/operations/research.js.map +1 -0
- package/dist/types/operations/session.d.ts +108 -0
- package/dist/types/operations/session.d.ts.map +1 -0
- package/dist/types/operations/session.js +8 -0
- package/dist/types/operations/session.js.map +1 -0
- package/dist/types/operations/system.d.ts +147 -0
- package/dist/types/operations/system.d.ts.map +1 -0
- package/dist/types/operations/system.js +8 -0
- package/dist/types/operations/system.js.map +1 -0
- package/dist/types/operations/tasks.d.ts +186 -0
- package/dist/types/operations/tasks.d.ts.map +1 -0
- package/dist/types/operations/tasks.js +8 -0
- package/dist/types/operations/tasks.js.map +1 -0
- package/dist/types/operations/validate.d.ts +170 -0
- package/dist/types/operations/validate.d.ts.map +1 -0
- package/dist/types/operations/validate.js +8 -0
- package/dist/types/operations/validate.js.map +1 -0
- package/package.json +67 -0
- package/schemas/IMPLEMENTATION-SUMMARY.md +250 -0
- package/schemas/README.md +284 -0
- package/schemas/common/error.schema.json +54 -0
- package/schemas/common/meta.schema.json +39 -0
- package/schemas/common/pagination.schema.json +32 -0
- package/schemas/index.json +159 -0
- package/schemas/requests/lifecycle/check.schema.json +20 -0
- package/schemas/requests/lifecycle/gate.fail.schema.json +25 -0
- package/schemas/requests/lifecycle/gate.pass.schema.json +28 -0
- package/schemas/requests/lifecycle/gates.schema.json +15 -0
- package/schemas/requests/lifecycle/history.schema.json +15 -0
- package/schemas/requests/lifecycle/prerequisites.schema.json +15 -0
- package/schemas/requests/lifecycle/progress.schema.json +29 -0
- package/schemas/requests/lifecycle/reset.schema.json +25 -0
- package/schemas/requests/lifecycle/skip.schema.json +25 -0
- package/schemas/requests/lifecycle/status.schema.json +23 -0
- package/schemas/requests/orchestrate/analyze.schema.json +15 -0
- package/schemas/requests/orchestrate/context.schema.json +13 -0
- package/schemas/requests/orchestrate/next.schema.json +15 -0
- package/schemas/requests/orchestrate/parallel.end.schema.json +20 -0
- package/schemas/requests/orchestrate/parallel.start.schema.json +20 -0
- package/schemas/requests/orchestrate/ready.schema.json +15 -0
- package/schemas/requests/orchestrate/skill.list.schema.json +13 -0
- package/schemas/requests/orchestrate/spawn.schema.json +25 -0
- package/schemas/requests/orchestrate/startup.schema.json +15 -0
- package/schemas/requests/orchestrate/status.schema.json +15 -0
- package/schemas/requests/orchestrate/validate.schema.json +15 -0
- package/schemas/requests/orchestrate/waves.schema.json +15 -0
- package/schemas/requests/release/changelog.schema.json +23 -0
- package/schemas/requests/release/commit.schema.json +22 -0
- package/schemas/requests/release/gates.run.schema.json +17 -0
- package/schemas/requests/release/prepare.schema.json +20 -0
- package/schemas/requests/release/push.schema.json +20 -0
- package/schemas/requests/release/rollback.schema.json +20 -0
- package/schemas/requests/release/tag.schema.json +19 -0
- package/schemas/requests/research/inject.schema.json +24 -0
- package/schemas/requests/research/link.schema.json +25 -0
- package/schemas/requests/research/list.schema.json +19 -0
- package/schemas/requests/research/manifest.append.schema.json +20 -0
- package/schemas/requests/research/manifest.archive.schema.json +19 -0
- package/schemas/requests/research/manifest.read.schema.json +21 -0
- package/schemas/requests/research/pending.schema.json +14 -0
- package/schemas/requests/research/query.schema.json +21 -0
- package/schemas/requests/research/show.schema.json +14 -0
- package/schemas/requests/research/stats.schema.json +14 -0
- package/schemas/requests/session/end.schema.json +13 -0
- package/schemas/requests/session/focus.clear.schema.json +7 -0
- package/schemas/requests/session/focus.get.schema.json +7 -0
- package/schemas/requests/session/focus.set.schema.json +15 -0
- package/schemas/requests/session/gc.schema.json +14 -0
- package/schemas/requests/session/history.schema.json +16 -0
- package/schemas/requests/session/list.schema.json +13 -0
- package/schemas/requests/session/resume.schema.json +14 -0
- package/schemas/requests/session/show.schema.json +14 -0
- package/schemas/requests/session/start.schema.json +23 -0
- package/schemas/requests/session/status.schema.json +7 -0
- package/schemas/requests/session/suspend.schema.json +13 -0
- package/schemas/requests/system/backup.schema.json +19 -0
- package/schemas/requests/system/cleanup.schema.json +20 -0
- package/schemas/requests/system/config.get.schema.json +14 -0
- package/schemas/requests/system/config.set.schema.json +24 -0
- package/schemas/requests/system/context.schema.json +7 -0
- package/schemas/requests/system/doctor.schema.json +7 -0
- package/schemas/requests/system/init.schema.json +18 -0
- package/schemas/requests/system/migrate.schema.json +19 -0
- package/schemas/requests/system/restore.schema.json +14 -0
- package/schemas/requests/system/stats.schema.json +7 -0
- package/schemas/requests/system/sync.schema.json +15 -0
- package/schemas/requests/system/version.schema.json +7 -0
- package/schemas/requests/tasks/analyze.schema.json +14 -0
- package/schemas/requests/tasks/archive.schema.json +19 -0
- package/schemas/requests/tasks/blockers.schema.json +15 -0
- package/schemas/requests/tasks/complete.schema.json +24 -0
- package/schemas/requests/tasks/create.schema.json +48 -0
- package/schemas/requests/tasks/delete.schema.json +20 -0
- package/schemas/requests/tasks/deps.schema.json +21 -0
- package/schemas/requests/tasks/exists.schema.json +15 -0
- package/schemas/requests/tasks/find.schema.json +22 -0
- package/schemas/requests/tasks/get.schema.json +15 -0
- package/schemas/requests/tasks/list.schema.json +26 -0
- package/schemas/requests/tasks/next.schema.json +21 -0
- package/schemas/requests/tasks/promote.schema.json +15 -0
- package/schemas/requests/tasks/reopen.schema.json +15 -0
- package/schemas/requests/tasks/reorder.schema.json +20 -0
- package/schemas/requests/tasks/reparent.schema.json +20 -0
- package/schemas/requests/tasks/tree.schema.json +21 -0
- package/schemas/requests/tasks/unarchive.schema.json +15 -0
- package/schemas/requests/tasks/update.schema.json +41 -0
- package/schemas/requests/validate/compliance.record.schema.json +20 -0
- package/schemas/requests/validate/compliance.summary.schema.json +18 -0
- package/schemas/requests/validate/compliance.violations.schema.json +19 -0
- package/schemas/requests/validate/manifest.schema.json +23 -0
- package/schemas/requests/validate/output.schema.json +19 -0
- package/schemas/requests/validate/protocol.schema.json +20 -0
- package/schemas/requests/validate/schema.schema.json +19 -0
- package/schemas/requests/validate/task.schema.json +21 -0
- package/schemas/requests/validate/test.coverage.schema.json +14 -0
- package/schemas/requests/validate/test.run.schema.json +22 -0
- package/schemas/requests/validate/test.status.schema.json +14 -0
- package/schemas/responses/common-error.schema.json +20 -0
- package/schemas/responses/common-success.schema.json +21 -0
- package/schemas/responses/lifecycle/check.schema.json +18 -0
- package/schemas/responses/lifecycle/gate.fail.schema.json +18 -0
- package/schemas/responses/lifecycle/gate.pass.schema.json +18 -0
- package/schemas/responses/lifecycle/gates.schema.json +18 -0
- package/schemas/responses/lifecycle/history.schema.json +18 -0
- package/schemas/responses/lifecycle/prerequisites.schema.json +18 -0
- package/schemas/responses/lifecycle/progress.schema.json +18 -0
- package/schemas/responses/lifecycle/reset.schema.json +18 -0
- package/schemas/responses/lifecycle/skip.schema.json +18 -0
- package/schemas/responses/lifecycle/status.schema.json +18 -0
- package/schemas/responses/orchestrate/analyze.schema.json +18 -0
- package/schemas/responses/orchestrate/context.schema.json +18 -0
- package/schemas/responses/orchestrate/next.schema.json +18 -0
- package/schemas/responses/orchestrate/parallel.end.schema.json +18 -0
- package/schemas/responses/orchestrate/parallel.start.schema.json +18 -0
- package/schemas/responses/orchestrate/ready.schema.json +18 -0
- package/schemas/responses/orchestrate/skill.list.schema.json +18 -0
- package/schemas/responses/orchestrate/spawn.schema.json +18 -0
- package/schemas/responses/orchestrate/startup.schema.json +18 -0
- package/schemas/responses/orchestrate/status.schema.json +18 -0
- package/schemas/responses/orchestrate/validate.schema.json +18 -0
- package/schemas/responses/orchestrate/waves.schema.json +18 -0
- package/schemas/responses/release/changelog.schema.json +18 -0
- package/schemas/responses/release/commit.schema.json +18 -0
- package/schemas/responses/release/gates.run.schema.json +18 -0
- package/schemas/responses/release/prepare.schema.json +18 -0
- package/schemas/responses/release/push.schema.json +18 -0
- package/schemas/responses/release/rollback.schema.json +18 -0
- package/schemas/responses/release/tag.schema.json +18 -0
- package/schemas/responses/research/inject.schema.json +18 -0
- package/schemas/responses/research/link.schema.json +18 -0
- package/schemas/responses/research/list.schema.json +18 -0
- package/schemas/responses/research/manifest.append.schema.json +18 -0
- package/schemas/responses/research/manifest.archive.schema.json +18 -0
- package/schemas/responses/research/manifest.read.schema.json +18 -0
- package/schemas/responses/research/pending.schema.json +18 -0
- package/schemas/responses/research/query.schema.json +18 -0
- package/schemas/responses/research/show.schema.json +18 -0
- package/schemas/responses/research/stats.schema.json +18 -0
- package/schemas/responses/session/end.schema.json +18 -0
- package/schemas/responses/session/focus.clear.schema.json +18 -0
- package/schemas/responses/session/focus.get.schema.json +18 -0
- package/schemas/responses/session/focus.set.schema.json +18 -0
- package/schemas/responses/session/gc.schema.json +18 -0
- package/schemas/responses/session/history.schema.json +18 -0
- package/schemas/responses/session/list.schema.json +18 -0
- package/schemas/responses/session/resume.schema.json +18 -0
- package/schemas/responses/session/show.schema.json +18 -0
- package/schemas/responses/session/start.schema.json +18 -0
- package/schemas/responses/session/status.schema.json +18 -0
- package/schemas/responses/session/suspend.schema.json +18 -0
- package/schemas/responses/system/backup.schema.json +18 -0
- package/schemas/responses/system/cleanup.schema.json +18 -0
- package/schemas/responses/system/config.get.schema.json +18 -0
- package/schemas/responses/system/config.set.schema.json +18 -0
- package/schemas/responses/system/context.schema.json +18 -0
- package/schemas/responses/system/doctor.schema.json +18 -0
- package/schemas/responses/system/init.schema.json +18 -0
- package/schemas/responses/system/migrate.schema.json +18 -0
- package/schemas/responses/system/restore.schema.json +18 -0
- package/schemas/responses/system/stats.schema.json +18 -0
- package/schemas/responses/system/sync.schema.json +18 -0
- package/schemas/responses/system/version.schema.json +18 -0
- package/schemas/responses/tasks/analyze.schema.json +18 -0
- package/schemas/responses/tasks/archive.schema.json +18 -0
- package/schemas/responses/tasks/blockers.schema.json +18 -0
- package/schemas/responses/tasks/complete.schema.json +18 -0
- package/schemas/responses/tasks/create.schema.json +18 -0
- package/schemas/responses/tasks/delete.schema.json +18 -0
- package/schemas/responses/tasks/deps.schema.json +18 -0
- package/schemas/responses/tasks/exists.schema.json +18 -0
- package/schemas/responses/tasks/find.schema.json +18 -0
- package/schemas/responses/tasks/get.schema.json +87 -0
- package/schemas/responses/tasks/list.schema.json +18 -0
- package/schemas/responses/tasks/next.schema.json +18 -0
- package/schemas/responses/tasks/promote.schema.json +18 -0
- package/schemas/responses/tasks/reopen.schema.json +18 -0
- package/schemas/responses/tasks/reorder.schema.json +18 -0
- package/schemas/responses/tasks/reparent.schema.json +18 -0
- package/schemas/responses/tasks/tree.schema.json +18 -0
- package/schemas/responses/tasks/unarchive.schema.json +18 -0
- package/schemas/responses/tasks/update.schema.json +18 -0
- package/schemas/responses/validate/compliance.record.schema.json +18 -0
- package/schemas/responses/validate/compliance.summary.schema.json +18 -0
- package/schemas/responses/validate/compliance.violations.schema.json +18 -0
- package/schemas/responses/validate/manifest.schema.json +18 -0
- package/schemas/responses/validate/output.schema.json +18 -0
- package/schemas/responses/validate/protocol.schema.json +18 -0
- package/schemas/responses/validate/schema.schema.json +18 -0
- package/schemas/responses/validate/task.schema.json +18 -0
- package/schemas/responses/validate/test.coverage.schema.json +18 -0
- package/schemas/responses/validate/test.run.schema.json +18 -0
- package/schemas/responses/validate/test.status.schema.json +18 -0
- package/server.json +53 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gate-validators.js","sourceRoot":"","sources":["../../src/lib/gate-validators.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Manifest Parser Utilities
|
|
3
|
+
*
|
|
4
|
+
* Low-level parsing and validation functions for MANIFEST.jsonl entries.
|
|
5
|
+
* Used by ManifestReader for line-by-line processing.
|
|
6
|
+
*
|
|
7
|
+
* @task T2919
|
|
8
|
+
*/
|
|
9
|
+
import type { ManifestEntry, ManifestValidation } from './manifest.js';
|
|
10
|
+
/**
|
|
11
|
+
* Parse single JSONL line into ManifestEntry
|
|
12
|
+
*
|
|
13
|
+
* Attempts to parse a line from MANIFEST.jsonl into a structured entry.
|
|
14
|
+
* Throws on invalid JSON or returns partial entry on parsing errors.
|
|
15
|
+
*
|
|
16
|
+
* @param line - Single line from JSONL file
|
|
17
|
+
* @returns Parsed manifest entry
|
|
18
|
+
* @throws Error if JSON is invalid
|
|
19
|
+
*/
|
|
20
|
+
export declare function parseManifestLine(line: string): ManifestEntry;
|
|
21
|
+
/**
|
|
22
|
+
* Validate entry format and required fields
|
|
23
|
+
*
|
|
24
|
+
* Performs comprehensive validation of manifest entry structure,
|
|
25
|
+
* required fields, and data constraints.
|
|
26
|
+
*
|
|
27
|
+
* @param entry - Manifest entry to validate
|
|
28
|
+
* @returns Validation result with detailed errors
|
|
29
|
+
*/
|
|
30
|
+
export declare function validateEntry(entry: ManifestEntry): ManifestValidation;
|
|
31
|
+
/**
|
|
32
|
+
* Serialize manifest entry to JSONL format
|
|
33
|
+
*
|
|
34
|
+
* Converts ManifestEntry to compact single-line JSON suitable for
|
|
35
|
+
* appending to MANIFEST.jsonl file.
|
|
36
|
+
*
|
|
37
|
+
* @param entry - Manifest entry to serialize
|
|
38
|
+
* @returns Single-line JSON string
|
|
39
|
+
*/
|
|
40
|
+
export declare function serializeEntry(entry: ManifestEntry): string;
|
|
41
|
+
/**
|
|
42
|
+
* Extract task ID from entry ID
|
|
43
|
+
*
|
|
44
|
+
* Extracts the task ID prefix from a manifest entry ID.
|
|
45
|
+
* Example: "T2919-manifest-integration" → "T2919"
|
|
46
|
+
*
|
|
47
|
+
* @param entryId - Entry ID (T####-slug format)
|
|
48
|
+
* @returns Task ID or null if invalid format
|
|
49
|
+
*/
|
|
50
|
+
export declare function extractTaskId(entryId: string): string | null;
|
|
51
|
+
/**
|
|
52
|
+
* Check if entry needs followup
|
|
53
|
+
*
|
|
54
|
+
* Determines if a manifest entry requires follow-up actions based
|
|
55
|
+
* on status and needs_followup field.
|
|
56
|
+
*
|
|
57
|
+
* @param entry - Manifest entry to check
|
|
58
|
+
* @returns True if entry needs followup
|
|
59
|
+
*/
|
|
60
|
+
export declare function needsFollowup(entry: ManifestEntry): boolean;
|
|
61
|
+
//# sourceMappingURL=manifest-parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest-parser.d.ts","sourceRoot":"","sources":["../../src/lib/manifest-parser.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEvE;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAmB7D;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,kBAAkB,CAkPtE;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAa3D;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG5D;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAK3D"}
|
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Manifest Parser Utilities
|
|
3
|
+
*
|
|
4
|
+
* Low-level parsing and validation functions for MANIFEST.jsonl entries.
|
|
5
|
+
* Used by ManifestReader for line-by-line processing.
|
|
6
|
+
*
|
|
7
|
+
* @task T2919
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Parse single JSONL line into ManifestEntry
|
|
11
|
+
*
|
|
12
|
+
* Attempts to parse a line from MANIFEST.jsonl into a structured entry.
|
|
13
|
+
* Throws on invalid JSON or returns partial entry on parsing errors.
|
|
14
|
+
*
|
|
15
|
+
* @param line - Single line from JSONL file
|
|
16
|
+
* @returns Parsed manifest entry
|
|
17
|
+
* @throws Error if JSON is invalid
|
|
18
|
+
*/
|
|
19
|
+
export function parseManifestLine(line) {
|
|
20
|
+
const trimmed = line.trim();
|
|
21
|
+
if (!trimmed) {
|
|
22
|
+
throw new Error('Empty line');
|
|
23
|
+
}
|
|
24
|
+
try {
|
|
25
|
+
const parsed = JSON.parse(trimmed);
|
|
26
|
+
// Basic structure check
|
|
27
|
+
if (typeof parsed !== 'object' || parsed === null) {
|
|
28
|
+
throw new Error('Entry must be an object');
|
|
29
|
+
}
|
|
30
|
+
return parsed;
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
throw new Error(`Invalid JSON: ${error instanceof Error ? error.message : String(error)}`);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Validate entry format and required fields
|
|
38
|
+
*
|
|
39
|
+
* Performs comprehensive validation of manifest entry structure,
|
|
40
|
+
* required fields, and data constraints.
|
|
41
|
+
*
|
|
42
|
+
* @param entry - Manifest entry to validate
|
|
43
|
+
* @returns Validation result with detailed errors
|
|
44
|
+
*/
|
|
45
|
+
export function validateEntry(entry) {
|
|
46
|
+
const errors = [];
|
|
47
|
+
// === Required Fields ===
|
|
48
|
+
// ID validation
|
|
49
|
+
if (!entry.id) {
|
|
50
|
+
errors.push({ field: 'id', message: 'id is required', severity: 'error' });
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
// ID format: T####-slug
|
|
54
|
+
if (!/^T\d{3,}-[a-z0-9-]+$/.test(entry.id)) {
|
|
55
|
+
errors.push({
|
|
56
|
+
field: 'id',
|
|
57
|
+
message: 'id must match pattern T####-slug (e.g., T2919-manifest-integration)',
|
|
58
|
+
severity: 'error',
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
// File validation
|
|
63
|
+
if (!entry.file) {
|
|
64
|
+
errors.push({ field: 'file', message: 'file is required', severity: 'error' });
|
|
65
|
+
}
|
|
66
|
+
else if (typeof entry.file !== 'string') {
|
|
67
|
+
errors.push({ field: 'file', message: 'file must be a string', severity: 'error' });
|
|
68
|
+
}
|
|
69
|
+
// Title validation
|
|
70
|
+
if (!entry.title) {
|
|
71
|
+
errors.push({ field: 'title', message: 'title is required', severity: 'error' });
|
|
72
|
+
}
|
|
73
|
+
else if (typeof entry.title !== 'string') {
|
|
74
|
+
errors.push({ field: 'title', message: 'title must be a string', severity: 'error' });
|
|
75
|
+
}
|
|
76
|
+
// Date validation
|
|
77
|
+
if (!entry.date) {
|
|
78
|
+
errors.push({ field: 'date', message: 'date is required', severity: 'error' });
|
|
79
|
+
}
|
|
80
|
+
else if (!/^\d{4}-\d{2}-\d{2}$/.test(entry.date)) {
|
|
81
|
+
errors.push({
|
|
82
|
+
field: 'date',
|
|
83
|
+
message: 'date must be ISO-8601 format (YYYY-MM-DD)',
|
|
84
|
+
severity: 'error',
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
// Check date is valid
|
|
89
|
+
const dateObj = new Date(entry.date);
|
|
90
|
+
if (isNaN(dateObj.getTime())) {
|
|
91
|
+
errors.push({
|
|
92
|
+
field: 'date',
|
|
93
|
+
message: 'date must be a valid date',
|
|
94
|
+
severity: 'error',
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
// Status validation
|
|
99
|
+
if (!entry.status) {
|
|
100
|
+
errors.push({ field: 'status', message: 'status is required', severity: 'error' });
|
|
101
|
+
}
|
|
102
|
+
else if (!['complete', 'partial', 'blocked'].includes(entry.status)) {
|
|
103
|
+
errors.push({
|
|
104
|
+
field: 'status',
|
|
105
|
+
message: 'status must be one of: complete, partial, blocked',
|
|
106
|
+
severity: 'error',
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
// Agent type validation
|
|
110
|
+
if (!entry.agent_type) {
|
|
111
|
+
errors.push({ field: 'agent_type', message: 'agent_type is required', severity: 'error' });
|
|
112
|
+
}
|
|
113
|
+
else if (typeof entry.agent_type !== 'string') {
|
|
114
|
+
errors.push({
|
|
115
|
+
field: 'agent_type',
|
|
116
|
+
message: 'agent_type must be a string',
|
|
117
|
+
severity: 'error',
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
// Topics validation
|
|
121
|
+
if (!entry.topics) {
|
|
122
|
+
errors.push({ field: 'topics', message: 'topics array is required', severity: 'error' });
|
|
123
|
+
}
|
|
124
|
+
else if (!Array.isArray(entry.topics)) {
|
|
125
|
+
errors.push({ field: 'topics', message: 'topics must be an array', severity: 'error' });
|
|
126
|
+
}
|
|
127
|
+
else if (entry.topics.length === 0) {
|
|
128
|
+
errors.push({
|
|
129
|
+
field: 'topics',
|
|
130
|
+
message: 'topics array must not be empty',
|
|
131
|
+
severity: 'warning',
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
else if (entry.topics.some((t) => typeof t !== 'string')) {
|
|
135
|
+
errors.push({
|
|
136
|
+
field: 'topics',
|
|
137
|
+
message: 'all topics must be strings',
|
|
138
|
+
severity: 'error',
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
// Actionable validation
|
|
142
|
+
if (entry.actionable === undefined || entry.actionable === null) {
|
|
143
|
+
errors.push({ field: 'actionable', message: 'actionable is required', severity: 'error' });
|
|
144
|
+
}
|
|
145
|
+
else if (typeof entry.actionable !== 'boolean') {
|
|
146
|
+
errors.push({
|
|
147
|
+
field: 'actionable',
|
|
148
|
+
message: 'actionable must be a boolean',
|
|
149
|
+
severity: 'error',
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
// === Optional Fields ===
|
|
153
|
+
// Key findings validation (for research)
|
|
154
|
+
if (entry.key_findings !== undefined) {
|
|
155
|
+
if (!Array.isArray(entry.key_findings)) {
|
|
156
|
+
errors.push({
|
|
157
|
+
field: 'key_findings',
|
|
158
|
+
message: 'key_findings must be an array',
|
|
159
|
+
severity: 'error',
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
if (entry.key_findings.length < 3) {
|
|
164
|
+
errors.push({
|
|
165
|
+
field: 'key_findings',
|
|
166
|
+
message: 'key_findings should have at least 3 items',
|
|
167
|
+
severity: 'warning',
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
if (entry.key_findings.length > 7) {
|
|
171
|
+
errors.push({
|
|
172
|
+
field: 'key_findings',
|
|
173
|
+
message: 'key_findings should have at most 7 items',
|
|
174
|
+
severity: 'warning',
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
if (entry.key_findings.some((f) => typeof f !== 'string')) {
|
|
178
|
+
errors.push({
|
|
179
|
+
field: 'key_findings',
|
|
180
|
+
message: 'all key_findings must be strings',
|
|
181
|
+
severity: 'error',
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
// Needs followup validation
|
|
187
|
+
if (entry.needs_followup !== undefined) {
|
|
188
|
+
if (!Array.isArray(entry.needs_followup)) {
|
|
189
|
+
errors.push({
|
|
190
|
+
field: 'needs_followup',
|
|
191
|
+
message: 'needs_followup must be an array',
|
|
192
|
+
severity: 'error',
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
else if (entry.needs_followup.some((id) => typeof id !== 'string')) {
|
|
196
|
+
errors.push({
|
|
197
|
+
field: 'needs_followup',
|
|
198
|
+
message: 'all needs_followup items must be strings',
|
|
199
|
+
severity: 'error',
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
else if (entry.needs_followup.some((id) => !/^T\d+$/.test(id))) {
|
|
203
|
+
errors.push({
|
|
204
|
+
field: 'needs_followup',
|
|
205
|
+
message: 'all needs_followup items must be task IDs (T####)',
|
|
206
|
+
severity: 'warning',
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
// Linked tasks validation
|
|
211
|
+
if (entry.linked_tasks !== undefined) {
|
|
212
|
+
if (!Array.isArray(entry.linked_tasks)) {
|
|
213
|
+
errors.push({
|
|
214
|
+
field: 'linked_tasks',
|
|
215
|
+
message: 'linked_tasks must be an array',
|
|
216
|
+
severity: 'error',
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
else if (entry.linked_tasks.some((id) => typeof id !== 'string')) {
|
|
220
|
+
errors.push({
|
|
221
|
+
field: 'linked_tasks',
|
|
222
|
+
message: 'all linked_tasks must be strings',
|
|
223
|
+
severity: 'error',
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
else if (entry.linked_tasks.some((id) => !/^T\d+$/.test(id))) {
|
|
227
|
+
errors.push({
|
|
228
|
+
field: 'linked_tasks',
|
|
229
|
+
message: 'all linked_tasks must be task IDs (T####)',
|
|
230
|
+
severity: 'warning',
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
// Confidence validation
|
|
235
|
+
if (entry.confidence !== undefined) {
|
|
236
|
+
if (typeof entry.confidence !== 'number') {
|
|
237
|
+
errors.push({
|
|
238
|
+
field: 'confidence',
|
|
239
|
+
message: 'confidence must be a number',
|
|
240
|
+
severity: 'error',
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
else if (entry.confidence < 0 || entry.confidence > 1) {
|
|
244
|
+
errors.push({
|
|
245
|
+
field: 'confidence',
|
|
246
|
+
message: 'confidence must be between 0.0 and 1.0',
|
|
247
|
+
severity: 'error',
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
// File checksum validation
|
|
252
|
+
if (entry.file_checksum !== undefined) {
|
|
253
|
+
if (typeof entry.file_checksum !== 'string') {
|
|
254
|
+
errors.push({
|
|
255
|
+
field: 'file_checksum',
|
|
256
|
+
message: 'file_checksum must be a string',
|
|
257
|
+
severity: 'error',
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
else if (!/^[a-f0-9]{64}$/.test(entry.file_checksum)) {
|
|
261
|
+
errors.push({
|
|
262
|
+
field: 'file_checksum',
|
|
263
|
+
message: 'file_checksum must be 64-character hex string (SHA256)',
|
|
264
|
+
severity: 'warning',
|
|
265
|
+
});
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
// Duration validation
|
|
269
|
+
if (entry.duration_seconds !== undefined) {
|
|
270
|
+
if (typeof entry.duration_seconds !== 'number') {
|
|
271
|
+
errors.push({
|
|
272
|
+
field: 'duration_seconds',
|
|
273
|
+
message: 'duration_seconds must be a number',
|
|
274
|
+
severity: 'error',
|
|
275
|
+
});
|
|
276
|
+
}
|
|
277
|
+
else if (entry.duration_seconds < 0) {
|
|
278
|
+
errors.push({
|
|
279
|
+
field: 'duration_seconds',
|
|
280
|
+
message: 'duration_seconds must be non-negative',
|
|
281
|
+
severity: 'error',
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
return {
|
|
286
|
+
valid: errors.filter((e) => e.severity === 'error').length === 0,
|
|
287
|
+
errors,
|
|
288
|
+
};
|
|
289
|
+
}
|
|
290
|
+
/**
|
|
291
|
+
* Serialize manifest entry to JSONL format
|
|
292
|
+
*
|
|
293
|
+
* Converts ManifestEntry to compact single-line JSON suitable for
|
|
294
|
+
* appending to MANIFEST.jsonl file.
|
|
295
|
+
*
|
|
296
|
+
* @param entry - Manifest entry to serialize
|
|
297
|
+
* @returns Single-line JSON string
|
|
298
|
+
*/
|
|
299
|
+
export function serializeEntry(entry) {
|
|
300
|
+
// Ensure all required fields are present
|
|
301
|
+
const validation = validateEntry(entry);
|
|
302
|
+
if (!validation.valid) {
|
|
303
|
+
const errorMessages = validation.errors
|
|
304
|
+
.filter((e) => e.severity === 'error')
|
|
305
|
+
.map((e) => `${e.field}: ${e.message}`)
|
|
306
|
+
.join(', ');
|
|
307
|
+
throw new Error(`Cannot serialize invalid entry: ${errorMessages}`);
|
|
308
|
+
}
|
|
309
|
+
// Serialize to compact JSON (no whitespace)
|
|
310
|
+
return JSON.stringify(entry);
|
|
311
|
+
}
|
|
312
|
+
/**
|
|
313
|
+
* Extract task ID from entry ID
|
|
314
|
+
*
|
|
315
|
+
* Extracts the task ID prefix from a manifest entry ID.
|
|
316
|
+
* Example: "T2919-manifest-integration" → "T2919"
|
|
317
|
+
*
|
|
318
|
+
* @param entryId - Entry ID (T####-slug format)
|
|
319
|
+
* @returns Task ID or null if invalid format
|
|
320
|
+
*/
|
|
321
|
+
export function extractTaskId(entryId) {
|
|
322
|
+
const match = entryId.match(/^(T\d+)-/);
|
|
323
|
+
return match ? match[1] : null;
|
|
324
|
+
}
|
|
325
|
+
/**
|
|
326
|
+
* Check if entry needs followup
|
|
327
|
+
*
|
|
328
|
+
* Determines if a manifest entry requires follow-up actions based
|
|
329
|
+
* on status and needs_followup field.
|
|
330
|
+
*
|
|
331
|
+
* @param entry - Manifest entry to check
|
|
332
|
+
* @returns True if entry needs followup
|
|
333
|
+
*/
|
|
334
|
+
export function needsFollowup(entry) {
|
|
335
|
+
return (entry.status !== 'complete' ||
|
|
336
|
+
(entry.needs_followup !== undefined && entry.needs_followup.length > 0));
|
|
337
|
+
}
|
|
338
|
+
//# sourceMappingURL=manifest-parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest-parser.js","sourceRoot":"","sources":["../../src/lib/manifest-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Manifest Integration System
|
|
3
|
+
*
|
|
4
|
+
* Reads and manages agent output manifests (MANIFEST.jsonl) with filtering,
|
|
5
|
+
* validation, and task linkage capabilities.
|
|
6
|
+
*
|
|
7
|
+
* Manifest entries are append-only JSON Lines format where each line is a
|
|
8
|
+
* single JSON object representing one agent output with metadata.
|
|
9
|
+
*
|
|
10
|
+
* @task T2919
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Manifest entry structure
|
|
14
|
+
*
|
|
15
|
+
* Each entry represents one agent output with complete metadata including
|
|
16
|
+
* task linkage, findings, and follow-up requirements.
|
|
17
|
+
*/
|
|
18
|
+
export interface ManifestEntry {
|
|
19
|
+
/** Unique entry ID (format: T####-slug) */
|
|
20
|
+
id: string;
|
|
21
|
+
/** Relative path to output file */
|
|
22
|
+
file: string;
|
|
23
|
+
/** Human-readable title */
|
|
24
|
+
title: string;
|
|
25
|
+
/** ISO-8601 date (YYYY-MM-DD) */
|
|
26
|
+
date: string;
|
|
27
|
+
/** Completion status */
|
|
28
|
+
status: 'complete' | 'partial' | 'blocked';
|
|
29
|
+
/** Protocol type used */
|
|
30
|
+
agent_type: string;
|
|
31
|
+
/** Category tags (3-7 items recommended) */
|
|
32
|
+
topics: string[];
|
|
33
|
+
/** Key outcomes (3-7 items for research) */
|
|
34
|
+
key_findings?: string[];
|
|
35
|
+
/** Whether findings are actionable */
|
|
36
|
+
actionable: boolean;
|
|
37
|
+
/** Task IDs requiring follow-up */
|
|
38
|
+
needs_followup?: string[];
|
|
39
|
+
/** Related task IDs */
|
|
40
|
+
linked_tasks?: string[];
|
|
41
|
+
/** Confidence score (0.0-1.0) */
|
|
42
|
+
confidence?: number;
|
|
43
|
+
/** SHA256 of output file */
|
|
44
|
+
file_checksum?: string;
|
|
45
|
+
/** Wall-clock completion time in seconds */
|
|
46
|
+
duration_seconds?: number;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Filter criteria for manifest entries
|
|
50
|
+
*/
|
|
51
|
+
export interface ManifestFilter {
|
|
52
|
+
/** Filter by task ID */
|
|
53
|
+
taskId?: string;
|
|
54
|
+
/** Filter by agent type */
|
|
55
|
+
agent_type?: string;
|
|
56
|
+
/** Filter by status */
|
|
57
|
+
status?: 'complete' | 'partial' | 'blocked';
|
|
58
|
+
/** Filter by date (ISO-8601) */
|
|
59
|
+
date?: string;
|
|
60
|
+
/** Filter by date range (after this date) */
|
|
61
|
+
dateAfter?: string;
|
|
62
|
+
/** Filter by date range (before this date) */
|
|
63
|
+
dateBefore?: string;
|
|
64
|
+
/** Filter by topic (exact match) */
|
|
65
|
+
topic?: string;
|
|
66
|
+
/** Filter by actionable flag */
|
|
67
|
+
actionable?: boolean;
|
|
68
|
+
/** Maximum number of entries to return */
|
|
69
|
+
limit?: number;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Manifest validation result
|
|
73
|
+
*/
|
|
74
|
+
export interface ManifestValidation {
|
|
75
|
+
/** Whether entry is valid */
|
|
76
|
+
valid: boolean;
|
|
77
|
+
/** Validation errors */
|
|
78
|
+
errors: Array<{
|
|
79
|
+
field: string;
|
|
80
|
+
message: string;
|
|
81
|
+
severity: 'error' | 'warning';
|
|
82
|
+
}>;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Manifest reader and parser
|
|
86
|
+
*
|
|
87
|
+
* Provides methods to read, filter, and validate MANIFEST.jsonl entries
|
|
88
|
+
* with efficient streaming for large files.
|
|
89
|
+
*/
|
|
90
|
+
export declare class ManifestReader {
|
|
91
|
+
private manifestPath;
|
|
92
|
+
private baseDir;
|
|
93
|
+
constructor(manifestPath: string, baseDir?: string);
|
|
94
|
+
/**
|
|
95
|
+
* Read all entries from manifest
|
|
96
|
+
*
|
|
97
|
+
* Parses JSONL format (one JSON object per line) and returns array
|
|
98
|
+
* of manifest entries. Skips invalid lines with warnings.
|
|
99
|
+
*
|
|
100
|
+
* @returns Array of parsed manifest entries
|
|
101
|
+
*/
|
|
102
|
+
readManifest(): Promise<ManifestEntry[]>;
|
|
103
|
+
/**
|
|
104
|
+
* Filter entries by criteria
|
|
105
|
+
*
|
|
106
|
+
* Applies multiple filter conditions using AND logic. All specified
|
|
107
|
+
* conditions must match for an entry to be included.
|
|
108
|
+
*
|
|
109
|
+
* @param entries - Array of manifest entries to filter
|
|
110
|
+
* @param filter - Filter criteria
|
|
111
|
+
* @returns Filtered array of entries
|
|
112
|
+
*/
|
|
113
|
+
filterEntries(entries: ManifestEntry[], filter: ManifestFilter): ManifestEntry[];
|
|
114
|
+
/**
|
|
115
|
+
* Get entries for specific task
|
|
116
|
+
*
|
|
117
|
+
* Convenience method to get all manifest entries linked to a task ID.
|
|
118
|
+
* Searches both the entry ID prefix and linked_tasks array.
|
|
119
|
+
*
|
|
120
|
+
* @param taskId - Task ID to search for (e.g., "T2919")
|
|
121
|
+
* @returns Array of entries linked to task
|
|
122
|
+
*/
|
|
123
|
+
getTaskEntries(taskId: string): Promise<ManifestEntry[]>;
|
|
124
|
+
/**
|
|
125
|
+
* Validate manifest entry
|
|
126
|
+
*
|
|
127
|
+
* Checks required fields, format constraints, and data integrity.
|
|
128
|
+
* Returns detailed validation results with field-level errors.
|
|
129
|
+
*
|
|
130
|
+
* @param entry - Manifest entry to validate
|
|
131
|
+
* @returns Validation result with errors
|
|
132
|
+
*/
|
|
133
|
+
validateEntry(entry: ManifestEntry): ManifestValidation;
|
|
134
|
+
/**
|
|
135
|
+
* Validate entire manifest
|
|
136
|
+
*
|
|
137
|
+
* Reads manifest and validates all entries. Returns aggregated
|
|
138
|
+
* validation results with entry-level details.
|
|
139
|
+
*
|
|
140
|
+
* @returns Validation results for all entries
|
|
141
|
+
*/
|
|
142
|
+
validateManifest(): Promise<{
|
|
143
|
+
valid: boolean;
|
|
144
|
+
totalEntries: number;
|
|
145
|
+
validEntries: number;
|
|
146
|
+
invalidEntries: number;
|
|
147
|
+
errors: Array<{
|
|
148
|
+
entryId: string;
|
|
149
|
+
errors: ManifestValidation['errors'];
|
|
150
|
+
}>;
|
|
151
|
+
}>;
|
|
152
|
+
/**
|
|
153
|
+
* Get summary statistics from manifest
|
|
154
|
+
*
|
|
155
|
+
* Aggregates manifest entries into summary statistics for reporting.
|
|
156
|
+
*
|
|
157
|
+
* @returns Summary statistics
|
|
158
|
+
*/
|
|
159
|
+
getSummary(): Promise<{
|
|
160
|
+
total: number;
|
|
161
|
+
byStatus: Record<string, number>;
|
|
162
|
+
byAgentType: Record<string, number>;
|
|
163
|
+
actionable: number;
|
|
164
|
+
needsFollowup: number;
|
|
165
|
+
}>;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Create manifest reader instance
|
|
169
|
+
*
|
|
170
|
+
* Factory function for creating configured ManifestReader.
|
|
171
|
+
*
|
|
172
|
+
* @param manifestPath - Path to MANIFEST.jsonl (relative to baseDir)
|
|
173
|
+
* @param baseDir - Base directory (default: cwd)
|
|
174
|
+
* @returns Configured ManifestReader
|
|
175
|
+
*/
|
|
176
|
+
export declare function createManifestReader(manifestPath: string, baseDir?: string): ManifestReader;
|
|
177
|
+
//# sourceMappingURL=manifest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/lib/manifest.ts"],"names":[],"mappings":"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"}
|