@joshski/dust 0.1.60 → 0.1.61

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.
@@ -0,0 +1,10 @@
1
+ import type { ReadableFileSystem } from '../cli/types';
2
+ export interface Fact {
3
+ slug: string;
4
+ title: string;
5
+ content: string;
6
+ }
7
+ /**
8
+ * Parses a fact markdown file into a structured Fact object.
9
+ */
10
+ export declare function parseFact(fileSystem: ReadableFileSystem, dustPath: string, slug: string): Promise<Fact>;
@@ -0,0 +1,48 @@
1
+ import type { FileSystem, ReadableFileSystem } from '../cli/types';
2
+ import { type Fact } from './facts';
3
+ import { type Idea, type IdeaOpenQuestion, type IdeaOption, parseOpenQuestions } from './ideas';
4
+ import { type Principle } from './principles';
5
+ import { type Task } from './tasks';
6
+ import { type CreateIdeaTransitionTaskResult, type DecomposeIdeaOptions, type OpenQuestionResponse, type ParsedCaptureIdeaTask, type WorkflowTaskMatch } from './workflow-tasks';
7
+ export type { CreateIdeaTransitionTaskResult, DecomposeIdeaOptions, Fact, Idea, IdeaOpenQuestion, IdeaOption, OpenQuestionResponse, ParsedCaptureIdeaTask, Principle, Task, WorkflowTaskMatch, };
8
+ export { parseOpenQuestions };
9
+ export interface ArtifactsRepository {
10
+ parseIdea(options: {
11
+ slug: string;
12
+ }): Promise<Idea>;
13
+ listIdeas(): Promise<string[]>;
14
+ parsePrinciple(options: {
15
+ slug: string;
16
+ }): Promise<Principle>;
17
+ listPrinciples(): Promise<string[]>;
18
+ parseFact(options: {
19
+ slug: string;
20
+ }): Promise<Fact>;
21
+ listFacts(): Promise<string[]>;
22
+ parseTask(options: {
23
+ slug: string;
24
+ }): Promise<Task>;
25
+ listTasks(): Promise<string[]>;
26
+ createRefineIdeaTask(options: {
27
+ ideaSlug: string;
28
+ description?: string;
29
+ }): Promise<CreateIdeaTransitionTaskResult>;
30
+ createDecomposeIdeaTask(options: DecomposeIdeaOptions): Promise<CreateIdeaTransitionTaskResult>;
31
+ createShelveIdeaTask(options: {
32
+ ideaSlug: string;
33
+ description?: string;
34
+ }): Promise<CreateIdeaTransitionTaskResult>;
35
+ createCaptureIdeaTask(options: {
36
+ title: string;
37
+ description: string;
38
+ buildItNow?: boolean;
39
+ }): Promise<CreateIdeaTransitionTaskResult>;
40
+ findWorkflowTaskForIdea(options: {
41
+ ideaSlug: string;
42
+ }): Promise<WorkflowTaskMatch | null>;
43
+ parseCaptureIdeaTask(options: {
44
+ taskSlug: string;
45
+ }): Promise<ParsedCaptureIdeaTask | null>;
46
+ }
47
+ export declare function buildArtifactsRepository(fileSystem: FileSystem, dustPath: string): ArtifactsRepository;
48
+ export declare function buildReadOnlyArtifactsRepository(fileSystem: ReadableFileSystem, dustPath: string): Pick<ArtifactsRepository, 'parseIdea' | 'listIdeas' | 'parsePrinciple' | 'listPrinciples' | 'parseFact' | 'listFacts' | 'parseTask' | 'listTasks' | 'findWorkflowTaskForIdea' | 'parseCaptureIdeaTask'>;
@@ -0,0 +1,12 @@
1
+ import type { ReadableFileSystem } from '../cli/types';
2
+ export interface Principle {
3
+ slug: string;
4
+ title: string;
5
+ content: string;
6
+ parentPrinciple: string | null;
7
+ subPrinciples: string[];
8
+ }
9
+ /**
10
+ * Parses a principle markdown file into a structured Principle object.
11
+ */
12
+ export declare function parsePrinciple(fileSystem: ReadableFileSystem, dustPath: string, slug: string): Promise<Principle>;
@@ -0,0 +1,13 @@
1
+ import type { ReadableFileSystem } from '../cli/types';
2
+ export interface Task {
3
+ slug: string;
4
+ title: string;
5
+ content: string;
6
+ principles: string[];
7
+ blockedBy: string[];
8
+ definitionOfDone: string[];
9
+ }
10
+ /**
11
+ * Parses a task markdown file into a structured Task object.
12
+ */
13
+ export declare function parseTask(fileSystem: ReadableFileSystem, dustPath: string, slug: string): Promise<Task>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@joshski/dust",
3
- "version": "0.1.60",
3
+ "version": "0.1.61",
4
4
  "description": "Flow state for AI coding agents",
5
5
  "type": "module",
6
6
  "bin": {
@@ -20,7 +20,7 @@
20
20
  },
21
21
  "./artifacts": {
22
22
  "import": "./dist/artifacts.js",
23
- "types": "./dist/artifacts.d.ts"
23
+ "types": "./dist/artifacts/index.d.ts"
24
24
  },
25
25
  "./istanbul/minimal-reporter": "./lib/istanbul/minimal-reporter.cjs"
26
26
  },