@llm4ts/flow 2.16.0 → 2.17.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/dist/Approval.d.ts +1 -1
- package/dist/Approval.d.ts.map +1 -1
- package/dist/Artifacts.d.ts +2 -2
- package/dist/Artifacts.d.ts.map +1 -1
- package/dist/BenchReport.d.ts +2 -2
- package/dist/BenchReport.d.ts.map +1 -1
- package/dist/CostLedger.d.ts +2 -2
- package/dist/CostLedger.d.ts.map +1 -1
- package/dist/EpicBrief.d.ts +185 -0
- package/dist/EpicBrief.d.ts.map +1 -0
- package/dist/EpicBrief.js +781 -0
- package/dist/EpicBrief.js.map +1 -0
- package/dist/Equiv.d.ts +3 -3
- package/dist/Equiv.d.ts.map +1 -1
- package/dist/Flow.d.ts +1 -1
- package/dist/Flow.d.ts.map +1 -1
- package/dist/FlowError.d.ts +23 -1
- package/dist/FlowError.d.ts.map +1 -1
- package/dist/FlowError.js +30 -1
- package/dist/FlowError.js.map +1 -1
- package/dist/Judgment.d.ts +2 -2
- package/dist/Judgment.d.ts.map +1 -1
- package/dist/Landing.d.ts +1 -1
- package/dist/Landing.d.ts.map +1 -1
- package/dist/Persistence.d.ts +2 -2
- package/dist/Persistence.d.ts.map +1 -1
- package/dist/PlanExecution.d.ts +1 -1
- package/dist/PlanExecution.d.ts.map +1 -1
- package/dist/ProgramJudge.d.ts +1 -1
- package/dist/ProgramJudge.d.ts.map +1 -1
- package/dist/Replay.d.ts +2 -2
- package/dist/Replay.d.ts.map +1 -1
- package/dist/Review.d.ts +3 -3
- package/dist/Review.d.ts.map +1 -1
- package/dist/ReviewCache.d.ts +1 -1
- package/dist/ReviewCache.d.ts.map +1 -1
- package/dist/Roster.d.ts +1 -1
- package/dist/Roster.d.ts.map +1 -1
- package/dist/RosterSeats.d.ts +1 -1
- package/dist/RosterSeats.d.ts.map +1 -1
- package/dist/Stories.d.ts +1 -1
- package/dist/Stories.d.ts.map +1 -1
- package/package.json +3 -2
- package/src/EpicBrief.ts +900 -0
- package/src/FlowError.ts +39 -1
package/dist/Approval.d.ts
CHANGED
|
@@ -22,6 +22,6 @@ export declare class MissingModernizeArtifact extends MissingModernizeArtifact_b
|
|
|
22
22
|
export declare const ApprovedMarker = "- [x] Approved";
|
|
23
23
|
export declare const DraftApprovalMarker = "- [ ] Approved";
|
|
24
24
|
export declare const withDraftApproval: (markdown: string) => string;
|
|
25
|
-
export declare const requireApproval: (files: PlainFileStoreShape, path: string) => Effect.Effect<void, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ContractConflict | ApprovalRequired | MissingModernizeArtifact, never>;
|
|
25
|
+
export declare const requireApproval: (files: PlainFileStoreShape, path: string) => Effect.Effect<void, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict | ApprovalRequired | MissingModernizeArtifact, never>;
|
|
26
26
|
export {};
|
|
27
27
|
//# sourceMappingURL=Approval.d.ts.map
|
package/dist/Approval.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Approval.d.ts","sourceRoot":"","sources":["../src/Approval.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;;;;;AAE3D;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,qBAGpC;IACA,IAAI,OAAO,IAAI,MAAM,CAEpB;CACF;;;;;AAED,qBAAa,wBAAyB,SAAQ,6BAM7C;CAAG;AAEJ,eAAO,MAAM,cAAc,mBAAmB,CAAA;AAC9C,eAAO,MAAM,mBAAmB,mBAAmB,CAAA;AAEnD,eAAO,MAAM,iBAAiB,GAAI,UAAU,MAAM,KAAG,MACA,CAAA;AAErD,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"Approval.d.ts","sourceRoot":"","sources":["../src/Approval.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;;;;;AAE3D;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,qBAGpC;IACA,IAAI,OAAO,IAAI,MAAM,CAEpB;CACF;;;;;AAED,qBAAa,wBAAyB,SAAQ,6BAM7C;CAAG;AAEJ,eAAO,MAAM,cAAc,mBAAmB,CAAA;AAC9C,eAAO,MAAM,mBAAmB,mBAAmB,CAAA;AAEnD,eAAO,MAAM,iBAAiB,GAAI,UAAU,MAAM,KAAG,MACA,CAAA;AAErD,eAAO,MAAM,eAAe,+zCAc1B,CAAA"}
|
package/dist/Artifacts.d.ts
CHANGED
|
@@ -51,7 +51,7 @@ export interface ExtractProgramsOptions<E2, R2> {
|
|
|
51
51
|
* re-raised. With `concurrency` 1 that is exactly fail-fast; above 1 a quota
|
|
52
52
|
* death costs only the programs it interrupted, and a rerun resumes the rest.
|
|
53
53
|
*/
|
|
54
|
-
export declare const extractProgramsResumably: <E, R, E2 = never, R2 = never>(files: PlainFileStoreShape, units: readonly ProgramUnit[], extract: (unit: ProgramUnit) => Effect.Effect<ProgramArtifacts, E, R>, directory?: string | undefined, options?: ExtractProgramsOptions<E2, R2> | undefined) => Effect.Effect<ResumeSummary, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ContractConflict | E | E2, R | R2>;
|
|
55
|
-
export declare const generateVectorsResumably: <E, R>(files: PlainFileStoreShape, programs: readonly string[], generate: (program: string) => Effect.Effect<string, E, R>, directory?: string | undefined) => Effect.Effect<ResumeSummary, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ContractConflict | E, R>;
|
|
54
|
+
export declare const extractProgramsResumably: <E, R, E2 = never, R2 = never>(files: PlainFileStoreShape, units: readonly ProgramUnit[], extract: (unit: ProgramUnit) => Effect.Effect<ProgramArtifacts, E, R>, directory?: string | undefined, options?: ExtractProgramsOptions<E2, R2> | undefined) => Effect.Effect<ResumeSummary, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict | E | E2, R | R2>;
|
|
55
|
+
export declare const generateVectorsResumably: <E, R>(files: PlainFileStoreShape, programs: readonly string[], generate: (program: string) => Effect.Effect<string, E, R>, directory?: string | undefined) => Effect.Effect<ResumeSummary, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict | E, R>;
|
|
56
56
|
export {};
|
|
57
57
|
//# sourceMappingURL=Artifacts.d.ts.map
|
package/dist/Artifacts.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Artifacts.d.ts","sourceRoot":"","sources":["../src/Artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;;;;;AAE3D,qBAAa,WAAY,SAAQ,gBAG/B;CAAG;;;;;;;AAEL,qBAAa,gBAAiB,SAAQ,qBAKpC;CAAG;;;;;AAEL,qBAAa,aAAc,SAAQ,kBAGjC;CAAG;AAIL,yFAAyF;AACzF,eAAO,MAAM,oBAAoB,GAC/B,MAAM,WAAW,EACjB,kBAAgC,KAC/B,aAAa,CAAC,MAAM,CAKtB,CAAA;AAED,MAAM,WAAW,sBAAsB,CAAC,EAAE,EAAE,EAAE;IAC5C;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;CACxE;AAID;;;;;;;;;;GAUG;AACH,eAAO,MAAM,wBAAwB,GAExB,CAAC,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,qFAGf,WAAW,KAAK,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"Artifacts.d.ts","sourceRoot":"","sources":["../src/Artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;;;;;AAE3D,qBAAa,WAAY,SAAQ,gBAG/B;CAAG;;;;;;;AAEL,qBAAa,gBAAiB,SAAQ,qBAKpC;CAAG;;;;;AAEL,qBAAa,aAAc,SAAQ,kBAGjC;CAAG;AAIL,yFAAyF;AACzF,eAAO,MAAM,oBAAoB,GAC/B,MAAM,WAAW,EACjB,kBAAgC,KAC/B,aAAa,CAAC,MAAM,CAKtB,CAAA;AAED,MAAM,WAAW,sBAAsB,CAAC,EAAE,EAAE,EAAE;IAC5C;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;CACxE;AAID;;;;;;;;;;GAUG;AACH,eAAO,MAAM,wBAAwB,GAExB,CAAC,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,qFAGf,WAAW,KAAK,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC,CAAC,+0CAiErE,CAAA;AAEF,eAAO,MAAM,wBAAwB,GAExB,CAAC,EAAE,CAAC,+EAGK,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,+wCAe1D,CAAA"}
|
package/dist/BenchReport.d.ts
CHANGED
|
@@ -4,6 +4,6 @@ import { PlanParseError, UnsupportedSchemaVersion } from "./FlowError.ts";
|
|
|
4
4
|
import type { PlainFileStoreShape } from "./Persistence.ts";
|
|
5
5
|
export declare const median: (values: ReadonlyArray<number>) => number;
|
|
6
6
|
export declare const renderBenchReport: (records: ReadonlyArray<BenchRecord>, projectPrograms?: number) => string;
|
|
7
|
-
export declare const appendBenchRecord: (files: PlainFileStoreShape, path: string, record: BenchRecord) => Effect.Effect<void, import("./FlowError.ts").PersistenceError | PlanParseError | UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ContractConflict, never>;
|
|
8
|
-
export declare const loadBenchRecords: (files: PlainFileStoreShape, path: string) => Effect.Effect<readonly BenchRecord[], import("./FlowError.ts").PersistenceError | PlanParseError | UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ContractConflict, never>;
|
|
7
|
+
export declare const appendBenchRecord: (files: PlainFileStoreShape, path: string, record: BenchRecord) => Effect.Effect<void, import("./FlowError.ts").PersistenceError | PlanParseError | UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
|
|
8
|
+
export declare const loadBenchRecords: (files: PlainFileStoreShape, path: string) => Effect.Effect<readonly BenchRecord[], import("./FlowError.ts").PersistenceError | PlanParseError | UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
|
|
9
9
|
//# sourceMappingURL=BenchReport.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BenchReport.d.ts","sourceRoot":"","sources":["../src/BenchReport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,WAAW,EAAuC,MAAM,YAAY,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAkB,MAAM,gBAAgB,CAAA;AACzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAI3D,eAAO,MAAM,MAAM,GAAI,QAAQ,aAAa,CAAC,MAAM,CAAC,KAAG,MAStD,CAAA;AA4WD,eAAO,MAAM,iBAAiB,GAC5B,SAAS,aAAa,CAAC,WAAW,CAAC,EACnC,kBAAkB,MAAM,KACvB,MAUF,CAAA;AAID,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"BenchReport.d.ts","sourceRoot":"","sources":["../src/BenchReport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,WAAW,EAAuC,MAAM,YAAY,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAkB,MAAM,gBAAgB,CAAA;AACzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAI3D,eAAO,MAAM,MAAM,GAAI,QAAQ,aAAa,CAAC,MAAM,CAAC,KAAG,MAStD,CAAA;AA4WD,eAAO,MAAM,iBAAiB,GAC5B,SAAS,aAAa,CAAC,WAAW,CAAC,EACnC,kBAAkB,MAAM,KACvB,MAUF,CAAA;AAID,eAAO,MAAM,iBAAiB,ovCAa5B,CAAA;AAEF,eAAO,MAAM,gBAAgB,ivCAiC3B,CAAA"}
|
package/dist/CostLedger.d.ts
CHANGED
|
@@ -48,8 +48,8 @@ declare const CostBudget_base: Schema.Class<CostBudget, Schema.Struct<{
|
|
|
48
48
|
export declare class CostBudget extends CostBudget_base {
|
|
49
49
|
}
|
|
50
50
|
export declare const checkCostBudget: (record: CostRecord, budget: CostBudget) => Effect.Effect<void, BudgetExceeded>;
|
|
51
|
-
export declare const appendCostRecord: (files: PlainFileStoreShape, path: string, record: CostRecord) => Effect.Effect<void, import("./FlowError.ts").PersistenceError | PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ContractConflict, never>;
|
|
52
|
-
export declare const loadCostLedger: (files: PlainFileStoreShape, path: string) => Effect.Effect<readonly CostRecord[], import("./FlowError.ts").PersistenceError | PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ContractConflict, never>;
|
|
51
|
+
export declare const appendCostRecord: (files: PlainFileStoreShape, path: string, record: CostRecord) => Effect.Effect<void, import("./FlowError.ts").PersistenceError | PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
|
|
52
|
+
export declare const loadCostLedger: (files: PlainFileStoreShape, path: string) => Effect.Effect<readonly CostRecord[], import("./FlowError.ts").PersistenceError | PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | import("./FlowError.ts").ProcessError | import("./FlowError.ts").FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
|
|
53
53
|
export declare const mergeCostCells: (records: ReadonlyArray<CostRecord>) => ReadonlyArray<CostCell>;
|
|
54
54
|
export {};
|
|
55
55
|
//# sourceMappingURL=CostLedger.d.ts.map
|
package/dist/CostLedger.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CostLedger.d.ts","sourceRoot":"","sources":["../src/CostLedger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAkB,MAAM,gBAAgB,CAAA;AAC/E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;;;;;;;;;;;AAI3D,qBAAa,QAAS,SAAQ,aAS5B;CAAG;;;;;;;;;;;;;;;AAEL,qBAAa,UAAW,SAAQ,eAa9B;CAAG;AAEL,eAAO,MAAM,uBAAuB,IAAI,CAAA;AACxC,eAAO,MAAM,kBAAkB,gBAAgB,CAAA;AAE/C,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAA;CACxC;AAED,eAAO,MAAM,cAAc,GAAI,OAAO,eAAe,KAAG,UAgBvD,CAAA;;;;;AAED,qBAAa,UAAW,SAAQ,eAG9B;CAAG;AAEL,eAAO,MAAM,eAAe,GAC1B,QAAQ,UAAU,EAClB,QAAQ,UAAU,KACjB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAqBpC,CAAA;AAID,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"CostLedger.d.ts","sourceRoot":"","sources":["../src/CostLedger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAkB,MAAM,gBAAgB,CAAA;AAC/E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;;;;;;;;;;;AAI3D,qBAAa,QAAS,SAAQ,aAS5B;CAAG;;;;;;;;;;;;;;;AAEL,qBAAa,UAAW,SAAQ,eAa9B;CAAG;AAEL,eAAO,MAAM,uBAAuB,IAAI,CAAA;AACxC,eAAO,MAAM,kBAAkB,gBAAgB,CAAA;AAE/C,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAA;CACxC;AAED,eAAO,MAAM,cAAc,GAAI,OAAO,eAAe,KAAG,UAgBvD,CAAA;;;;;AAED,qBAAa,UAAW,SAAQ,eAG9B;CAAG;AAEL,eAAO,MAAM,eAAe,GAC1B,QAAQ,UAAU,EAClB,QAAQ,UAAU,KACjB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAqBpC,CAAA;AAID,eAAO,MAAM,gBAAgB,mvCAa3B,CAAA;AAEF,eAAO,MAAM,cAAc,gvCAqBzB,CAAA;AAOF,eAAO,MAAM,cAAc,GAAI,SAAS,aAAa,CAAC,UAAU,CAAC,KAAG,aAAa,CAAC,QAAQ,CA+BzF,CAAA"}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Schema from "effect/Schema";
|
|
3
|
+
import type { JsonSchema } from "@llm4ts/core/Models";
|
|
4
|
+
import { OpenPoint } from "./Decisions.ts";
|
|
5
|
+
import { EpicBriefInvalid } from "./FlowError.ts";
|
|
6
|
+
/**
|
|
7
|
+
* The epic brief: what `epic-design` writes and `epic-stories` plans from.
|
|
8
|
+
* The file is the state. It says what an epic delivers and, for every
|
|
9
|
+
* scenario of every legacy program it considered, whether that behaviour is
|
|
10
|
+
* carried over, dropped, already provided by the target, or deferred, each
|
|
11
|
+
* with its evidence in the extract pack (`PROGRAM › scenario title`). A human
|
|
12
|
+
* edits it, answers its open points, writes feedback, and approves it by
|
|
13
|
+
* setting `Status: approved`.
|
|
14
|
+
*/
|
|
15
|
+
export declare const BriefStatus: Schema.Literals<readonly ["draft", "approved"]>;
|
|
16
|
+
export type BriefStatus = typeof BriefStatus.Type;
|
|
17
|
+
declare const Citation_base: Schema.Class<Citation, Schema.Struct<{
|
|
18
|
+
readonly program: Schema.String;
|
|
19
|
+
readonly scenario: Schema.String;
|
|
20
|
+
}>, {}>;
|
|
21
|
+
/** Legacy evidence: a scenario of a program, both named exactly as in the pack. */
|
|
22
|
+
export declare class Citation extends Citation_base {
|
|
23
|
+
}
|
|
24
|
+
declare const ScopeItem_base: Schema.Class<ScopeItem, Schema.Struct<{
|
|
25
|
+
readonly title: Schema.String;
|
|
26
|
+
readonly citations: Schema.$Array<typeof Citation>;
|
|
27
|
+
/** Why an item with no citation exists: behaviour with no legacy counterpart. */
|
|
28
|
+
readonly newBehaviour: Schema.optionalKey<Schema.String>;
|
|
29
|
+
}>, {}>;
|
|
30
|
+
export declare class ScopeItem extends ScopeItem_base {
|
|
31
|
+
}
|
|
32
|
+
declare const Disposed_base: Schema.Class<Disposed, Schema.Struct<{
|
|
33
|
+
readonly program: Schema.String;
|
|
34
|
+
readonly scenario: Schema.String;
|
|
35
|
+
readonly note: Schema.String;
|
|
36
|
+
}>, {}>;
|
|
37
|
+
/** A scenario not carried over; `note` is the reason (dropped), the pointer (provided) or the note (deferred). */
|
|
38
|
+
export declare class Disposed extends Disposed_base {
|
|
39
|
+
}
|
|
40
|
+
declare const ConsideredProgram_base: Schema.Class<ConsideredProgram, Schema.Struct<{
|
|
41
|
+
readonly name: Schema.String;
|
|
42
|
+
readonly reason: Schema.String;
|
|
43
|
+
}>, {}>;
|
|
44
|
+
export declare class ConsideredProgram extends ConsideredProgram_base {
|
|
45
|
+
}
|
|
46
|
+
declare const EpicBrief_base: Schema.Class<EpicBrief, Schema.Struct<{
|
|
47
|
+
readonly epicId: Schema.String;
|
|
48
|
+
readonly status: Schema.Literals<readonly ["draft", "approved"]>;
|
|
49
|
+
/** The epic as the user asked for it; becomes the story plan's `epic`. */
|
|
50
|
+
readonly request: Schema.String;
|
|
51
|
+
readonly legacy: Schema.String;
|
|
52
|
+
readonly goal: Schema.String;
|
|
53
|
+
readonly programs: Schema.$Array<typeof ConsideredProgram>;
|
|
54
|
+
readonly scope: Schema.$Array<typeof ScopeItem>;
|
|
55
|
+
readonly dropped: Schema.$Array<typeof Disposed>;
|
|
56
|
+
readonly provided: Schema.$Array<typeof Disposed>;
|
|
57
|
+
readonly deferred: Schema.$Array<typeof Disposed>;
|
|
58
|
+
readonly constraints: Schema.String;
|
|
59
|
+
readonly openPoints: Schema.$Array<typeof OpenPoint>;
|
|
60
|
+
readonly feedback: Schema.String;
|
|
61
|
+
}>, {}>;
|
|
62
|
+
export declare class EpicBrief extends EpicBrief_base {
|
|
63
|
+
}
|
|
64
|
+
/** Open points with no answer, or an empty one. */
|
|
65
|
+
export declare const unanswered: (brief: EpicBrief) => ReadonlyArray<OpenPoint>;
|
|
66
|
+
export declare const renderEpicBrief: (brief: EpicBrief) => string;
|
|
67
|
+
export declare const parseEpicBrief: (markdown: string, path?: string | undefined) => Effect.Effect<EpicBrief, EpicBriefInvalid, never>;
|
|
68
|
+
/**
|
|
69
|
+
* The brief as the file can hold it. A model's proposal may carry a newline
|
|
70
|
+
* in a title, a `## ` line in the goal, an unclosed fence; written as they
|
|
71
|
+
* are, those would parse back as something else on the next run. Fields that
|
|
72
|
+
* live on one line are folded onto one, prose is made safe for the section
|
|
73
|
+
* grammar, and nothing else changes.
|
|
74
|
+
*/
|
|
75
|
+
export declare const normalizeBrief: (brief: EpicBrief) => EpicBrief;
|
|
76
|
+
export interface PackProgram {
|
|
77
|
+
readonly name: string;
|
|
78
|
+
/** The first paragraph of the program's spec. */
|
|
79
|
+
readonly summary: string;
|
|
80
|
+
readonly scenarios: ReadonlyArray<string>;
|
|
81
|
+
}
|
|
82
|
+
/** A disposition `modernize-refine` recorded in the legacy pack's decisions.md. */
|
|
83
|
+
export interface RefineDisposition {
|
|
84
|
+
readonly program: string;
|
|
85
|
+
/** Absent: the disposition covers every scenario of the program. */
|
|
86
|
+
readonly scenario?: string;
|
|
87
|
+
readonly disposition: "drop" | "provided" | "defer" | "wrap";
|
|
88
|
+
}
|
|
89
|
+
/** What the checks need from the extract pack, built by the flow from its files. */
|
|
90
|
+
export interface PackIndex {
|
|
91
|
+
readonly programs: ReadonlyArray<PackProgram>;
|
|
92
|
+
readonly refine: ReadonlyArray<RefineDisposition>;
|
|
93
|
+
}
|
|
94
|
+
export declare const BriefProblem: Schema.Union<readonly [Schema.Struct<{
|
|
95
|
+
readonly kind: Schema.Literal<"UnknownProgram">;
|
|
96
|
+
readonly program: Schema.String;
|
|
97
|
+
}>, Schema.Struct<{
|
|
98
|
+
readonly kind: Schema.Literal<"UnknownScenario">;
|
|
99
|
+
readonly program: Schema.String;
|
|
100
|
+
readonly scenario: Schema.String;
|
|
101
|
+
readonly closest: Schema.optionalKey<Schema.String>;
|
|
102
|
+
}>, Schema.Struct<{
|
|
103
|
+
readonly kind: Schema.Literal<"MissingPointer">;
|
|
104
|
+
readonly program: Schema.String;
|
|
105
|
+
readonly scenario: Schema.String;
|
|
106
|
+
readonly pointer: Schema.String;
|
|
107
|
+
}>, Schema.Struct<{
|
|
108
|
+
readonly kind: Schema.Literal<"MissingReason">;
|
|
109
|
+
readonly where: Schema.String;
|
|
110
|
+
}>, Schema.Struct<{
|
|
111
|
+
readonly kind: Schema.Literal<"DuplicateDisposition">;
|
|
112
|
+
readonly program: Schema.String;
|
|
113
|
+
readonly scenario: Schema.String;
|
|
114
|
+
readonly lists: Schema.$Array<Schema.String>;
|
|
115
|
+
}>, Schema.Struct<{
|
|
116
|
+
readonly kind: Schema.Literal<"Unaccounted">;
|
|
117
|
+
readonly program: Schema.String;
|
|
118
|
+
readonly scenario: Schema.String;
|
|
119
|
+
}>, Schema.Struct<{
|
|
120
|
+
readonly kind: Schema.Literal<"RefineConflict">;
|
|
121
|
+
readonly program: Schema.String;
|
|
122
|
+
readonly scenario: Schema.String;
|
|
123
|
+
readonly disposition: Schema.String;
|
|
124
|
+
}>, Schema.Struct<{
|
|
125
|
+
readonly kind: Schema.Literal<"ApprovedWithOpenPoints">;
|
|
126
|
+
readonly numbers: Schema.$Array<Schema.Int>;
|
|
127
|
+
}>]>;
|
|
128
|
+
export type BriefProblem = typeof BriefProblem.Type;
|
|
129
|
+
export declare const renderBriefProblem: (problem: BriefProblem) => string;
|
|
130
|
+
/** The pointers of the provided entries: what the caller verifies before checking. */
|
|
131
|
+
export declare const providedPointers: (brief: EpicBrief) => ReadonlyArray<string>;
|
|
132
|
+
export interface BriefCheckInputs {
|
|
133
|
+
readonly pack: PackIndex;
|
|
134
|
+
/** The provided pointers that were found in the target (or its pack). */
|
|
135
|
+
readonly pointers: ReadonlySet<string>;
|
|
136
|
+
}
|
|
137
|
+
/** Every problem of a brief against the pack, all at once; empty means acceptable. */
|
|
138
|
+
export declare const checkEpicBrief: (brief: EpicBrief, inputs: BriefCheckInputs) => ReadonlyArray<BriefProblem>;
|
|
139
|
+
declare const ProgramSelection_base: Schema.Class<ProgramSelection, Schema.Struct<{
|
|
140
|
+
readonly programs: Schema.$Array<typeof ConsideredProgram>;
|
|
141
|
+
}>, {}>;
|
|
142
|
+
/** The programs of the pack a request touches; the model's first typed reply. */
|
|
143
|
+
export declare class ProgramSelection extends ProgramSelection_base {
|
|
144
|
+
}
|
|
145
|
+
declare const EpicBriefProposal_base: Schema.Class<EpicBriefProposal, Schema.Struct<{
|
|
146
|
+
readonly goal: Schema.String;
|
|
147
|
+
readonly scope: Schema.$Array<typeof ScopeItem>;
|
|
148
|
+
readonly dropped: Schema.$Array<typeof Disposed>;
|
|
149
|
+
readonly provided: Schema.$Array<typeof Disposed>;
|
|
150
|
+
readonly deferred: Schema.$Array<typeof Disposed>;
|
|
151
|
+
readonly constraints: Schema.String;
|
|
152
|
+
/** Questions only a human can answer. */
|
|
153
|
+
readonly openPoints: Schema.$Array<Schema.String>;
|
|
154
|
+
}>, {}>;
|
|
155
|
+
/** The model's typed proposal for a brief; checked before anything is written. */
|
|
156
|
+
export declare class EpicBriefProposal extends EpicBriefProposal_base {
|
|
157
|
+
}
|
|
158
|
+
export declare const programSelectionJsonSchema: JsonSchema;
|
|
159
|
+
export declare const epicBriefProposalJsonSchema: JsonSchema;
|
|
160
|
+
export interface AssembleOptions {
|
|
161
|
+
readonly epicId: string;
|
|
162
|
+
readonly request: string;
|
|
163
|
+
readonly legacy: string;
|
|
164
|
+
readonly programs: ReadonlyArray<ConsideredProgram>;
|
|
165
|
+
readonly proposal: EpicBriefProposal;
|
|
166
|
+
/** The brief this one revises: its unanswered points the proposal did not restate are kept. */
|
|
167
|
+
readonly previous?: EpicBrief;
|
|
168
|
+
/** Problems the fix round could not clear: raised as `[check]` open points. */
|
|
169
|
+
readonly problems?: ReadonlyArray<BriefProblem>;
|
|
170
|
+
}
|
|
171
|
+
export declare const checkMark = "[check]";
|
|
172
|
+
/**
|
|
173
|
+
* The next draft: never approved, feedback consumed, open points renumbered.
|
|
174
|
+
* Answered points are folded in by the revision and go, except answered
|
|
175
|
+
* `[check]` points: those are the human overriding a check (a scenario
|
|
176
|
+
* refine dropped, kept on purpose) and stay as the record of it.
|
|
177
|
+
*/
|
|
178
|
+
export declare const assembleBrief: (options: AssembleOptions) => EpicBrief;
|
|
179
|
+
export type LoopAction = "propose" | "revise" | "halt" | "await-approval" | "validate";
|
|
180
|
+
/** What one run does, decided from the file alone. */
|
|
181
|
+
export declare const loopAction: (brief: EpicBrief | undefined) => LoopAction;
|
|
182
|
+
/** What a revision changed, in lines a person reads; empty when nothing did. */
|
|
183
|
+
export declare const diffBriefs: (previous: EpicBrief | undefined, next: EpicBrief) => ReadonlyArray<string>;
|
|
184
|
+
export {};
|
|
185
|
+
//# sourceMappingURL=EpicBrief.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EpicBrief.d.ts","sourceRoot":"","sources":["../src/EpicBrief.ts"],"names":[],"mappings":"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"}
|