@hasna/loops 0.3.33 → 0.3.34

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/cli/index.js CHANGED
@@ -5254,7 +5254,7 @@ function buildScriptInventoryReport(store, opts = {}) {
5254
5254
  // package.json
5255
5255
  var package_default = {
5256
5256
  name: "@hasna/loops",
5257
- version: "0.3.33",
5257
+ version: "0.3.34",
5258
5258
  description: "Persistent local loop and workflow runner for deterministic commands and headless AI coding agents",
5259
5259
  type: "module",
5260
5260
  main: "dist/index.js",
@@ -6886,16 +6886,21 @@ function taskListId(task) {
6886
6886
  function taskProjectId(task) {
6887
6887
  return taskField(task, ["project_id", "projectId"]);
6888
6888
  }
6889
+ function taskDescriptionProjectPath(task) {
6890
+ const text = taskField(task, ["description", "body"]);
6891
+ const match = text?.match(/^\s*(?:Repository|Repo|Project path|Project|Working dir|Working directory):\s*(\/[^\r\n]+)/im);
6892
+ return match?.[1]?.trim();
6893
+ }
6889
6894
  function taskProjectPath(task) {
6890
6895
  const metadata = objectField(task.metadata) ?? {};
6891
- return taskField(task, ["working_dir", "workingDir", "project_path", "projectPath", "cwd"]) ?? taskEventField(metadata, ["working_dir", "workingDir", "project_path", "projectPath", "project_canonical_path", "cwd"]);
6896
+ return taskField(task, ["working_dir", "workingDir", "project_path", "projectPath", "cwd"]) ?? taskEventField(metadata, ["working_dir", "workingDir", "project_path", "projectPath", "project_canonical_path", "cwd"]) ?? taskDescriptionProjectPath(task);
6892
6897
  }
6893
6898
  function taskDrainEvent(task) {
6894
6899
  const taskId = taskField(task, ["id", "task_id", "taskId"]);
6895
6900
  if (!taskId)
6896
6901
  throw new Error("todos ready returned a task without an id");
6897
6902
  const metadata = objectField(task.metadata) ?? {};
6898
- const workingDir = taskField(task, ["working_dir", "workingDir", "project_path", "projectPath", "cwd"]);
6903
+ const workingDir = taskProjectPath(task);
6899
6904
  const data = {
6900
6905
  ...task,
6901
6906
  id: taskId,
@@ -4574,7 +4574,7 @@ function enableStartup(result) {
4574
4574
  // package.json
4575
4575
  var package_default = {
4576
4576
  name: "@hasna/loops",
4577
- version: "0.3.33",
4577
+ version: "0.3.34",
4578
4578
  description: "Persistent local loop and workflow runner for deterministic commands and headless AI coding agents",
4579
4579
  type: "module",
4580
4580
  main: "dist/index.js",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hasna/loops",
3
- "version": "0.3.33",
3
+ "version": "0.3.34",
4
4
  "description": "Persistent local loop and workflow runner for deterministic commands and headless AI coding agents",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",