feat(system): seedgo v2 operational, full system audit, 14/15 branches at 99%
Three days of intensive work bringing seedgo to full operational status and driving all branches through comprehensive standards compliance. Seedgo v2.0.0: - 22 checkers active (up from 20), standards pack fully operational - New introspection standard researched from Dev-Pass, FPLAN-0017 open - Bypass system for false positives (.seedgo config) - Standards query and audit commands fully functional System-wide audit (FPLAN-0016): - All 14 auditable branches at 99%+ compliance - CLI imports standardized across all branches (console from cli.apps.modules) - handle_command(command, args) → bool contract added to all modules - print_help() function naming fixed for checker pattern matching - Handler extraction: large modules split, file I/O moved to handler layer - New handlers created across ai_mail, backup, daemon, flow, skills, spawn, seedgo Branch-specific highlights: - ai_mail: email.py split 840→420 lines, 4 new handlers - flow: dplan_flow.py 688→591 lines, 4 new handlers - seedgo: massive restructure — standards moved to handlers/aipass_standards/, old standards/ tree removed, bypass system added, diagnostics module - commons: database module added, CLI imports fixed - skills: 5 handle_commands added, help function renamed - trigger: error reporter handler, handle_command routing - All branches: consistent architecture, clean drone routing Culture doc (CLAUDE.md) added — documents AIPass philosophy, identity, memory system, and collaboration principles. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
09e759a8a4
commit
babedd9c64
@@ -1,4 +1,4 @@
|
||||
# =================== META ====================
|
||||
# =================== AIPass ====================
|
||||
# Name: core.py
|
||||
# Description: Main orchestrator for agent spawning
|
||||
# Version: 1.0.0
|
||||
@@ -23,15 +23,46 @@ from pathlib import Path
|
||||
from typing import List
|
||||
|
||||
from aipass.prax import logger
|
||||
|
||||
try:
|
||||
from aipass.cli.apps.modules.display import console
|
||||
except ImportError:
|
||||
from rich.console import Console
|
||||
console = Console()
|
||||
|
||||
from aipass.spawn.apps.handlers.metadata import get_branch_name, normalize_branch_name, detect_profile
|
||||
from aipass.spawn.apps.handlers.placeholders import build_replacements_dict, validate_no_placeholders
|
||||
from aipass.spawn.apps.handlers.file_ops import copy_template, rename_placeholder_paths, regenerate_template_registry, ensure_directory
|
||||
from aipass.spawn.apps.handlers.meta_ops import load_template_registry, generate_branch_meta, save_branch_meta
|
||||
from aipass.spawn.apps.handlers.registry import find_registry, add_to_registry, get_next_citizen_number
|
||||
from aipass.spawn.apps.handlers.class_registry import (
|
||||
validate_class,
|
||||
get_default_class,
|
||||
get_available_classes,
|
||||
get_template_dir as _get_template_dir,
|
||||
)
|
||||
|
||||
# Default template location (relative to spawn package root)
|
||||
DEFAULT_TEMPLATE = Path(__file__).parents[2] / "templates" / "builder"
|
||||
|
||||
|
||||
def print_introspection():
|
||||
"""Display module introspection info."""
|
||||
console.print()
|
||||
console.print("core Module")
|
||||
console.print("Agent creation orchestrator — full spawn workflow from template to registry")
|
||||
console.print()
|
||||
console.print("Connected Handlers:")
|
||||
console.print(" handlers/")
|
||||
console.print(" - metadata.py (get_branch_name, normalize_branch_name, detect_profile — branch identity)")
|
||||
console.print(" - placeholders.py (build_replacements_dict, validate_no_placeholders — template substitution)")
|
||||
console.print(" - file_ops.py (copy_template, rename_placeholder_paths, regenerate_template_registry, ensure_directory — filesystem ops)")
|
||||
console.print(" - meta_ops.py (load_template_registry, generate_branch_meta, save_branch_meta — branch metadata)")
|
||||
console.print(" - registry.py (find_registry, add_to_registry, get_next_citizen_number — AIPASS_REGISTRY management)")
|
||||
console.print(" - class_registry.py (validate_class, get_default_class, get_available_classes, get_template_dir — citizen class lookup)")
|
||||
console.print()
|
||||
|
||||
|
||||
def handle_command(command: str, args: List[str]) -> bool:
|
||||
"""
|
||||
Route spawn commands to implementation.
|
||||
@@ -104,8 +135,7 @@ def _spawn_agent(target_path, role="", traits="", purpose="", profile=None,
|
||||
if template_dir:
|
||||
template = Path(template_dir)
|
||||
else:
|
||||
from aipass.spawn.apps.handlers.class_registry import get_template_dir as _class_get_template_dir
|
||||
template = _class_get_template_dir(citizen_class)
|
||||
template = _get_template_dir(citizen_class)
|
||||
|
||||
# Validate
|
||||
if target.exists():
|
||||
@@ -140,6 +170,12 @@ def _spawn_agent(target_path, role="", traits="", purpose="", profile=None,
|
||||
# Step 3: Regenerate .template_registry.json with fresh hashes
|
||||
regenerate_template_registry(target)
|
||||
|
||||
# Step 3b: Generate branch metadata for tracking
|
||||
template_registry = load_template_registry(target)
|
||||
if template_registry:
|
||||
branch_meta = generate_branch_meta(target, template_registry)
|
||||
save_branch_meta(target, branch_meta)
|
||||
|
||||
# Step 4: Register in AIPASS_REGISTRY.json
|
||||
registry_updated = add_to_registry(
|
||||
reg_path, branch_upper, str(target), detected_profile,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# =================== META ====================
|
||||
# =================== AIPass ====================
|
||||
# Name: delete.py
|
||||
# Description: Branch deletion — thin CLI layer for archive and deregister
|
||||
# Version: 1.1.0
|
||||
@@ -19,6 +19,37 @@ from aipass.cli.apps.modules import console
|
||||
from aipass.spawn.apps.handlers.delete_ops import delete_branch
|
||||
|
||||
|
||||
def print_introspection():
|
||||
"""Display module introspection info."""
|
||||
console.print()
|
||||
console.print("delete Module")
|
||||
console.print("Branch deletion — archive directory and deregister from AIPASS_REGISTRY")
|
||||
console.print()
|
||||
console.print("Connected Handlers:")
|
||||
console.print(" handlers/")
|
||||
console.print(" - delete_ops.py (delete_branch — resolve path, archive, remove from registry)")
|
||||
console.print()
|
||||
|
||||
|
||||
# =============================================================================
|
||||
# DRONE ROUTING
|
||||
# =============================================================================
|
||||
|
||||
def handle_command(command: str, args: list) -> bool:
|
||||
"""Handle commands routed by the entry point.
|
||||
|
||||
Args:
|
||||
command: The command string (e.g. "delete")
|
||||
args: List of arguments for the command
|
||||
|
||||
Returns:
|
||||
True if command was handled, False otherwise.
|
||||
"""
|
||||
if command == "delete":
|
||||
return handle_delete(args) == 0
|
||||
return False
|
||||
|
||||
|
||||
# =============================================================================
|
||||
# PUBLIC API
|
||||
# =============================================================================
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# =================== META ====================
|
||||
# =================== AIPass ====================
|
||||
# Name: passport.py
|
||||
# Description: Passport command — thin CLI layer for granting birthright citizenship
|
||||
# Version: 1.0.0
|
||||
@@ -20,6 +20,33 @@ from aipass.cli.apps.modules import console
|
||||
from aipass.spawn.apps.handlers.passport_ops import grant_passport
|
||||
|
||||
|
||||
def print_introspection():
|
||||
"""Display module introspection info."""
|
||||
console.print()
|
||||
console.print("passport Module")
|
||||
console.print("Grant birthright citizenship — minimal identity (.trinity/, .aipass/, README.md)")
|
||||
console.print()
|
||||
console.print("Connected Handlers:")
|
||||
console.print(" handlers/")
|
||||
console.print(" - passport_ops.py (grant_passport — create minimal citizen identity and register)")
|
||||
console.print()
|
||||
|
||||
|
||||
def handle_command(command: str, args: list) -> bool:
|
||||
"""Handle commands routed by the entry point.
|
||||
|
||||
Args:
|
||||
command: The command string (e.g. "passport")
|
||||
args: List of arguments for the command
|
||||
|
||||
Returns:
|
||||
True if command was handled, False otherwise.
|
||||
"""
|
||||
if command == "passport":
|
||||
return handle_passport(args) == 0
|
||||
return False
|
||||
|
||||
|
||||
def handle_passport(args: list[str]) -> int:
|
||||
"""Parse args and execute passport grant.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# =================== META ====================
|
||||
# =================== AIPass ====================
|
||||
# Name: sync_registry.py
|
||||
# Description: Registry repair — thin CLI layer for registry synchronization
|
||||
# Version: 1.1.0
|
||||
@@ -19,6 +19,37 @@ from aipass.cli.apps.modules import console
|
||||
from aipass.spawn.apps.handlers.sync_registry_ops import sync_registry
|
||||
|
||||
|
||||
def print_introspection():
|
||||
"""Display module introspection info."""
|
||||
console.print()
|
||||
console.print("sync_registry Module")
|
||||
console.print("Registry repair — detect and fix mismatches between AIPASS_REGISTRY and filesystem")
|
||||
console.print()
|
||||
console.print("Connected Handlers:")
|
||||
console.print(" handlers/")
|
||||
console.print(" - sync_registry_ops.py (sync_registry — scan filesystem, detect stale/unregistered, auto-repair)")
|
||||
console.print()
|
||||
|
||||
|
||||
# =============================================================================
|
||||
# DRONE ROUTING
|
||||
# =============================================================================
|
||||
|
||||
def handle_command(command: str, args: list) -> bool:
|
||||
"""Handle commands routed by the entry point.
|
||||
|
||||
Args:
|
||||
command: The command string (e.g. "sync-registry")
|
||||
args: List of arguments for the command
|
||||
|
||||
Returns:
|
||||
True if command was handled, False otherwise.
|
||||
"""
|
||||
if command == "sync-registry":
|
||||
return handle_sync_registry(args) == 0
|
||||
return False
|
||||
|
||||
|
||||
# =============================================================================
|
||||
# PUBLIC API
|
||||
# =============================================================================
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# =================== META ====================
|
||||
# =================== AIPass ====================
|
||||
# Name: sync_templates.py
|
||||
# Description: Template sync — thin CLI layer for template synchronization
|
||||
# Version: 1.1.0
|
||||
@@ -19,6 +19,37 @@ from aipass.cli.apps.modules import console
|
||||
from aipass.spawn.apps.handlers.sync_templates_ops import sync_templates
|
||||
|
||||
|
||||
def print_introspection():
|
||||
"""Display module introspection info."""
|
||||
console.print()
|
||||
console.print("sync_templates Module")
|
||||
console.print("Template synchronization — pull managed files from source branches into templates")
|
||||
console.print()
|
||||
console.print("Connected Handlers:")
|
||||
console.print(" handlers/")
|
||||
console.print(" - sync_templates_ops.py (sync_templates — compare hashes and pull updates from source branches)")
|
||||
console.print()
|
||||
|
||||
|
||||
# =============================================================================
|
||||
# DRONE ROUTING
|
||||
# =============================================================================
|
||||
|
||||
def handle_command(command: str, args: list) -> bool:
|
||||
"""Handle commands routed by the entry point.
|
||||
|
||||
Args:
|
||||
command: The command string (e.g. "sync-templates")
|
||||
args: List of arguments for the command
|
||||
|
||||
Returns:
|
||||
True if command was handled, False otherwise.
|
||||
"""
|
||||
if command == "sync-templates":
|
||||
return handle_sync_templates(args) == 0
|
||||
return False
|
||||
|
||||
|
||||
# =============================================================================
|
||||
# PUBLIC API
|
||||
# =============================================================================
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# =================== META ====================
|
||||
# =================== AIPass ====================
|
||||
# Name: update.py
|
||||
# Description: Update orchestrator — thin CLI layer for branch updates
|
||||
# Version: 1.1.0
|
||||
@@ -22,6 +22,37 @@ from aipass.spawn.apps.handlers.update_ops import (
|
||||
)
|
||||
|
||||
|
||||
def print_introspection():
|
||||
"""Display module introspection info."""
|
||||
console.print()
|
||||
console.print("update Module")
|
||||
console.print("Branch updates — sync single or all branches against their class templates")
|
||||
console.print()
|
||||
console.print("Connected Handlers:")
|
||||
console.print(" handlers/")
|
||||
console.print(" - update_ops.py (update_branch, update_all — renames, additions, JSON merges, pruned file archival)")
|
||||
console.print()
|
||||
|
||||
|
||||
# =============================================================================
|
||||
# DRONE ROUTING
|
||||
# =============================================================================
|
||||
|
||||
def handle_command(command: str, args: list) -> bool:
|
||||
"""Handle commands routed by the entry point.
|
||||
|
||||
Args:
|
||||
command: The command string (e.g. "update")
|
||||
args: List of arguments for the command
|
||||
|
||||
Returns:
|
||||
True if command was handled, False otherwise.
|
||||
"""
|
||||
if command == "update":
|
||||
return handle_update(args) == 0
|
||||
return False
|
||||
|
||||
|
||||
# =============================================================================
|
||||
# PUBLIC API
|
||||
# =============================================================================
|
||||
@@ -50,7 +81,7 @@ def handle_update(args: list[str]) -> int:
|
||||
console.print(" [green]--trace[/green] Enable verbose logging")
|
||||
return 1
|
||||
|
||||
from aipass.spawn.apps.handlers.class_registry import validate_class, get_available_classes
|
||||
from aipass.spawn.apps.modules.core import validate_class, get_available_classes
|
||||
|
||||
dry_run = "--dry-run" in args
|
||||
trace = "--trace" in args
|
||||
|
||||
Reference in New Issue
Block a user