fix(eod): non-git + cross-OS gather; MIT relicense#18
Merged
Conversation
observe_v3.py writes observations for a non-git cwd to the root homunculus/observations.jsonl with project_id "global" (project_name stays correct), but _eod-gather.sh only walked homunculus/projects/<hash>/ and never read the root file. Writer and reader disagreed on where non-git projects live, so a full day of work in any non-git folder surfaced as 0 in /eod. - Read the root observations.jsonl too, grouping by project_name. - baseName() splits on both / and \ (Node path.basename is platform-specific), fixing mangled "files touched" when a macOS+Windows shared file mixes paths. - Skip roots that don't exist on the current machine before any git call; resolve HOME || USERPROFILE. - Merge projects by name so the same project across two machines is one entry. - Add SINAPSIS_HOMUNCULUS/SINAPSIS_SKILLS test overrides and tests/test-eod-gather.sh (8 hermetic tests). Reported by @NestorPVsf. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Replace the custom "Source Available" license (commercial rights reserved to Luis Salgado / SalgadoIA) with the standard MIT License. Update the README license badge and License section to match. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
/eod bug fixes (reported by @NestorPVsf)
Bug 1 — non-git projects vanished from
/eod.observe_v3.pywrites observations for a non-gitcwdto the roothomunculus/observations.jsonlwithproject_id: "global"(theproject_namestays correct), but_eod-gather.shonly walkedhomunculus/projects/<hash>/and never read the root. A full day of activity in any non-git folder surfaced as 0. The gather now reads the root too, grouping observations byproject_name.Bug 2 — gather not cross-OS. For a macOS + Windows shared
observations.jsonl(e.g. Nextcloud), the file mixesC:\...and/Users/...paths. Node'spath.basenameis platform-specific (POSIX build ignores\), so "files touched" came out mangled on the foreign OS, and git could run against the other machine's path. AddedbaseName()(splits on both/and\), skip roots that don't exist locally before any git call, resolveHOME || USERPROFILE, and merge projects byproject_nameacross machines.Preserves the existing canonical
_projects.jsonloader; addsSINAPSIS_HOMUNCULUS/SINAPSIS_SKILLStest overrides.Tests
tests/test-eod-gather.sh— 8 hermetic tests (root detection, name grouping, cross-OS basename, subdir+root merge, today-only filter, empty-dir, canonical loader, output shape).test-security11/11,test-gstack-separation18/18.Also: relicense to MIT
Separate commit (
chore: relicense under MIT) replaces the custom "Source Available" license with the standard MIT License; README badge + License section updated.Verified live:
/eodwent from 0 → 7 projects / 316 observations on a real machine with non-git folders.🤖 Generated with Claude Code