nothumanallowed 15.0.12 → 15.0.13

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nothumanallowed",
3
- "version": "15.0.12",
3
+ "version": "15.0.13",
4
4
  "description": "NotHumanAllowed — 38 AI agents, 80 tools, Studio (visual agentic workflows). Email, calendar, browser automation, screen capture, canvas, cron/heartbeat, Alexandria E2E messaging, GitHub, Notion, Slack, voice chat, free AI (Liara), 28 languages. Zero-dependency CLI.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -742,7 +742,8 @@ WORKFLOW:
742
742
  let raw = match[1].trim();
743
743
  raw = raw.replace(/,\s*}/g, '}').replace(/,\s*]/g, ']');
744
744
  toolCall = JSON.parse(raw);
745
- } catch {
745
+ } catch (parseErr) {
746
+ console.error('[TOOL-PARSE] JSON parse failed:', parseErr.message, 'raw:', match[1].slice(0, 200));
746
747
  toolResults.push({ op: 'error', result: 'JSON parse failed' });
747
748
  emit({ type: 'tool', op: 'parse_error', path: '', result: 'json_parse_failed' });
748
749
  continue;
@@ -817,11 +818,14 @@ WORKFLOW:
817
818
 
818
819
  // ── edit ──
819
820
  } else if (op === 'edit') {
821
+ console.log(`[EDIT-DEBUG] path=${relPath} oldStr.length=${oldStr?.length ?? 'null'} newStr.length=${newStr?.length ?? 'null'}`);
822
+ if (oldStr) console.log(`[EDIT-DEBUG] old first 100: ${JSON.stringify(oldStr.slice(0, 100))}`);
820
823
  const src = ProjectStore.readFile(projectName, relPath);
821
824
  if (src === null) {
822
825
  toolResults.push({ op: 'edit', path: relPath, result: 'file_not_found' });
823
826
  emit({ type: 'tool', op: 'edit', path: relPath, result: 'file_not_found' });
824
827
  } else if (src.includes(oldStr)) {
828
+ console.log(`[EDIT-DEBUG] EXACT MATCH found — applying edit`);
825
829
  // Exact match — apply directly
826
830
  const newSrc = src.replace(oldStr, newStr ?? '');
827
831
  ProjectStore.writeFile(projectName, relPath, newSrc);
@@ -830,6 +834,7 @@ WORKFLOW:
830
834
  toolResults.push({ op: 'edit', path: relPath, result: 'ok' });
831
835
  emit({ type: 'tool', op: 'edit', path: relPath, result: 'ok', oldSnippet: oldStr.slice(0, 2000), newSnippet: newStr?.slice(0, 2000) ?? '' });
832
836
  } else {
837
+ console.log(`[EDIT-DEBUG] NO exact match — trying fuzzy. src.length=${src.length} oldStr.length=${oldStr?.length}`);
833
838
  // Fuzzy match: compare lines ignoring leading/trailing whitespace
834
839
  const oldLines = oldStr.split('\n').map(l => l.trim());
835
840
  const srcLines = src.split('\n');