@atolis-hq/wake 0.3.41 → 0.3.42

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.
@@ -108,4 +108,4 @@ export function resolveWakeVersion(options = {}) {
108
108
  return `g${headHash.slice(0, 7)}`;
109
109
  return '0.1.0-dev';
110
110
  }
111
- export const wakeVersion = "g8fc911f";
111
+ export const wakeVersion = "g2f6974d";
@@ -23,8 +23,7 @@ export class StartWorkflow {
23
23
  this.definitions = definitions;
24
24
  }
25
25
  async execute(command, context) {
26
- const item = await this.work.get(command.workItemId);
27
- if (item === null || item.state !== WorkStatus.Open)
26
+ if (!(await this.isWorkItemOpen(command.workItemId)))
28
27
  throw new Error('WorkItem must exist and be open');
29
28
  const { definition, fingerprint } = this.definitions.currentDefinition(command.workflowName);
30
29
  const existing = await this.repository.load(command.workflowInstanceId);
@@ -53,6 +52,12 @@ export class StartWorkflow {
53
52
  await this.repository.append(command.workflowInstanceId, 0, decision.events);
54
53
  return (await this.repository.loadRequired(command.workflowInstanceId)).view;
55
54
  }
55
+ async isWorkItemOpen(workItemId) {
56
+ const item = await this.work.get(workItemId);
57
+ if (item === null || item.state !== WorkStatus.Open)
58
+ return false;
59
+ return true;
60
+ }
56
61
  definitionFor(view) {
57
62
  return this.definitions.resolve(view);
58
63
  }
@@ -4,6 +4,8 @@ import { ActivityEventType, PullRequestCheckState, selectActivityEvent, } from '
4
4
  // status, and predicate all agree with the incoming event.
5
5
  export async function matchWatches(loaded, event, workflows, context) {
6
6
  const matches = await Promise.all(loaded.map(async ({ view: parent, sequence }) => {
7
+ if (!(await workflows.isWorkItemOpen(parent.workItemId)))
8
+ return [];
7
9
  const definition = context === undefined
8
10
  ? await workflows.definitionFor(parent)
9
11
  : await workflows.definitionForOperation(parent, sequence, context);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atolis-hq/wake",
3
- "version": "0.3.41",
3
+ "version": "0.3.42",
4
4
  "description": "Local autonomous agent control plane for software development",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {