Commit Graph
22 Commits
Author SHA1 Message Date
AIOSAI e0811fcf93 fix: #692 builder->aipass_framework legacy migration + birth-cert template; #694 test-order pollution (prax fixture scope + skills hermetic tests). Verified: repro pair passes, 1576 tests green, Vera dry-run plans exactly 2 migrations zero writes. 2026-07-12 00:02:32 -07:00
AIOSAI d511576fc0 DPLAN-0239 owner seating permanent+self-healing, fixes #693 (VERA seated, is_owner @vera=True). ROOT CAUSE: pre-2026-07-10 projects seated owner only in the self-editable passport, never the sealed registry (old ensure_project_has_owner bailed on passport owner:true without writing registry) -> 8/8 external projects unseated, get_owner None -> guard refused @vera watchdog/feedback/wake; + registry_id was a PROJECT id copied everywhere (13 AIPass entries shared one, metadata.id absent), drifting on registry recreation. IDENTITY MODEL (Patrick ruled): metadata.id=project credential (passports conform, majority-consensus restore); entry registry_id=set-once PER-CITIZEN UUID minted at add_to_registry; entry owner:true=the gate, ONE heuristic pick_owner_branch (manager->passport-owner->first-created) shared by create+reconcile. NEW: spawn sync-registry --check(--json, 7 flags, pinned schema)/--fix(--dry-run fully read-only, idempotent, never moves a seated owner); aipass doctor renders flags, doctor --fix/install/init-update delegate repair to spawn (the missing 0231 PART-4 retro-trigger, works from external project dirs); adopt path now seats; placeholders resolves registry from target dir not CWD, fails loud; hooks auto_watchdog injects real Monitor-tool command w/ @target (was dead one-liner + run_in_background which cannot wake). 4 dispatch rounds; devpulse verify caught 4 gaps round-1 tests missed (schema divergence->pinned v2, dry-run wrote via old-sync fix=True, unanimous->majority consensus vs BACKUP outlier, dual seating heuristic). DEPLOYED: AIPass dogfooded (restore metadata.id 7087bb93 majority 13/14, 16 citizen UIDs, --check clean, doctor owner OK) + 6 external projects reconciled/verified clean incl Vera-Studio (Seat VERA + 3 UIDs). Suites: spawn 343, aipass 673, hooks 961; full-repo 9364 pass (1 pre-existing skills litter -> #694). CHANGELOG updated. 2026-07-11 17:15:47 -07:00
AIOSAI 13463c0ce0 feat(spawn): rename builder->aipass_framework, {{CITIZEN_CLASS}} placeholder, retire birthright, per-project registry targeting (TDPLAN-0010, FPLAN-0294) 2026-07-01 08:16:54 -07:00
AIOSAIandClaude Opus 4.8 ccc8d6a97b fix(spawn): dry-run-default + path-based update engine — kill #636 branch-scrambler (TDPLAN-0006 P0+P1)
#636: drone @spawn update would scramble every branch's identity/memory in
one command. On a branch created seconds earlier, --dry-run proposed 30 renames
rotating identity dirs (apps->.trinity->.seedgo->.claude->.archive->.aipass),
README->DASHBOARD, and deep-merged stale template into live .trinity/. Root
cause: the CREATE path regenerated template-registry IDs in filesystem-walk
order (!= the master's hand-crafted IDs), so content-hash + rename-detection
saw a mismatch on a pristine branch. update --all would have destroyed all 13
citizens at once.

P0 — safety by default:
- update + repair are now dry-run by default; --apply required to write.
  Forgotten flag = safe preview-only no-op. --dry-run kept as alias.
- doctor_fix.py repair suggestions emit the matching --apply form
  (+ aipass test_doctor_fix updated to the new contract).

P1 — engine rebuild (update_ops.py v2.0):
- Path-based named-managed-files model replaces whole-tree hash-diff +
  rename-detection. ID divergence is moot — IDs are no longer used.
- .trinity/*, DASHBOARD.local.json, artifacts/birth_certificate.json,
  .seedgo/bypass.json = delivered on CREATE only, NEVER touched on update.
- Old ID engine (change_detection.py, reconcile.py) + orphaned tests deleted.

Verified on fresh sandbox: update --dry-run = 0 renames / 0 updates / 0
additions (create==update invariant); no-flag run = dry-run preview, filesystem
byte-identical; 313 spawn tests green; seedgo 100% (all 36 standards).

Closes #636. P2/P3/P4 (shared lib, seam, .recovery relocate) to follow.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-06 22:54:09 -07:00
AIOSAI 60c36cccc6 feat: seedgo 100% compliance across all 12 branches + close-pr command 2026-05-16 19:55:47 -07:00
AIOSAI 482f4e7b06 docs: update 7 branch READMEs with accurate state + switch dispatch default to sonnet + codex setup + gitignore memory_pool 2026-05-16 16:41:02 -07:00
AIOSAI 2070ec1ea9 feat: structure repair system + init hardening + .venv convention + scaffold source-of-truth
- Build repair module (spawn): move_branch, cleanup_pollution, dry-run, ARCHIVE_EXCLUDE
- Build doctor --fix (aipass): remediation reports, --json output
- Execute Compass repair: cleaned init pollution, relocated navigator
- Execute AIPL repair: moved polyglot to src/aipl/polyglot/
- Add _guard_init() to bootstrap.py: blocks init inside agents/projects at function level
- Add parent-passport check to spawn core.py: prevents nesting
- Scanner: +_SCAN_SKIP_DIRS, +project root exclusion, +package-aware placement
- .venv convention: external projects symlink to AIPass/.venv, init creates, update adds, doctor detects
- Scaffold: CLAUDE.md/AGENTS.md/GEMINI.md copy from AIPass source files
- Global prompt: copy from .aipass/project_global_prompt.md template
- Update output: shows what changed (not just generic success message)
- Registry auto-heal: sync_registry detects ../paths escaping project, update triggers heal
- CLAUDE.md reformatted to PROMPT_STYLE.md
- Tests updated for new init/update behavior (source-copy, guard, .venv)
2026-05-15 23:17:44 -07:00
patrickand@devpulse a530c83a63 feat(system): fix(setup): add ensurepip check to prevent broken venv on Debian/Ubuntu — closes #495
Co-Authored-By: @devpulse <devpulse@aipass>
2026-05-03 08:57:18 -07:00
AIOSAIand@spawn ffa466354d feat(system): docs(spawn): comprehensive README update — accurate commands, architecture, metrics, known issues
Co-Authored-By: @spawn <spawn@aipass>
2026-04-22 21:24:33 -07:00
AIOSAIand@devpulse de3de25912 feat(system): fix(drone): DPLAN-0141 Phase 3 — seedgo 100% (bypass dead code prototype, fix auth tests, wire unused_function bypass)
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-22 10:09:57 -07:00
AIOSAIand@devpulse 01162bb2d5 feat(system): watchdog module + identity framing revision + private project scrub — FPLAN-0186 shipped (130 tests, 5 handlers, agent/timer/schedule/registry + multi-watch mgmt), devpulse identity updated (designer + light builder + primary collaborator, CWD-is-identity principle), full scrub of private personal memory project from public repo
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-14 20:38:20 -07:00
AIOSAIand@devpulse 9b5b7f1cc8 feat(system): S80: 14-branch state audit + README Round 7 (flow/memory lifecycle, transparency) + dist/ gitignore
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-08 01:32:40 -07:00
AIOSAIand@devpulse c17d2a1575 feat(system): feat(system): DPLAN-0104 external project infrastructure — seedgo CWD-first registry, drone module routing fallback, spawn external project agent creation, devpulse branch prompt update
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-06 19:41:42 -07:00
AIOSAIand@devpulse 289c0df5ff feat(system): Nav links across 15 branch READMEs, CONTRIBUTING.md, devpulse branch prompt update
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-06 14:52:06 -07:00
AIPassand@devpulse 3b4126b0bb feat(system): Issue templates: simplified bug report + new feedback form (#196)
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-06 11:37:39 -07:00
AIPassandClaude Opus 4.6 2e2a9dce10 feat(system): 100% seedgo compliance across all 15 branches, all 33 standards (#136) (#137)
S57-S58 compliance sprint:
- Checker consolidation: testing→error_handling, test_coverage→test_quality v4.0
- 14-branch dispatch + night shift agent fixes
- New tests: json_handler, cli_routing, error_resilience, contracts across all branches
- Bypass configs for justified architectural choices (daemon plugins, flow watchdog, prax public API)
- Deep nesting refactors, unused function cleanup, architecture fixes
- Commons: 68→100% test_quality (279 tests), full bypass config
- README updated: 100% compliance, 2000+ tests

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-28 10:59:10 -07:00
AIOSAIand@spawn 9665ceda67 feat(spawn): feat(spawn): template updates, prompt refresh, gitkeep to README, module fixes
Co-Authored-By: @spawn <spawn@aipass>
2026-03-21 23:06:26 -07:00
8c3ad2657c feat(spawn): seedgo compliance cleanup — 93% to 98% (#68)
* fix(ai_mail): resolve relative mailbox_path bug + archive dead handlers

Fix get_user_by_email() and get_all_users() returning relative mailbox_path
values from registry instead of absolute paths (causing doubled paths in reply).
Added path resolution matching get_current_user() pattern.

Archive 7 unused handler files to apps/.archive/ (gitignored):
- pending_work.py — planned feature, never wired
- lock_utils.py — superseded by inbox_lock.py
- data_ops.py — consumer (error_monitor) was archived
- config_generator.py, users/load.py, registry/validate.py — scaffolded, never used
- trigger/error_handler.py — superseded by trigger branch's event system

Added test_user_paths.py (13 tests) covering absolute path resolution.

Co-Authored-By: @ai_mail <ai_mail@aipass>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* feat(spawn): seedgo compliance cleanup — 93% to 98%

Archive legacy files (dev.local.md, ai_mail.local/, .seed/). Update META
Modified dates on 22 files. Update README architecture tree and freshness.
Fix 15 Pyright unused warnings. Add introspection no-args gates to 6
modules. Wire json_handler + log_operation to 15 operational files. Add
seedgo bypass for 5 pure data files and log_structure. Remove deprecated
dev.local.md from builder template.

Co-Authored-By: @spawn <spawn@aipass>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: @ai_mail <ai_mail@aipass>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: @spawn <spawn@aipass>
2026-03-17 16:44:50 -07:00
AIOSAIandClaude Opus 4.6 2099adda72 feat(spawn): citizen classes, setup script, gitignore, README rewrite
- Spawn: builder/birthright templates replace agent.template, passport command,
  class-aware create/update (FPLAN-0009)
- setup.sh: one-command install (venv, pip, hooks, registry generation)
- .gitignore: comprehensive coverage for all runtime state (.trinity/,
  .ai_mail.local/, DASHBOARD.local.json, *_json/, logs/, etc.)
- README.md: rewritten for accuracy — removed fictional plugin docs,
  fixed architecture pattern, corrected module statuses
- Hooks moved to global ~/.claude/settings.json (absolute paths)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 22:06:28 -08:00
Input-X 2b525cfa4d update 2026-03-07 10:26:35 +00:00
Input-X 548abf9b67 update 2026-03-07 04:51:37 +00:00
AIOSAIandClaude Opus 4.6 3b45824dc6 FPLAN-0410 repo cleanup + integration test bug fixes
VERA cleanup (FPLAN-0410):
- Remove all /home/aipass hardcoded paths (portability)
- Remove internal Telegram bot code from public repo (6k+ lines)
- Remove runtime logs, .claude/settings.local.json, stale files
- Clean READMEs across all branches
- Restructure spawn handlers into proper 3-layer architecture
- Add __init__.py files for proper package imports
- Update seedgo standards for public repo context
- Add log_structure standard to seedgo

Integration test bug fixes:
- Fix double @@ display in drone introspection output
- Fix spawn registry resolving to wrong file (walk up from package root)
- Fix email sender identity always showing as @ai_mail (pass AIPASS_CALLER_CWD)
- Fix branch_detection.py relative path resolution against CWD instead of registry dir
- Add .trinity/passport.json detection for spawned agents
- Archive duplicate json_ops.py, update imports to canonical json_handler
- Update .gitignore for runtime logs and .claude/ dirs

Tested end-to-end in Docker container (aipass-test:latest):
- Spawn → register → send email → receive → reply all verified working

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-06 15:29:16 -08:00