@masslessai/push-todo 3.10.0 → 3.10.1
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/lib/connect.js +2 -2
- package/lib/fetch.js +12 -2
- package/lib/project-registry.js +14 -2
- package/package.json +1 -1
package/lib/connect.js
CHANGED
|
@@ -953,8 +953,8 @@ async function registerProjectWithBackend(apiKey, clientType = 'claude-code', ke
|
|
|
953
953
|
const CLIENT_TO_ACTION_TYPE = {
|
|
954
954
|
'claude-code': 'claude-code',
|
|
955
955
|
'openai-codex': 'openai-codex',
|
|
956
|
-
'openclaw': '
|
|
957
|
-
'clawdbot': '
|
|
956
|
+
'openclaw': 'openclaw',
|
|
957
|
+
'clawdbot': 'openclaw', // legacy alias
|
|
958
958
|
};
|
|
959
959
|
|
|
960
960
|
// ============================================================================
|
package/lib/fetch.js
CHANGED
|
@@ -58,13 +58,22 @@ function decryptTaskFields(task) {
|
|
|
58
58
|
* @returns {Promise<void>}
|
|
59
59
|
*/
|
|
60
60
|
export async function listTasks(options = {}) {
|
|
61
|
-
// Determine git remote
|
|
61
|
+
// Determine git remote and action type for scoping
|
|
62
62
|
let gitRemote = null;
|
|
63
|
+
let actionType = null;
|
|
63
64
|
if (!options.allProjects) {
|
|
64
65
|
gitRemote = getGitRemote();
|
|
65
66
|
if (!gitRemote && isGitRepo()) {
|
|
66
67
|
console.error(yellow('Warning: In a git repo but no remote configured.'));
|
|
67
68
|
}
|
|
69
|
+
// Look up action type from project registry for proper multi-agent scoping
|
|
70
|
+
if (gitRemote) {
|
|
71
|
+
const registry = getRegistry();
|
|
72
|
+
const project = registry.findProject(gitRemote);
|
|
73
|
+
if (project) {
|
|
74
|
+
actionType = project.actionType;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
68
77
|
}
|
|
69
78
|
|
|
70
79
|
// Fetch tasks
|
|
@@ -72,7 +81,8 @@ export async function listTasks(options = {}) {
|
|
|
72
81
|
backlogOnly: options.backlog,
|
|
73
82
|
includeBacklog: options.includeBacklog,
|
|
74
83
|
completedOnly: options.completed,
|
|
75
|
-
includeCompleted: options.includeCompleted
|
|
84
|
+
includeCompleted: options.includeCompleted,
|
|
85
|
+
actionType,
|
|
76
86
|
});
|
|
77
87
|
|
|
78
88
|
// Decrypt if E2EE is available
|
package/lib/project-registry.js
CHANGED
|
@@ -103,7 +103,7 @@ class ProjectRegistry {
|
|
|
103
103
|
* Format: "gitRemote::actionType" (e.g., "github.com/user/repo::claude-code")
|
|
104
104
|
*
|
|
105
105
|
* @param {string} gitRemote - Normalized git remote
|
|
106
|
-
* @param {string} actionType - Action type (e.g., "claude-code", "
|
|
106
|
+
* @param {string} actionType - Action type (e.g., "claude-code", "openclaw")
|
|
107
107
|
* @returns {string}
|
|
108
108
|
*/
|
|
109
109
|
_makeKey(gitRemote, actionType) {
|
|
@@ -116,7 +116,7 @@ class ProjectRegistry {
|
|
|
116
116
|
* @param {string} gitRemote - Normalized git remote (e.g., "github.com/user/repo")
|
|
117
117
|
* @param {string} localPath - Absolute local path
|
|
118
118
|
* @param {Object} [actionMeta] - Action metadata from register-project response
|
|
119
|
-
* @param {string} [actionMeta.actionType] - Action type (e.g., "claude-code", "
|
|
119
|
+
* @param {string} [actionMeta.actionType] - Action type (e.g., "claude-code", "openclaw")
|
|
120
120
|
* @param {string} [actionMeta.actionId] - Action UUID
|
|
121
121
|
* @param {string} [actionMeta.actionName] - Action display name
|
|
122
122
|
* @returns {boolean} True if newly registered, false if updated existing
|
|
@@ -345,6 +345,18 @@ class ProjectRegistry {
|
|
|
345
345
|
return Object.keys(this._data.projects).length;
|
|
346
346
|
}
|
|
347
347
|
|
|
348
|
+
/**
|
|
349
|
+
* Find a project entry by gitRemote and optional actionType.
|
|
350
|
+
* Public wrapper for _findProject.
|
|
351
|
+
*
|
|
352
|
+
* @param {string} gitRemote
|
|
353
|
+
* @param {string} [actionType]
|
|
354
|
+
* @returns {Object|null} Project entry with {gitRemote, localPath, actionType, ...}
|
|
355
|
+
*/
|
|
356
|
+
findProject(gitRemote, actionType) {
|
|
357
|
+
return this._findProject(gitRemote, actionType);
|
|
358
|
+
}
|
|
359
|
+
|
|
348
360
|
/**
|
|
349
361
|
* Check if a project is registered.
|
|
350
362
|
* Checks both composite keys and plain gitRemote.
|