@awcp/core 0.0.1 → 0.0.3

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.
@@ -1,28 +1,16 @@
1
1
  /**
2
2
  * AWCP Error Codes
3
- *
4
- * Standard error codes defined in AWCP v1 specification
5
3
  */
6
4
  export declare const ErrorCodes: {
7
- /** Remote declined collaboration */
8
5
  readonly DECLINED: "DECLINED";
9
- /** Missing dependency (e.g., sshfs not installed) */
10
6
  readonly DEP_MISSING: "DEP_MISSING";
11
- /** Workspace too large for remote mount collaboration */
12
7
  readonly WORKSPACE_TOO_LARGE: "WORKSPACE_TOO_LARGE";
13
- /** Mount point denied by policy */
14
- readonly MOUNTPOINT_DENIED: "MOUNTPOINT_DENIED";
15
- /** Lease expired before START */
8
+ readonly WORKDIR_DENIED: "WORKDIR_DENIED";
16
9
  readonly START_EXPIRED: "START_EXPIRED";
17
- /** Lease expired during execution */
18
10
  readonly EXPIRED: "EXPIRED";
19
- /** Authentication failed */
20
11
  readonly AUTH_FAILED: "AUTH_FAILED";
21
- /** Mount operation failed */
22
- readonly MOUNT_FAILED: "MOUNT_FAILED";
23
- /** Task execution failed */
12
+ readonly SETUP_FAILED: "SETUP_FAILED";
24
13
  readonly TASK_FAILED: "TASK_FAILED";
25
- /** Cancelled by user or system */
26
14
  readonly CANCELLED: "CANCELLED";
27
15
  };
28
16
  export type ErrorCode = typeof ErrorCodes[keyof typeof ErrorCodes];
@@ -69,15 +57,15 @@ export declare class WorkspaceTooLargeError extends AwcpError {
69
57
  }, hint?: string, delegationId?: string);
70
58
  }
71
59
  /**
72
- * Error: Mount point denied by policy
60
+ * Error: Work directory denied by policy
73
61
  */
74
- export declare class MountPointDeniedError extends AwcpError {
75
- constructor(mountPoint: string, hint?: string, delegationId?: string);
62
+ export declare class WorkDirDeniedError extends AwcpError {
63
+ constructor(workDir: string, hint?: string, delegationId?: string);
76
64
  }
77
65
  /**
78
- * Error: Mount operation failed
66
+ * Error: Transport setup failed
79
67
  */
80
- export declare class MountFailedError extends AwcpError {
68
+ export declare class SetupFailedError extends AwcpError {
81
69
  constructor(reason: string, hint?: string, delegationId?: string);
82
70
  }
83
71
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,UAAU;IACrB,oCAAoC;;IAEpC,qDAAqD;;IAErD,yDAAyD;;IAEzD,mCAAmC;;IAEnC,iCAAiC;;IAEjC,qCAAqC;;IAErC,4BAA4B;;IAE5B,6BAA6B;;IAE7B,4BAA4B;;IAE5B,kCAAkC;;CAE1B,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,OAAO,UAAU,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAEnE;;GAEG;AACH,qBAAa,SAAU,SAAQ,KAAK;aAEhB,IAAI,EAAE,SAAS;aAEf,IAAI,CAAC,EAAE,MAAM;aACb,YAAY,CAAC,EAAE,MAAM;gBAHrB,IAAI,EAAE,SAAS,EAC/B,OAAO,EAAE,MAAM,EACC,IAAI,CAAC,EAAE,MAAM,YAAA,EACb,YAAY,CAAC,EAAE,MAAM,YAAA;IAMvC,cAAc;;;;;CAOf;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;gBAC9B,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;CAIlE;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,SAAS;aAEjC,UAAU,EAAE,MAAM;gBAAlB,UAAU,EAAE,MAAM,EAClC,IAAI,CAAC,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM;CAUxB;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,SAAS;aAEjC,KAAK,EAAE;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B;gBAJe,KAAK,EAAE;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,EACD,IAAI,CAAC,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM;CAUxB;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,SAAS;gBACtC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;CASrE;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,SAAS;gBACjC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;CASjE;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;gBAChC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;CASjE;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,SAAS;gBAE5C,WAAW,GAAE,OAAe,EAC5B,YAAY,CAAC,EAAE,MAAM;CAYxB;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;gBAE1C,MAAM,GAAE,MAAgC,EACxC,IAAI,CAAC,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM;CAUxB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;CAWb,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,OAAO,UAAU,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAEnE;;GAEG;AACH,qBAAa,SAAU,SAAQ,KAAK;aAEhB,IAAI,EAAE,SAAS;aAEf,IAAI,CAAC,EAAE,MAAM;aACb,YAAY,CAAC,EAAE,MAAM;gBAHrB,IAAI,EAAE,SAAS,EAC/B,OAAO,EAAE,MAAM,EACC,IAAI,CAAC,EAAE,MAAM,YAAA,EACb,YAAY,CAAC,EAAE,MAAM,YAAA;IAMvC,cAAc;;;;;CAOf;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;gBAC9B,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;CAIlE;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,SAAS;aAEjC,UAAU,EAAE,MAAM;gBAAlB,UAAU,EAAE,MAAM,EAClC,IAAI,CAAC,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM;CAUxB;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,SAAS;aAEjC,KAAK,EAAE;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B;gBAJe,KAAK,EAAE;QACrB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,EACD,IAAI,CAAC,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM;CAUxB;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,SAAS;gBACnC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;CASlE;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,SAAS;gBACjC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;CASjE;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;gBAChC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM;CASjE;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,SAAS;gBAClC,WAAW,GAAE,OAAe,EAAE,YAAY,CAAC,EAAE,MAAM;CAWhE;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;gBAE1C,MAAM,GAAE,MAAgC,EACxC,IAAI,CAAC,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM;CAUxB"}
@@ -1,28 +1,16 @@
1
1
  /**
2
2
  * AWCP Error Codes
3
- *
4
- * Standard error codes defined in AWCP v1 specification
5
3
  */
6
4
  export const ErrorCodes = {
7
- /** Remote declined collaboration */
8
5
  DECLINED: 'DECLINED',
9
- /** Missing dependency (e.g., sshfs not installed) */
10
6
  DEP_MISSING: 'DEP_MISSING',
11
- /** Workspace too large for remote mount collaboration */
12
7
  WORKSPACE_TOO_LARGE: 'WORKSPACE_TOO_LARGE',
13
- /** Mount point denied by policy */
14
- MOUNTPOINT_DENIED: 'MOUNTPOINT_DENIED',
15
- /** Lease expired before START */
8
+ WORKDIR_DENIED: 'WORKDIR_DENIED',
16
9
  START_EXPIRED: 'START_EXPIRED',
17
- /** Lease expired during execution */
18
10
  EXPIRED: 'EXPIRED',
19
- /** Authentication failed */
20
11
  AUTH_FAILED: 'AUTH_FAILED',
21
- /** Mount operation failed */
22
- MOUNT_FAILED: 'MOUNT_FAILED',
23
- /** Task execution failed */
12
+ SETUP_FAILED: 'SETUP_FAILED',
24
13
  TASK_FAILED: 'TASK_FAILED',
25
- /** Cancelled by user or system */
26
14
  CANCELLED: 'CANCELLED',
27
15
  };
28
16
  /**
@@ -73,27 +61,27 @@ export class DependencyMissingError extends AwcpError {
73
61
  export class WorkspaceTooLargeError extends AwcpError {
74
62
  stats;
75
63
  constructor(stats, hint, delegationId) {
76
- super(ErrorCodes.WORKSPACE_TOO_LARGE, 'Workspace exceeds size limits for remote mount collaboration', hint ?? 'Consider selecting a smaller subdirectory or excluding large files', delegationId);
64
+ super(ErrorCodes.WORKSPACE_TOO_LARGE, 'Workspace exceeds size limits', hint ?? 'Consider selecting a smaller subdirectory or excluding large files', delegationId);
77
65
  this.stats = stats;
78
66
  this.name = 'WorkspaceTooLargeError';
79
67
  }
80
68
  }
81
69
  /**
82
- * Error: Mount point denied by policy
70
+ * Error: Work directory denied by policy
83
71
  */
84
- export class MountPointDeniedError extends AwcpError {
85
- constructor(mountPoint, hint, delegationId) {
86
- super(ErrorCodes.MOUNTPOINT_DENIED, `Mount point denied by policy: ${mountPoint}`, hint, delegationId);
87
- this.name = 'MountPointDeniedError';
72
+ export class WorkDirDeniedError extends AwcpError {
73
+ constructor(workDir, hint, delegationId) {
74
+ super(ErrorCodes.WORKDIR_DENIED, `Work directory denied by policy: ${workDir}`, hint, delegationId);
75
+ this.name = 'WorkDirDeniedError';
88
76
  }
89
77
  }
90
78
  /**
91
- * Error: Mount operation failed
79
+ * Error: Transport setup failed
92
80
  */
93
- export class MountFailedError extends AwcpError {
81
+ export class SetupFailedError extends AwcpError {
94
82
  constructor(reason, hint, delegationId) {
95
- super(ErrorCodes.MOUNT_FAILED, `Mount failed: ${reason}`, hint, delegationId);
96
- this.name = 'MountFailedError';
83
+ super(ErrorCodes.SETUP_FAILED, `Setup failed: ${reason}`, hint, delegationId);
84
+ this.name = 'SetupFailedError';
97
85
  }
98
86
  }
99
87
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ export type DelegationEvent = {
20
20
  type: 'SEND_START';
21
21
  message: StartMessage;
22
22
  } | {
23
- type: 'MOUNT_COMPLETE';
23
+ type: 'SETUP_COMPLETE';
24
24
  } | {
25
25
  type: 'RECEIVE_DONE';
26
26
  message: DoneMessage;
@@ -45,27 +45,13 @@ export interface TransitionResult {
45
45
  }
46
46
  /**
47
47
  * Delegation state machine
48
- *
49
- * Manages state transitions for a single delegation
50
48
  */
51
49
  export declare class DelegationStateMachine {
52
50
  private state;
53
51
  constructor(initialState?: DelegationState);
54
- /**
55
- * Get current state
56
- */
57
52
  getState(): DelegationState;
58
- /**
59
- * Check if delegation is in a terminal state
60
- */
61
53
  isTerminal(): boolean;
62
- /**
63
- * Process an event and transition state
64
- */
65
54
  transition(event: DelegationEvent): TransitionResult;
66
- /**
67
- * Force state (use with caution, mainly for restoration)
68
- */
69
55
  forceState(state: DelegationState): void;
70
56
  private getTargetState;
71
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state-machine/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,WAAW,EACX,UAAU,EACV,aAAa,EACb,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACb,MAAM,sBAAsB,CAAC;AAiB9B;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAE/D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,eAAe,EACrB,EAAE,EAAE,eAAe,GAClB,OAAO,CAET;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,aAAa,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,OAAO,EAAE,aAAa,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC1B;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEvB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,eAAe,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,KAAK,CAA8B;gBAE/B,YAAY,CAAC,EAAE,eAAe;IAM1C;;OAEG;IACH,QAAQ,IAAI,eAAe;IAI3B;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB;IA0BpD;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAIxC,OAAO,CAAC,cAAc;CAkCvB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACzB,WAAW,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;CACxC,GAAG,UAAU,CAYb;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,WAAW,GACnB,UAAU,CA+BZ"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state-machine/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,WAAW,EACX,UAAU,EACV,aAAa,EACb,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACb,MAAM,sBAAsB,CAAC;AAiB9B;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAE/D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,eAAe,EACrB,EAAE,EAAE,eAAe,GAClB,OAAO,CAET;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,aAAa,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,OAAO,EAAE,aAAa,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC1B;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEvB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,eAAe,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,KAAK,CAA8B;gBAE/B,YAAY,CAAC,EAAE,eAAe;IAM1C,QAAQ,IAAI,eAAe;IAI3B,UAAU,IAAI,OAAO;IAIrB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB;IA0BpD,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAIxC,OAAO,CAAC,cAAc;CAiCvB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACzB,WAAW,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;CACxC,GAAG,UAAU,CAYb;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,WAAW,GACnB,UAAU,CA+BZ"}
@@ -7,10 +7,10 @@ const STATE_TRANSITIONS = {
7
7
  accepted: ['started', 'error', 'cancelled', 'expired'],
8
8
  started: ['running', 'error', 'cancelled'],
9
9
  running: ['completed', 'error', 'cancelled', 'expired'],
10
- completed: [], // Terminal state
11
- error: [], // Terminal state
12
- cancelled: [], // Terminal state
13
- expired: [], // Terminal state
10
+ completed: [],
11
+ error: [],
12
+ cancelled: [],
13
+ expired: [],
14
14
  };
15
15
  /**
16
16
  * Check if a state is terminal (no further transitions possible)
@@ -26,8 +26,6 @@ export function isValidTransition(from, to) {
26
26
  }
27
27
  /**
28
28
  * Delegation state machine
29
- *
30
- * Manages state transitions for a single delegation
31
29
  */
32
30
  export class DelegationStateMachine {
33
31
  state = 'created';
@@ -36,21 +34,12 @@ export class DelegationStateMachine {
36
34
  this.state = initialState;
37
35
  }
38
36
  }
39
- /**
40
- * Get current state
41
- */
42
37
  getState() {
43
38
  return this.state;
44
39
  }
45
- /**
46
- * Check if delegation is in a terminal state
47
- */
48
40
  isTerminal() {
49
41
  return isTerminalState(this.state);
50
42
  }
51
- /**
52
- * Process an event and transition state
53
- */
54
43
  transition(event) {
55
44
  const targetState = this.getTargetState(event);
56
45
  if (!targetState) {
@@ -73,9 +62,6 @@ export class DelegationStateMachine {
73
62
  newState: this.state,
74
63
  };
75
64
  }
76
- /**
77
- * Force state (use with caution, mainly for restoration)
78
- */
79
65
  forceState(state) {
80
66
  this.state = state;
81
67
  }
@@ -87,7 +73,7 @@ export class DelegationStateMachine {
87
73
  return this.state === 'invited' ? 'accepted' : null;
88
74
  case 'SEND_START':
89
75
  return this.state === 'accepted' ? 'started' : null;
90
- case 'MOUNT_COMPLETE':
76
+ case 'SETUP_COMPLETE':
91
77
  return this.state === 'started' ? 'running' : null;
92
78
  case 'RECEIVE_DONE':
93
79
  return this.state === 'running' ? 'completed' : null;
@@ -97,7 +83,6 @@ export class DelegationStateMachine {
97
83
  case 'CANCEL':
98
84
  return isTerminalState(this.state) ? null : 'cancelled';
99
85
  case 'EXPIRE':
100
- // Can expire from invited, accepted, or running states
101
86
  return ['invited', 'accepted', 'running'].includes(this.state)
102
87
  ? 'expired'
103
88
  : null;
@@ -129,7 +114,7 @@ export function applyMessageToDelegation(delegation, message) {
129
114
  const updated = { ...delegation, updatedAt: new Date().toISOString() };
130
115
  switch (message.type) {
131
116
  case 'ACCEPT':
132
- updated.executorMount = message.executorMount;
117
+ updated.executorWorkDir = message.executorWorkDir;
133
118
  updated.executorConstraints = message.executorConstraints;
134
119
  break;
135
120
  case 'START':
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/state-machine/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/state-machine/index.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  export * from './messages.js';
2
+ export * from './transport.js';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export * from './messages.js';
2
+ export * from './transport.js';
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC"}
@@ -25,7 +25,7 @@ export interface AuthCredential {
25
25
  /**
26
26
  * Transport types for data plane
27
27
  */
28
- export type TransportType = 'sshfs';
28
+ export type TransportType = 'sshfs' | 'archive';
29
29
  /**
30
30
  * Delegation lifecycle states
31
31
  */
@@ -34,70 +34,55 @@ export type DelegationState = 'created' | 'invited' | 'accepted' | 'started' | '
34
34
  * Task description for delegation
35
35
  */
36
36
  export interface TaskSpec {
37
- /** Short description for logging/listing */
38
37
  description: string;
39
- /** Full task prompt with goals and constraints */
40
38
  prompt: string;
41
39
  }
42
40
  /**
43
41
  * Lease configuration
44
42
  */
45
43
  export interface LeaseConfig {
46
- /** Time-to-live in seconds */
47
44
  ttlSeconds: number;
48
- /** Access mode */
49
45
  accessMode: AccessMode;
50
46
  }
51
47
  /**
52
48
  * Active lease information (after START)
53
49
  */
54
50
  export interface ActiveLease {
55
- /** Absolute expiration time (ISO 8601) */
56
51
  expiresAt: string;
57
- /** Effective access mode */
58
52
  accessMode: AccessMode;
59
53
  }
60
54
  /**
61
55
  * Workspace specification in INVITE
62
56
  */
63
57
  export interface WorkspaceSpec {
64
- /** Logical export name (not real path), e.g., "awcp/<id>" */
65
58
  exportName: string;
66
59
  }
67
60
  /**
68
61
  * Requirements for Executor to check
69
62
  */
70
63
  export interface Requirements {
71
- /** Transport type (default: sshfs) */
72
64
  transport?: TransportType;
73
65
  }
74
66
  /**
75
- * Executor mount specification in ACCEPT
67
+ * Executor work directory specification in ACCEPT
76
68
  */
77
- export interface ExecutorMount {
78
- /** Local absolute path on Executor, determined by Executor's policy */
79
- mountPoint: string;
69
+ export interface ExecutorWorkDir {
70
+ path: string;
80
71
  }
81
72
  /**
82
73
  * Sandbox profile - capability declaration by Executor
83
74
  */
84
75
  export interface SandboxProfile {
85
- /** Whether tools are restricted to mount point CWD */
86
76
  cwdOnly?: boolean;
87
- /** Whether network access is allowed */
88
77
  allowNetwork?: boolean;
89
- /** Whether command execution is allowed */
90
78
  allowExec?: boolean;
91
79
  }
92
80
  /**
93
81
  * Executor constraints in ACCEPT
94
82
  */
95
83
  export interface ExecutorConstraints {
96
- /** Actually accepted access mode (may be downgraded) */
97
84
  acceptedAccessMode?: AccessMode;
98
- /** Maximum TTL Executor allows */
99
85
  maxTtlSeconds?: number;
100
- /** Self-declared sandbox constraints */
101
86
  sandboxProfile?: SandboxProfile;
102
87
  }
103
88
  /**
@@ -109,19 +94,36 @@ export interface SshEndpoint {
109
94
  user: string;
110
95
  }
111
96
  /**
112
- * Mount information in START message
97
+ * SSH credential for certificate-based authentication
113
98
  */
114
- export interface MountInfo {
115
- /** Transport type */
99
+ export interface SshCredential {
100
+ privateKey: string;
101
+ certificate: string;
102
+ }
103
+ /**
104
+ * Work directory information in START message
105
+ */
106
+ export interface WorkDirInfo {
116
107
  transport: TransportType;
117
- /** Connection endpoint */
108
+ [key: string]: unknown;
109
+ }
110
+ /**
111
+ * SSHFS-specific work directory information
112
+ */
113
+ export interface SshfsWorkDirInfo extends WorkDirInfo {
114
+ transport: 'sshfs';
118
115
  endpoint: SshEndpoint;
119
- /** Export path or locator token */
120
116
  exportLocator: string;
121
- /** Temporary credential (SSH key or token) */
122
- credential: string;
123
- /** Optional mount parameters */
124
- mountOptions?: Record<string, string>;
117
+ credential: SshCredential;
118
+ options?: Record<string, string>;
119
+ }
120
+ /**
121
+ * Archive-specific work directory information
122
+ */
123
+ export interface ArchiveWorkDirInfo extends WorkDirInfo {
124
+ transport: 'archive';
125
+ workspaceBase64: string;
126
+ checksum: string;
125
127
  }
126
128
  /**
127
129
  * Base message structure
@@ -133,7 +135,6 @@ export interface BaseMessage {
133
135
  }
134
136
  /**
135
137
  * INVITE message: Delegator → Executor
136
- * Initiates collaboration request
137
138
  */
138
139
  export interface InviteMessage extends BaseMessage {
139
140
  type: 'INVITE';
@@ -141,60 +142,89 @@ export interface InviteMessage extends BaseMessage {
141
142
  lease: LeaseConfig;
142
143
  workspace: WorkspaceSpec;
143
144
  requirements?: Requirements;
144
- /**
145
- * Optional authentication for paid/restricted Executor services.
146
- * Executor can validate this in onInvite hook before accepting.
147
- */
148
145
  auth?: AuthCredential;
149
146
  }
150
147
  /**
151
148
  * ACCEPT message: Executor → Delegator
152
- * Confirms acceptance with mount point
153
149
  */
154
150
  export interface AcceptMessage extends BaseMessage {
155
151
  type: 'ACCEPT';
156
- executorMount: ExecutorMount;
152
+ executorWorkDir: ExecutorWorkDir;
157
153
  executorConstraints?: ExecutorConstraints;
158
154
  }
159
155
  /**
160
156
  * START message: Delegator → Executor
161
- * Authorizes and provides credentials
162
157
  */
163
158
  export interface StartMessage extends BaseMessage {
164
159
  type: 'START';
165
160
  lease: ActiveLease;
166
- mount: MountInfo;
161
+ workDir: WorkDirInfo;
167
162
  }
168
163
  /**
169
- * DONE message: Executor → Delegator
170
- * Reports successful completion
164
+ * DONE message: Executor → Delegator (via SSE)
171
165
  */
172
166
  export interface DoneMessage extends BaseMessage {
173
167
  type: 'DONE';
174
- /** Summary of what was accomplished */
175
168
  finalSummary: string;
176
- /** Files Executor suggests Delegator to review */
177
169
  highlights?: string[];
178
- /** Additional notes */
179
170
  notes?: string;
180
171
  }
181
172
  /**
182
173
  * ERROR message: Either direction
183
- * Reports failure or rejection
184
174
  */
185
175
  export interface ErrorMessage extends BaseMessage {
186
176
  type: 'ERROR';
187
- /** Error code */
188
177
  code: string;
189
- /** Human-readable description */
190
178
  message: string;
191
- /** Suggested fix */
192
179
  hint?: string;
193
180
  }
194
181
  /**
195
182
  * Union type for all AWCP messages
196
183
  */
197
184
  export type AwcpMessage = InviteMessage | AcceptMessage | StartMessage | DoneMessage | ErrorMessage;
185
+ /**
186
+ * Task event types for SSE streaming
187
+ */
188
+ export type TaskEventType = 'status' | 'done' | 'error';
189
+ /**
190
+ * Base task event structure
191
+ */
192
+ export interface BaseTaskEvent {
193
+ delegationId: string;
194
+ type: TaskEventType;
195
+ timestamp: string;
196
+ }
197
+ /**
198
+ * Status update event
199
+ */
200
+ export interface TaskStatusEvent extends BaseTaskEvent {
201
+ type: 'status';
202
+ status: 'running' | 'progress';
203
+ message?: string;
204
+ progress?: number;
205
+ }
206
+ /**
207
+ * Task completion event
208
+ */
209
+ export interface TaskDoneEvent extends BaseTaskEvent {
210
+ type: 'done';
211
+ summary: string;
212
+ highlights?: string[];
213
+ resultBase64?: string;
214
+ }
215
+ /**
216
+ * Task error event
217
+ */
218
+ export interface TaskErrorEvent extends BaseTaskEvent {
219
+ type: 'error';
220
+ code: string;
221
+ message: string;
222
+ hint?: string;
223
+ }
224
+ /**
225
+ * Union type for all task events
226
+ */
227
+ export type TaskEvent = TaskStatusEvent | TaskDoneEvent | TaskErrorEvent;
198
228
  /**
199
229
  * Delegation record - full state of a delegation
200
230
  */
@@ -207,7 +237,7 @@ export interface Delegation {
207
237
  task: TaskSpec;
208
238
  leaseConfig: LeaseConfig;
209
239
  activeLease?: ActiveLease;
210
- executorMount?: ExecutorMount;
240
+ executorWorkDir?: ExecutorWorkDir;
211
241
  executorConstraints?: ExecutorConstraints;
212
242
  result?: {
213
243
  summary: string;
@@ -222,8 +252,4 @@ export interface Delegation {
222
252
  createdAt: string;
223
253
  updatedAt: string;
224
254
  }
225
- /** @deprecated Use ExecutorMount instead */
226
- export type RemoteMount = ExecutorMount;
227
- /** @deprecated Use ExecutorConstraints instead */
228
- export type RemoteConstraints = ExecutorConstraints;
229
255
  //# sourceMappingURL=messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/types/messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/types/messages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ /**
2
+ * Transport Adapter Interface
3
+ *
4
+ * Abstract interface that all transport implementations must implement.
5
+ * This enables pluggable transports (sshfs, archive, webdav, etc.)
6
+ */
7
+ import type { TransportType, WorkDirInfo } from './messages.js';
8
+ /**
9
+ * Parameters for preparing a transport on Delegator side
10
+ */
11
+ export interface TransportPrepareParams {
12
+ delegationId: string;
13
+ exportPath: string;
14
+ ttlSeconds: number;
15
+ }
16
+ /**
17
+ * Result from transport preparation
18
+ */
19
+ export interface TransportPrepareResult {
20
+ workDirInfo: WorkDirInfo;
21
+ }
22
+ /**
23
+ * Parameters for setting up workspace on Executor side
24
+ */
25
+ export interface TransportSetupParams {
26
+ delegationId: string;
27
+ workDirInfo: WorkDirInfo;
28
+ workDir: string;
29
+ }
30
+ /**
31
+ * Parameters for tearing down workspace on Executor side
32
+ */
33
+ export interface TransportTeardownParams {
34
+ delegationId: string;
35
+ workDir: string;
36
+ }
37
+ /**
38
+ * Result from transport teardown (optional result data)
39
+ */
40
+ export interface TransportTeardownResult {
41
+ resultBase64?: string;
42
+ }
43
+ /**
44
+ * Dependency check result
45
+ */
46
+ export interface DependencyCheckResult {
47
+ available: boolean;
48
+ hint?: string;
49
+ }
50
+ /**
51
+ * Transport Adapter Interface
52
+ *
53
+ * All transport implementations (sshfs, archive, etc.) must implement this interface.
54
+ *
55
+ * Lifecycle:
56
+ * - Delegator: prepare() -> [task runs] -> cleanup()
57
+ * - Executor: checkDependency() -> setup() -> [task runs] -> teardown()
58
+ */
59
+ export interface TransportAdapter {
60
+ readonly type: TransportType;
61
+ /**
62
+ * Prepare the transport for a delegation.
63
+ * Called after ACCEPT received, before sending START.
64
+ */
65
+ prepare(params: TransportPrepareParams): Promise<TransportPrepareResult>;
66
+ /**
67
+ * Clean up resources for a delegation.
68
+ * Called after task completion or on expiration.
69
+ */
70
+ cleanup(delegationId: string): Promise<void>;
71
+ /**
72
+ * Check if transport dependencies are available.
73
+ */
74
+ checkDependency(): Promise<DependencyCheckResult>;
75
+ /**
76
+ * Set up the workspace for task execution.
77
+ * Called after START received.
78
+ */
79
+ setup(params: TransportSetupParams): Promise<string>;
80
+ /**
81
+ * Tear down the workspace after task completion.
82
+ */
83
+ teardown(params: TransportTeardownParams): Promise<TransportTeardownResult>;
84
+ }
85
+ /**
86
+ * Transport adapter for Delegator side only
87
+ */
88
+ export interface DelegatorTransportAdapter {
89
+ readonly type: TransportType;
90
+ prepare(params: TransportPrepareParams): Promise<TransportPrepareResult>;
91
+ cleanup(delegationId: string): Promise<void>;
92
+ }
93
+ /**
94
+ * Transport adapter for Executor side only
95
+ */
96
+ export interface ExecutorTransportAdapter {
97
+ readonly type: TransportType;
98
+ checkDependency(): Promise<DependencyCheckResult>;
99
+ setup(params: TransportSetupParams): Promise<string>;
100
+ teardown(params: TransportTeardownParams): Promise<TransportTeardownResult>;
101
+ }
102
+ //# sourceMappingURL=transport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/types/transport.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAI7B;;;OAGG;IACH,OAAO,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAEzE;;;OAGG;IACH,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAI7C;;OAEG;IACH,eAAe,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAElD;;;OAGG;IACH,KAAK,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAErD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAC7E;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,OAAO,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACzE,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9C;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,eAAe,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAClD,KAAK,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrD,QAAQ,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAC7E"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Transport Adapter Interface
3
+ *
4
+ * Abstract interface that all transport implementations must implement.
5
+ * This enables pluggable transports (sshfs, archive, webdav, etc.)
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=transport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/types/transport.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awcp/core",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "description": "AWCP Protocol Core - Types, State Machine, and Error Definitions",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",