@openlife/cli 1.7.3
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/INSTALL.md +266 -0
- package/LICENSE +21 -0
- package/README.md +142 -0
- package/bin/openlife.js +3 -0
- package/dist/admin_panel_server.js +66 -0
- package/dist/cli/AgentManager.js +109 -0
- package/dist/cli/AutonomousInstaller.js +134 -0
- package/dist/cli/DreamOrganizer.js +88 -0
- package/dist/cli/HostInstaller.js +426 -0
- package/dist/cli/InstallBanner.js +16 -0
- package/dist/cli/InstallFlow.js +256 -0
- package/dist/cli/InstallHeadless.js +47 -0
- package/dist/cli/InstallModules.js +148 -0
- package/dist/cli/InstallStateStore.js +75 -0
- package/dist/cli/InstallWizard.js +364 -0
- package/dist/cli/ProfileManager.js +163 -0
- package/dist/cli/SystemInstaller.js +89 -0
- package/dist/cli/WorldClassCommands.js +208 -0
- package/dist/design/DesignMdImporter.js +82 -0
- package/dist/design/DesignMdMode.js +93 -0
- package/dist/design/DesignMdRegistry.js +67 -0
- package/dist/index.js +2575 -0
- package/dist/memory/ConversationMemory.js +33 -0
- package/dist/memory/LocalMemoryProvider.js +86 -0
- package/dist/memory/Mem0Provider.js +16 -0
- package/dist/memory/MemoryNamespacePolicy.js +27 -0
- package/dist/memory/MemoryOrchestrator.js +65 -0
- package/dist/memory/MemoryPromotionFlow.js +32 -0
- package/dist/memory/MemoryProvider.js +2 -0
- package/dist/memory/MemoryProviderRegistry.js +27 -0
- package/dist/memory/MemoryRetentionPolicy.js +60 -0
- package/dist/memory/MempalaceProvider.js +72 -0
- package/dist/memory/OmniMemory.js +106 -0
- package/dist/memory/RedisAgentMemoryProvider.js +16 -0
- package/dist/memory/SessionManager.js +86 -0
- package/dist/memory/ZepGraphitiProvider.js +16 -0
- package/dist/orchestrator/AgentRegistry.js +56 -0
- package/dist/orchestrator/AgentScoring.js +82 -0
- package/dist/orchestrator/AgentTeam.js +22 -0
- package/dist/orchestrator/ArbitrationAgent.js +43 -0
- package/dist/orchestrator/ArbitrationScorecard.js +17 -0
- package/dist/orchestrator/AssetPromotionEngine.js +65 -0
- package/dist/orchestrator/AssetReuseRouter.js +63 -0
- package/dist/orchestrator/BenchmarkEngine.js +75 -0
- package/dist/orchestrator/Brain.js +298 -0
- package/dist/orchestrator/CadenceEngine.js +76 -0
- package/dist/orchestrator/CapabilityRouter.js +36 -0
- package/dist/orchestrator/CommandLanguage.js +27 -0
- package/dist/orchestrator/CommandRouter.js +70 -0
- package/dist/orchestrator/ConsequenceForecaster.js +286 -0
- package/dist/orchestrator/CronManager.js +286 -0
- package/dist/orchestrator/DynamicAgentBuilder.js +48 -0
- package/dist/orchestrator/DynamicAgentExecutor.js +15 -0
- package/dist/orchestrator/EnterpriseAgenticCore.js +276 -0
- package/dist/orchestrator/ExecutionBoard.js +86 -0
- package/dist/orchestrator/ExecutionIntent.js +13 -0
- package/dist/orchestrator/ExecutionModePolicy.js +48 -0
- package/dist/orchestrator/ExecutionRouter.js +9 -0
- package/dist/orchestrator/ExecutionState.js +20 -0
- package/dist/orchestrator/ExecutorHealth.js +86 -0
- package/dist/orchestrator/ExternalCatalogRegistry.js +83 -0
- package/dist/orchestrator/Gatekeeper.js +414 -0
- package/dist/orchestrator/Gateway.js +508 -0
- package/dist/orchestrator/GovernanceConsentStore.js +66 -0
- package/dist/orchestrator/GovernanceLayer.js +179 -0
- package/dist/orchestrator/GovernancePolicyStore.js +53 -0
- package/dist/orchestrator/GovernanceScopeLedger.js +134 -0
- package/dist/orchestrator/GovernanceScopePolicy.js +67 -0
- package/dist/orchestrator/IntentClassifier.js +45 -0
- package/dist/orchestrator/JobLifecycle.js +91 -0
- package/dist/orchestrator/LearningRouter.js +24 -0
- package/dist/orchestrator/MediaManager.js +92 -0
- package/dist/orchestrator/MemoryCuratorAgent.js +41 -0
- package/dist/orchestrator/MissionState.js +155 -0
- package/dist/orchestrator/ModelManager.js +84 -0
- package/dist/orchestrator/OperatingSystem.js +71 -0
- package/dist/orchestrator/OperationalMemoryStore.js +94 -0
- package/dist/orchestrator/OptimizationLoop.js +72 -0
- package/dist/orchestrator/OrchestrationLoop.js +905 -0
- package/dist/orchestrator/OrgStructure.js +88 -0
- package/dist/orchestrator/OutcomeSimulator.js +46 -0
- package/dist/orchestrator/ParallelOrchestrationLoop.js +36 -0
- package/dist/orchestrator/PerformanceScorecard.js +105 -0
- package/dist/orchestrator/PlannerAgent.js +46 -0
- package/dist/orchestrator/ProcessSandbox.js +129 -0
- package/dist/orchestrator/PromotionPipeline.js +74 -0
- package/dist/orchestrator/PromotionReviewGate.js +11 -0
- package/dist/orchestrator/QueueScheduler.js +260 -0
- package/dist/orchestrator/ReleaseGate.js +36 -0
- package/dist/orchestrator/ReleaseWorkflow.js +68 -0
- package/dist/orchestrator/RemotePublisher.js +139 -0
- package/dist/orchestrator/ReuseEngine.js +89 -0
- package/dist/orchestrator/ReviewerAgent.js +49 -0
- package/dist/orchestrator/RoleHandoff.js +65 -0
- package/dist/orchestrator/RuntimeHealthMonitor.js +143 -0
- package/dist/orchestrator/RuntimePolicy.js +105 -0
- package/dist/orchestrator/RuntimeProbe.js +97 -0
- package/dist/orchestrator/RuntimeRegistry.js +73 -0
- package/dist/orchestrator/SandboxPolicy.js +22 -0
- package/dist/orchestrator/SecurityDownloadGuard.js +169 -0
- package/dist/orchestrator/SecurityEventStore.js +58 -0
- package/dist/orchestrator/ServiceCompletionPolicy.js +36 -0
- package/dist/orchestrator/ServiceState.js +195 -0
- package/dist/orchestrator/SkillCreator.js +404 -0
- package/dist/orchestrator/SkillLearningLoop.js +57 -0
- package/dist/orchestrator/SkillManager.js +75 -0
- package/dist/orchestrator/SkillNetwork.js +29 -0
- package/dist/orchestrator/SkillRegistryV2.js +28 -0
- package/dist/orchestrator/SkillScoring.js +70 -0
- package/dist/orchestrator/SquadAutoCreator.js +64 -0
- package/dist/orchestrator/SquadCreator.js +727 -0
- package/dist/orchestrator/SquadRegistry.js +28 -0
- package/dist/orchestrator/SquadRouter.js +33 -0
- package/dist/orchestrator/SquadScoring.js +70 -0
- package/dist/orchestrator/SubagentLifecycle.js +90 -0
- package/dist/orchestrator/SynthesizerAgent.js +48 -0
- package/dist/orchestrator/SystemDoctor.js +224 -0
- package/dist/orchestrator/TaskExecutor.js +422 -0
- package/dist/orchestrator/TeammateBoard.js +61 -0
- package/dist/orchestrator/TestHarness.js +184 -0
- package/dist/orchestrator/VoiceManager.js +203 -0
- package/dist/orchestrator/VoiceRouter.js +89 -0
- package/dist/orchestrator/capability/CapabilityGenesisEngine.js +278 -0
- package/dist/orchestrator/capability/CapabilityPackParser.js +223 -0
- package/dist/orchestrator/capability/CapabilityPackSchema.js +62 -0
- package/dist/orchestrator/capability/CapabilityPackState.js +163 -0
- package/dist/orchestrator/providers/AgentProvider.js +2 -0
- package/dist/orchestrator/providers/CapabilityProvider.js +12 -0
- package/dist/orchestrator/providers/CloudAgentProvider.js +55 -0
- package/dist/orchestrator/providers/CloudSkillProvider.js +55 -0
- package/dist/orchestrator/providers/CloudSquadProvider.js +55 -0
- package/dist/orchestrator/providers/CompositeAgentProvider.js +16 -0
- package/dist/orchestrator/providers/CompositeCapabilityProvider.js +25 -0
- package/dist/orchestrator/providers/CompositeSkillProvider.js +16 -0
- package/dist/orchestrator/providers/CompositeSquadProvider.js +16 -0
- package/dist/orchestrator/providers/CompositeWorkflowProvider.js +46 -0
- package/dist/orchestrator/providers/FileAgentProvider.js +105 -0
- package/dist/orchestrator/providers/FileCapabilityProvider.js +106 -0
- package/dist/orchestrator/providers/FileSkillProvider.js +65 -0
- package/dist/orchestrator/providers/FileSquadProvider.js +69 -0
- package/dist/orchestrator/providers/FileWorkflowProvider.js +103 -0
- package/dist/orchestrator/providers/SkillProvider.js +2 -0
- package/dist/orchestrator/providers/SquadProvider.js +2 -0
- package/dist/orchestrator/toolset/ToolsetGuard.js +69 -0
- package/dist/orchestrator/toolset/ToolsetRegistry.js +65 -0
- package/dist/orchestrator/toolset/ToolsetSchema.js +21 -0
- package/dist/orchestrator/util/AtomicWriter.js +204 -0
- package/dist/orchestrator/util/DistributedLock.js +232 -0
- package/dist/orchestrator/util/TemplateRenderer.js +87 -0
- package/dist/orchestrator/util/WatchdogHeartbeat.js +116 -0
- package/dist/orchestrator/workflow/ConditionParser.js +232 -0
- package/dist/orchestrator/workflow/WorkflowEngine.js +379 -0
- package/dist/orchestrator/workflow/WorkflowParser.js +368 -0
- package/dist/orchestrator/workflow/WorkflowSchema.js +65 -0
- package/dist/orchestrator/workflow/WorkflowState.js +11 -0
- package/dist/reversa/ReversaAgent.js +134 -0
- package/dist/reversa/ReversaContracts.js +62 -0
- package/dist/reversa/ReversaExecutors.js +65 -0
- package/dist/skills/SkillRegistry.js +71 -0
- package/dist/squads/SquadManager.js +87 -0
- package/dist/test_admin_teams_networks.js +54 -0
- package/dist/test_agent_team_skill_network.js +15 -0
- package/dist/test_aiobuilder_cli_parity.js +169 -0
- package/dist/test_ask_exit.js +73 -0
- package/dist/test_atomic_writer.js +209 -0
- package/dist/test_autonomous_soak.js +141 -0
- package/dist/test_benchmark_engine.js +41 -0
- package/dist/test_brain_error_diagnostics.js +51 -0
- package/dist/test_brain_fallback_chain.js +93 -0
- package/dist/test_capability_genesis_engine.js +225 -0
- package/dist/test_capability_pack_schema.js +214 -0
- package/dist/test_catalog_quality.js +150 -0
- package/dist/test_cli_crud_roundtrip.js +154 -0
- package/dist/test_cli_diagnostics.js +131 -0
- package/dist/test_cli_doc_parity.js +126 -0
- package/dist/test_cli_help_surface.js +106 -0
- package/dist/test_cli_service_commands.js +83 -0
- package/dist/test_consequence_forecast_brain.js +165 -0
- package/dist/test_consequence_forecaster.js +24 -0
- package/dist/test_conversation_memory.js +36 -0
- package/dist/test_create_entities.js +54 -0
- package/dist/test_creator_placeholders_completed.js +177 -0
- package/dist/test_cron_manager.js +123 -0
- package/dist/test_daemon_sigterm.js +72 -0
- package/dist/test_deep_research_capability.js +87 -0
- package/dist/test_designmd_import_registry.js +16 -0
- package/dist/test_designmd_mode.js +50 -0
- package/dist/test_designmd_mode_workspace.js +13 -0
- package/dist/test_dist_templates_layout.js +135 -0
- package/dist/test_distributed_lock.js +201 -0
- package/dist/test_distribution_installability.js +67 -0
- package/dist/test_doctor_sandbox_check.js +44 -0
- package/dist/test_dream_organizer.js +25 -0
- package/dist/test_dual_mode.js +15 -0
- package/dist/test_enterprise_agentic_core.js +128 -0
- package/dist/test_forecast_brain_wiring.js +87 -0
- package/dist/test_gateway_telegram_guardrails.js +52 -0
- package/dist/test_governance.js +34 -0
- package/dist/test_governance_advanced.js +75 -0
- package/dist/test_governance_scope_ledger.js +147 -0
- package/dist/test_governance_v13_policies.js +44 -0
- package/dist/test_guided_creator_cli.js +100 -0
- package/dist/test_host_install_e2e.js +324 -0
- package/dist/test_host_installer.js +259 -0
- package/dist/test_host_installers_gemini_codex.js +95 -0
- package/dist/test_host_uninstaller.js +295 -0
- package/dist/test_install_flow.js +70 -0
- package/dist/test_install_flow_host_validation.js +143 -0
- package/dist/test_install_wizard.js +272 -0
- package/dist/test_integration_gemini_live.js +95 -0
- package/dist/test_integration_http_trigger_live.js +154 -0
- package/dist/test_integration_telegram_live.js +102 -0
- package/dist/test_job_lifecycle.js +16 -0
- package/dist/test_memory_orchestrator.js +33 -0
- package/dist/test_memory_promotion.js +36 -0
- package/dist/test_memory_retention.js +37 -0
- package/dist/test_mission_checkpoint.js +204 -0
- package/dist/test_multi_host_docs_parity.js +125 -0
- package/dist/test_openlife_auto_creator_routing.js +69 -0
- package/dist/test_openlife_evolution_surface.js +77 -0
- package/dist/test_openlife_gatekeeper_routing.js +15 -0
- package/dist/test_openlife_routing_surface.js +27 -0
- package/dist/test_openlife_runtime_source_truth.js +25 -0
- package/dist/test_operating_system.js +45 -0
- package/dist/test_optimization_loop.js +38 -0
- package/dist/test_orchestration_assets_lifecycle.js +78 -0
- package/dist/test_outcome_simulator.js +38 -0
- package/dist/test_performance_latency.js +215 -0
- package/dist/test_performance_scorecard.js +38 -0
- package/dist/test_phase1_check_exit.js +103 -0
- package/dist/test_phase6_board.js +31 -0
- package/dist/test_phase6_cadence.js +29 -0
- package/dist/test_phase6_ops.js +37 -0
- package/dist/test_post_mission_evaluation.js +190 -0
- package/dist/test_process_sandbox.js +88 -0
- package/dist/test_profile_toolset_mcp.js +125 -0
- package/dist/test_queue_scheduler.js +239 -0
- package/dist/test_release_gate.js +23 -0
- package/dist/test_remote_publish.js +193 -0
- package/dist/test_reversa_contracts_e2e.js +48 -0
- package/dist/test_reversa_export_and_strict.js +51 -0
- package/dist/test_reversa_full_execution.js +12 -0
- package/dist/test_reversa_lite.js +9 -0
- package/dist/test_royal_stack_golden.js +179 -0
- package/dist/test_runtime_health_backoff.js +154 -0
- package/dist/test_runtime_policy.js +26 -0
- package/dist/test_runtime_probe.js +19 -0
- package/dist/test_runtime_profile_oauth_only.js +262 -0
- package/dist/test_runtime_registry.js +11 -0
- package/dist/test_security_download_and_scan.js +103 -0
- package/dist/test_security_download_guard.js +14 -0
- package/dist/test_service_command_surface.js +12 -0
- package/dist/test_service_completion_policy.js +32 -0
- package/dist/test_service_guardrails_delete.js +12 -0
- package/dist/test_service_mode_explicit_only.js +174 -0
- package/dist/test_sources_import_ref.js +46 -0
- package/dist/test_sources_scaffold.js +43 -0
- package/dist/test_squad_skill_creator.js +305 -0
- package/dist/test_squad_skill_design_llm.js +176 -0
- package/dist/test_subsystems_org_state.js +271 -0
- package/dist/test_subsystems_promotion_memory_assets.js +343 -0
- package/dist/test_subsystems_routing_governance.js +234 -0
- package/dist/test_task_executor_sandbox_optin.js +127 -0
- package/dist/test_teammate_learning.js +15 -0
- package/dist/test_telegram_delete_guardrail.js +21 -0
- package/dist/test_toolset_enforcement.js +188 -0
- package/dist/test_trigger_basic_auth.js +112 -0
- package/dist/test_util/doc_parity.js +120 -0
- package/dist/test_v15_e2e_integration.js +207 -0
- package/dist/test_watchdog_heartbeat.js +152 -0
- package/dist/test_workflow_condition_parser.js +63 -0
- package/dist/test_workflow_e2e.js +240 -0
- package/dist/test_workflow_engine.js +330 -0
- package/dist/test_workflow_parser.js +245 -0
- package/dist/test_workflow_schema_backward_compat.js +197 -0
- package/dist-templates/README.md +91 -0
- package/dist-templates/claude-code/agents/openlife-atlas.md +52 -0
- package/dist-templates/claude-code/agents/openlife-forge.md +42 -0
- package/dist-templates/claude-code/agents/openlife-genesis.md +59 -0
- package/dist-templates/claude-code/agents/openlife-lyra.md +40 -0
- package/dist-templates/claude-code/agents/openlife-maestro.md +45 -0
- package/dist-templates/claude-code/commands/openlife/ask.md +14 -0
- package/dist-templates/claude-code/commands/openlife/doctor.md +19 -0
- package/dist-templates/claude-code/commands/openlife/dream.md +20 -0
- package/dist-templates/claude-code/commands/openlife/status.md +14 -0
- package/dist-templates/claude-code/mcp/openlife-orchestrator.json +46 -0
- package/dist-templates/codex/README.md +7 -0
- package/dist-templates/codex/agents/openlife-atlas.md +52 -0
- package/dist-templates/codex/agents/openlife-forge.md +42 -0
- package/dist-templates/codex/agents/openlife-genesis.md +59 -0
- package/dist-templates/codex/agents/openlife-lyra.md +40 -0
- package/dist-templates/codex/agents/openlife-maestro.md +45 -0
- package/dist-templates/codex/commands/openlife/ask.md +14 -0
- package/dist-templates/codex/commands/openlife/doctor.md +19 -0
- package/dist-templates/codex/commands/openlife/dream.md +20 -0
- package/dist-templates/codex/commands/openlife/status.md +14 -0
- package/dist-templates/codex/mcp/openlife-orchestrator.json +46 -0
- package/dist-templates/gemini-cli/README.md +8 -0
- package/dist-templates/gemini-cli/agents/openlife-atlas.md +52 -0
- package/dist-templates/gemini-cli/agents/openlife-forge.md +42 -0
- package/dist-templates/gemini-cli/agents/openlife-genesis.md +59 -0
- package/dist-templates/gemini-cli/agents/openlife-lyra.md +40 -0
- package/dist-templates/gemini-cli/agents/openlife-maestro.md +45 -0
- package/dist-templates/gemini-cli/commands/openlife/ask.md +14 -0
- package/dist-templates/gemini-cli/commands/openlife/doctor.md +19 -0
- package/dist-templates/gemini-cli/commands/openlife/dream.md +20 -0
- package/dist-templates/gemini-cli/commands/openlife/status.md +14 -0
- package/dist-templates/gemini-cli/mcp/openlife-orchestrator.json +46 -0
- package/dist-templates/skill-template/README.md +34 -0
- package/dist-templates/skill-template/SKILL.md.template +59 -0
- package/dist-templates/squad-template/README.md +82 -0
- package/dist-templates/squad-template/SQUAD.md.template +51 -0
- package/dist-templates/squad-template/agent-template.md +51 -0
- package/dist-templates/squad-template/checklist-template.md +25 -0
- package/dist-templates/squad-template/task-template.md +36 -0
- package/dist-templates/workflows/PORTED_WORKFLOWS.md +60 -0
- package/dist-templates/workflows/brownfield-discovery.yaml +137 -0
- package/dist-templates/workflows/greenfield-fullstack.yaml +132 -0
- package/dist-templates/workflows/qa-loop.yaml +125 -0
- package/dist-templates/workflows/story-development-cycle.yaml +80 -0
- package/docs/CHANGELOG_FEATURE_ROLLOUT_DESIGNMD.md +43 -0
- package/docs/EXTERNAL_SOURCES_AND_SECURITY_GUARD.md +33 -0
- package/docs/OPENLIFE_AUDIT_2026-05-06.md +170 -0
- package/docs/OPENLIFE_CONSOLIDATED_PLAN_2026-05-06.md +299 -0
- package/docs/OPENLIFE_DUAL_MODE_IMPLEMENTATION_PLAN.md +205 -0
- package/docs/OPENLIFE_EVOLUTION_SURFACE_2026-05-07.md +53 -0
- package/docs/OPENLIFE_SKILLS_IMPORT_2026-05-07.json +223 -0
- package/docs/OPENLIFE_SQUADS_IMPORT_2026-05-07.json +184 -0
- package/docs/PAPERCLIP_OPENLIFE_INVESTIGATION.md +85 -0
- package/docs/README.md +28 -0
- package/docs/RELEASE_ORGANIZATION_PLAN.md +164 -0
- package/docs/audit/CLI-EXECUTION-RESULTS.md +113 -0
- package/docs/audit/CLI-MATRIX.md +556 -0
- package/docs/audit/DOC-PARITY-GAPS.md +351 -0
- package/docs/audit/ORCHESTRATOR-MATRIX.md +136 -0
- package/docs/audit/TEST-COVERAGE-GAPS.md +334 -0
- package/docs/audit/integrations/SKIPPED.md +101 -0
- package/docs/autonomous-install.md +79 -0
- package/docs/capability-genesis.md +137 -0
- package/docs/capability-pack-schema.md +157 -0
- package/docs/commands.md +82 -0
- package/docs/deep-research-capability.md +114 -0
- package/docs/development/typescript-conventions.md +95 -0
- package/docs/host-installers.md +68 -0
- package/docs/install/aiobuilder.md +70 -0
- package/docs/install/claude-code.md +83 -0
- package/docs/install/codex.md +64 -0
- package/docs/install/gemini-cli.md +64 -0
- package/docs/install/runtime-profiles.md +83 -0
- package/docs/openlife-agent-os-blueprint.md +114 -0
- package/docs/openlife-install-backlog.md +115 -0
- package/docs/openlife-install-spec.md +306 -0
- package/docs/operations/CLOUD_CUTOVER_AUDIT.md +37 -0
- package/docs/operations/PHASE_PROGRESS_CONTINUATION.md +24 -0
- package/docs/performance-benchmarks.md +83 -0
- package/docs/planning/v1.3-capability-genesis.md +157 -0
- package/docs/plans/2026-05-05-admin-interface-professional-dark-premium-plan.md +84 -0
- package/docs/plans/2026-05-05-openlife-autonomous-domain-marketplace-masterplan.md +122 -0
- package/docs/quickstart.md +60 -0
- package/docs/release-process.md +236 -0
- package/docs/roadmap/OPENLIFE_MASTER_PLAN_CLOUD_V3.md +97 -0
- package/docs/sandboxing-research.md +117 -0
- package/docs/stories/epic-feature-audit/1.1.story.md +84 -0
- package/docs/stories/epic-feature-audit/1.2.story.md +102 -0
- package/docs/stories/epic-feature-audit/1.3.story.md +93 -0
- package/docs/stories/epic-feature-audit/1.5.story.md +121 -0
- package/docs/stories/epic-feature-audit/1.6.story.md +80 -0
- package/docs/stories/epic-feature-completeness/2.1.story.md +70 -0
- package/docs/stories/epic-feature-completeness/2.2.story.md +49 -0
- package/docs/stories/epic-feature-completeness/2.3.story.md +74 -0
- package/docs/stories/epic-feature-completeness/2.4.story.md +71 -0
- package/docs/stories/epic-feature-completeness/3.1.story.md +56 -0
- package/docs/stories/epic-feature-completeness/3.2.story.md +80 -0
- package/docs/stories/epic-feature-completeness/3.3.story.md +68 -0
- package/docs/stories/epic-feature-completeness/3.4.story.md +71 -0
- package/docs/stories/epic-feature-completeness/3.5.story.md +72 -0
- package/docs/stories/epic-feature-completeness/3.6.story.md +69 -0
- package/docs/stories/epic-feature-completeness/3.7.story.md +68 -0
- package/docs/stories/epic-feature-completeness/3.8.story.md +57 -0
- package/docs/toolset-enforcement.md +122 -0
- package/docs/v1.4-changelog.md +159 -0
- package/docs/v1.5-changelog.md +106 -0
- package/docs/v1.5-roadmap.md +121 -0
- package/docs/v1.6-changelog.md +67 -0
- package/docs/v1.6-roadmap.md +89 -0
- package/docs/v1.7-changelog.md +98 -0
- package/docs/workflow-schema.md +177 -0
- package/package.json +177 -0
- package/scripts/clean-test-pollution.js +61 -0
- package/scripts/openlife-agent-start.sh +6 -0
- package/scripts/openlife-agent.service.example +13 -0
- package/scripts/openlife-agent.supervisord.conf.example +8 -0
- package/scripts/openlife-autonomous-install.sh +29 -0
- package/scripts/postinstall-check.sh +37 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# {{TASK_NAME}}
|
|
2
|
+
|
|
3
|
+
> Task definition for {{SQUAD_NAME}} squad
|
|
4
|
+
> Owner: {{OWNER_AGENT}}
|
|
5
|
+
|
|
6
|
+
## Purpose
|
|
7
|
+
|
|
8
|
+
{{PURPOSE}}
|
|
9
|
+
|
|
10
|
+
## Inputs
|
|
11
|
+
|
|
12
|
+
- {{INPUT_1}}
|
|
13
|
+
- {{INPUT_2}}
|
|
14
|
+
|
|
15
|
+
## Outputs
|
|
16
|
+
|
|
17
|
+
- {{OUTPUT_1}}
|
|
18
|
+
- {{OUTPUT_2}}
|
|
19
|
+
|
|
20
|
+
## Procedure
|
|
21
|
+
|
|
22
|
+
1. {{STEP_1}}
|
|
23
|
+
2. {{STEP_2}}
|
|
24
|
+
3. {{STEP_3}}
|
|
25
|
+
|
|
26
|
+
## Validation
|
|
27
|
+
|
|
28
|
+
- {{VALIDATION_1}}
|
|
29
|
+
- {{VALIDATION_2}}
|
|
30
|
+
|
|
31
|
+
## Notes
|
|
32
|
+
|
|
33
|
+
{{NOTES}}
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
*Generated by OpenLife SquadCreator.*
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Ported Workflows — Notes
|
|
2
|
+
|
|
3
|
+
The four workflows in this directory are **OpenLife-adapted ports** of
|
|
4
|
+
community workflow patterns for story-driven development. They are
|
|
5
|
+
read-only reference material once shipped; OpenLife runtime loads them
|
|
6
|
+
through `CompositeWorkflowProvider`, which also reads
|
|
7
|
+
`.catalog/workflows/` for local overrides.
|
|
8
|
+
|
|
9
|
+
## What was kept verbatim
|
|
10
|
+
|
|
11
|
+
- The four-phase shape of `story-development-cycle` (Create → Validate → Implement → QA).
|
|
12
|
+
- The Bootstrap → Discovery → Sharding → Dev Cycle backbone of `greenfield-fullstack`.
|
|
13
|
+
- The 10-phase outline of `brownfield-discovery` (3 data-collection + 3 review + QA gate + 3 finalization).
|
|
14
|
+
- The 5-iteration cap of `qa-loop`.
|
|
15
|
+
- Standard agent slots (`@analyst`, `@pm`, `@architect`, `@ux-design-expert`, `@dev`, `@qa`, `@po`, `@sm`, `@devops`, `@data-engineer`).
|
|
16
|
+
|
|
17
|
+
## What was removed during the port
|
|
18
|
+
|
|
19
|
+
| Upstream field/concept | Why removed |
|
|
20
|
+
|---|---|
|
|
21
|
+
| Refs to upstream-specific config files | OpenLife uses `.openlife/` for runtime state; the references would mislead operators. Replaced with `.openlife/config.yaml` etc. |
|
|
22
|
+
| `optional_steps: [brainstorming-session, market-research-prompt, …]` blocks | Carried over as `optional_steps` field on the host step. Upstream surfaces these as guided sub-prompts; OpenLife v1.2 just lists them — execution of the sub-prompts is operator-driven. |
|
|
23
|
+
| Inline `condition: user_wants_ai_generation` with complex expression syntax | OpenLife v1.2 supports only literal boolean flags via run context (`ctx[step.condition] === true`). Anything compound stays out of scope until v1.3 adds an expression evaluator. |
|
|
24
|
+
| Long inline `notes:` blocks repeating reference material | Pruned to operator-actionable guidance only. The KB is reference; the workflow is execution. |
|
|
25
|
+
| Upstream QA-loop auto-decision (`verdict_blocked` → automatic escalate) | OpenLife v1.2 engine does not yet support conditional short-circuit. The loop is unrolled into 5 explicit iterations; escalation runs as the final phase after the loop budget exhausts. Replaced when v1.3 adds `condition: !qa_approved`. |
|
|
26
|
+
|
|
27
|
+
## What was added (OpenLife-specific extensions)
|
|
28
|
+
|
|
29
|
+
| Extension | Where | Rationale |
|
|
30
|
+
|---|---|---|
|
|
31
|
+
| `squad: <id>` on `qa-gate` step | story-development-cycle, brownfield-discovery | Lets the gate delegate to the qa-loop squad as a unit, not just `@qa` solo. The upstream schema had no squad slot at the step level. |
|
|
32
|
+
| `idempotent: true` flag | All review-and-fix loop steps | Engine resume after partial-run crash respects this — non-idempotent steps are skipped on resume to avoid double side-effects; idempotent steps may re-execute once. |
|
|
33
|
+
| `creates` paths rooted in `docs/` and `.openlife/` | All workflows | Aligns with OpenLife's runtime/state layering. |
|
|
34
|
+
|
|
35
|
+
## Validation
|
|
36
|
+
|
|
37
|
+
All four files parse clean against `WorkflowSchema` via
|
|
38
|
+
`openlife workflow validate <file>`. Verified by Story 4.4 AC #1.
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
openlife workflow list
|
|
42
|
+
openlife workflow validate dist-templates/workflows/story-development-cycle.yaml
|
|
43
|
+
openlife workflow validate dist-templates/workflows/greenfield-fullstack.yaml
|
|
44
|
+
openlife workflow validate dist-templates/workflows/brownfield-discovery.yaml
|
|
45
|
+
openlife workflow validate dist-templates/workflows/qa-loop.yaml
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Extension contract
|
|
49
|
+
|
|
50
|
+
Operators may add their own workflows under:
|
|
51
|
+
|
|
52
|
+
1. `dist-templates/workflows/<id>.yaml` — ships with the npm package (preferred for community-distributed templates)
|
|
53
|
+
2. `.catalog/workflows/<id>.yaml` — local override / project-specific
|
|
54
|
+
|
|
55
|
+
`CompositeWorkflowProvider` reads from both, with the local catalog taking
|
|
56
|
+
precedence when an id collides.
|
|
57
|
+
|
|
58
|
+
> Reference: `WorkflowSchema.ts` for the strict schema and stable error codes;
|
|
59
|
+
> `WorkflowEngine.ts` for execution semantics including elicit pause, resume,
|
|
60
|
+
> and abort.
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
workflow:
|
|
2
|
+
id: brownfield-discovery
|
|
3
|
+
name: Brownfield Technical Debt Discovery
|
|
4
|
+
description: >-
|
|
5
|
+
Ten-phase technical-debt assessment for existing codebases. Three data-
|
|
6
|
+
collection phases feed three review phases feed three finalization phases,
|
|
7
|
+
gated by a QA review at Phase 7. Output: epic + stories ready for the
|
|
8
|
+
development cycle.
|
|
9
|
+
type: brownfield
|
|
10
|
+
version: "1.0"
|
|
11
|
+
|
|
12
|
+
metadata:
|
|
13
|
+
elicit: false
|
|
14
|
+
confirmation_required: true
|
|
15
|
+
|
|
16
|
+
phases:
|
|
17
|
+
- phase_1: System Architecture
|
|
18
|
+
- phase_2: Schema (if DB exists)
|
|
19
|
+
- phase_3: Frontend Spec
|
|
20
|
+
- phase_4: Draft Assessment
|
|
21
|
+
- phase_5: DB Specialist Review
|
|
22
|
+
- phase_6: UX Specialist Review
|
|
23
|
+
- phase_7: QA Gate
|
|
24
|
+
- phase_8: Final Assessment
|
|
25
|
+
- phase_9: Executive Report
|
|
26
|
+
- phase_10: Epic + Stories
|
|
27
|
+
|
|
28
|
+
sequence:
|
|
29
|
+
- phase: 1
|
|
30
|
+
name: System Architecture
|
|
31
|
+
- id: arch-system-architecture
|
|
32
|
+
agent: architect
|
|
33
|
+
action: document-system-architecture
|
|
34
|
+
creates:
|
|
35
|
+
- docs/audit/system-architecture.md
|
|
36
|
+
duration_estimate: "1-2 days"
|
|
37
|
+
|
|
38
|
+
- phase: 2
|
|
39
|
+
name: Schema (skip if no DB)
|
|
40
|
+
- id: data-schema-audit
|
|
41
|
+
agent: data-engineer
|
|
42
|
+
action: audit-schema
|
|
43
|
+
creates:
|
|
44
|
+
- docs/audit/SCHEMA.md
|
|
45
|
+
- docs/audit/DB-AUDIT.md
|
|
46
|
+
optional: true
|
|
47
|
+
condition: db_exists
|
|
48
|
+
duration_estimate: "1 day"
|
|
49
|
+
|
|
50
|
+
- phase: 3
|
|
51
|
+
name: Frontend Spec
|
|
52
|
+
- id: ux-frontend-spec
|
|
53
|
+
agent: ux-design-expert
|
|
54
|
+
action: document-frontend
|
|
55
|
+
creates:
|
|
56
|
+
- docs/audit/frontend-spec.md
|
|
57
|
+
duration_estimate: "1 day"
|
|
58
|
+
|
|
59
|
+
- phase: 4
|
|
60
|
+
name: Draft Assessment
|
|
61
|
+
- id: arch-draft-assessment
|
|
62
|
+
agent: architect
|
|
63
|
+
action: draft-technical-debt
|
|
64
|
+
creates:
|
|
65
|
+
- docs/audit/technical-debt-DRAFT.md
|
|
66
|
+
requires: arch-system-architecture
|
|
67
|
+
duration_estimate: "1-2 days"
|
|
68
|
+
|
|
69
|
+
- phase: 5
|
|
70
|
+
name: DB Specialist Review
|
|
71
|
+
- id: data-specialist-review
|
|
72
|
+
agent: data-engineer
|
|
73
|
+
action: review-db
|
|
74
|
+
creates:
|
|
75
|
+
- docs/audit/db-specialist-review.md
|
|
76
|
+
requires: arch-draft-assessment
|
|
77
|
+
optional: true
|
|
78
|
+
condition: db_exists
|
|
79
|
+
duration_estimate: "1 day"
|
|
80
|
+
|
|
81
|
+
- phase: 6
|
|
82
|
+
name: UX Specialist Review
|
|
83
|
+
- id: ux-specialist-review
|
|
84
|
+
agent: ux-design-expert
|
|
85
|
+
action: review-ux
|
|
86
|
+
creates:
|
|
87
|
+
- docs/audit/ux-specialist-review.md
|
|
88
|
+
requires: arch-draft-assessment
|
|
89
|
+
duration_estimate: "1 day"
|
|
90
|
+
|
|
91
|
+
- phase: 7
|
|
92
|
+
name: QA Gate
|
|
93
|
+
- id: qa-gate
|
|
94
|
+
squad: qa-loop
|
|
95
|
+
action: qa-gate
|
|
96
|
+
creates:
|
|
97
|
+
- docs/audit/qa-review.md
|
|
98
|
+
requires: arch-draft-assessment
|
|
99
|
+
duration_estimate: "1 day"
|
|
100
|
+
notes: |
|
|
101
|
+
Gate decision APPROVED or NEEDS WORK. On NEEDS WORK, loop back to
|
|
102
|
+
arch-draft-assessment (manual re-trigger; v1.2 engine does not yet
|
|
103
|
+
support automatic phase loops — that arrives with conditional
|
|
104
|
+
expressions in v1.3).
|
|
105
|
+
|
|
106
|
+
- phase: 8
|
|
107
|
+
name: Final Assessment
|
|
108
|
+
- id: arch-final-assessment
|
|
109
|
+
agent: architect
|
|
110
|
+
action: finalize-technical-debt
|
|
111
|
+
creates:
|
|
112
|
+
- docs/audit/technical-debt-assessment.md
|
|
113
|
+
requires: qa-gate
|
|
114
|
+
duration_estimate: "1 day"
|
|
115
|
+
|
|
116
|
+
- phase: 9
|
|
117
|
+
name: Executive Report
|
|
118
|
+
- id: analyst-executive-report
|
|
119
|
+
agent: analyst
|
|
120
|
+
action: write-executive-report
|
|
121
|
+
creates:
|
|
122
|
+
- docs/audit/TECHNICAL-DEBT-REPORT.md
|
|
123
|
+
requires: arch-final-assessment
|
|
124
|
+
duration_estimate: "0.5 day"
|
|
125
|
+
|
|
126
|
+
- phase: 10
|
|
127
|
+
name: Epic + Stories
|
|
128
|
+
- id: pm-create-epic-and-stories
|
|
129
|
+
agent: pm
|
|
130
|
+
action: create-epic-and-stories
|
|
131
|
+
creates:
|
|
132
|
+
- docs/stories/epic-brownfield-debt/
|
|
133
|
+
requires: arch-final-assessment
|
|
134
|
+
duration_estimate: "0.5-1 day"
|
|
135
|
+
notes: |
|
|
136
|
+
Epic + initial story set ready for `openlife workflow run
|
|
137
|
+
story-development-cycle`.
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
workflow:
|
|
2
|
+
id: greenfield-fullstack
|
|
3
|
+
name: Greenfield Full-Stack Application Development
|
|
4
|
+
description: >-
|
|
5
|
+
End-to-end workflow for building a new full-stack application from concept
|
|
6
|
+
to shippable stories. Bootstrap → Discovery → Sharding → Development Cycle.
|
|
7
|
+
Each story produced in the Sharding phase can then be driven through
|
|
8
|
+
story-development-cycle.
|
|
9
|
+
type: greenfield
|
|
10
|
+
version: "1.0"
|
|
11
|
+
project_types:
|
|
12
|
+
- web-app
|
|
13
|
+
- saas
|
|
14
|
+
- enterprise-app
|
|
15
|
+
- prototype
|
|
16
|
+
- mvp
|
|
17
|
+
|
|
18
|
+
metadata:
|
|
19
|
+
elicit: true
|
|
20
|
+
confirmation_required: true
|
|
21
|
+
|
|
22
|
+
phases:
|
|
23
|
+
- phase_0: Environment Bootstrap
|
|
24
|
+
- phase_1: Discovery & Planning
|
|
25
|
+
- phase_2: Document Sharding
|
|
26
|
+
- phase_3: Development Cycle
|
|
27
|
+
|
|
28
|
+
sequence:
|
|
29
|
+
- phase: 0
|
|
30
|
+
name: Environment Bootstrap
|
|
31
|
+
description: Setup tools, repo, CI before any planning starts
|
|
32
|
+
|
|
33
|
+
- id: devops-environment-bootstrap
|
|
34
|
+
agent: devops
|
|
35
|
+
action: environment_bootstrap
|
|
36
|
+
task: environment-bootstrap.md
|
|
37
|
+
creates:
|
|
38
|
+
- .openlife/config.yaml
|
|
39
|
+
- .openlife/environment-report.json
|
|
40
|
+
- .gitignore
|
|
41
|
+
- README.md
|
|
42
|
+
- package.json
|
|
43
|
+
duration_estimate: "15-30 min"
|
|
44
|
+
idempotent: true
|
|
45
|
+
notes: |
|
|
46
|
+
Verifies/installs CLIs (git, gh, node).
|
|
47
|
+
Authenticates to GitHub.
|
|
48
|
+
Creates local repo + GitHub remote.
|
|
49
|
+
Re-run if switching machines or team members join.
|
|
50
|
+
|
|
51
|
+
- phase: 1
|
|
52
|
+
name: Discovery & Planning
|
|
53
|
+
description: Create all planning artifacts (brief, PRD, spec, architecture)
|
|
54
|
+
|
|
55
|
+
- id: analyst-project-brief
|
|
56
|
+
agent: analyst
|
|
57
|
+
action: create-project-brief
|
|
58
|
+
task: create-project-brief.md
|
|
59
|
+
creates:
|
|
60
|
+
- docs/project-brief.md
|
|
61
|
+
requires: devops-environment-bootstrap
|
|
62
|
+
duration_estimate: "30-60 min"
|
|
63
|
+
optional_steps:
|
|
64
|
+
- brainstorming-session
|
|
65
|
+
- market-research-prompt
|
|
66
|
+
|
|
67
|
+
- id: pm-create-prd
|
|
68
|
+
agent: pm
|
|
69
|
+
action: create-prd
|
|
70
|
+
task: create-prd.md
|
|
71
|
+
creates:
|
|
72
|
+
- docs/prd.md
|
|
73
|
+
requires: analyst-project-brief
|
|
74
|
+
duration_estimate: "30-60 min"
|
|
75
|
+
|
|
76
|
+
- id: ux-create-frontend-spec
|
|
77
|
+
agent: ux-design-expert
|
|
78
|
+
action: create-frontend-spec
|
|
79
|
+
task: create-front-end-spec.md
|
|
80
|
+
creates:
|
|
81
|
+
- docs/front-end-spec.md
|
|
82
|
+
requires: pm-create-prd
|
|
83
|
+
duration_estimate: "30-45 min"
|
|
84
|
+
|
|
85
|
+
- id: architect-create-architecture
|
|
86
|
+
agent: architect
|
|
87
|
+
action: create-fullstack-architecture
|
|
88
|
+
task: create-fullstack-architecture.md
|
|
89
|
+
creates:
|
|
90
|
+
- docs/fullstack-architecture.md
|
|
91
|
+
requires: pm-create-prd
|
|
92
|
+
duration_estimate: "30-60 min"
|
|
93
|
+
notes: |
|
|
94
|
+
Reads PRD + front-end spec. May suggest PRD changes — those
|
|
95
|
+
feed back via the optional pm-update-prd step below.
|
|
96
|
+
|
|
97
|
+
- id: pm-update-prd
|
|
98
|
+
agent: pm
|
|
99
|
+
action: update-prd
|
|
100
|
+
task: update-prd.md
|
|
101
|
+
updates:
|
|
102
|
+
- docs/prd.md
|
|
103
|
+
requires: architect-create-architecture
|
|
104
|
+
condition: architecture_suggests_prd_changes
|
|
105
|
+
optional: true
|
|
106
|
+
duration_estimate: "15-30 min"
|
|
107
|
+
|
|
108
|
+
- phase: 2
|
|
109
|
+
name: Document Sharding
|
|
110
|
+
description: PO shards PRD + architecture into per-epic context bundles
|
|
111
|
+
|
|
112
|
+
- id: po-shard-docs
|
|
113
|
+
agent: po
|
|
114
|
+
action: shard-doc
|
|
115
|
+
task: shard-doc.md
|
|
116
|
+
creates:
|
|
117
|
+
- docs/prd-shards/
|
|
118
|
+
- docs/architecture-shards/
|
|
119
|
+
requires: architect-create-architecture
|
|
120
|
+
duration_estimate: "15-30 min"
|
|
121
|
+
|
|
122
|
+
- phase: 3
|
|
123
|
+
name: Development Cycle
|
|
124
|
+
description: Each story runs through story-development-cycle. Marker only.
|
|
125
|
+
|
|
126
|
+
- id: handoff-to-sdc
|
|
127
|
+
agent: sm
|
|
128
|
+
action: handoff-to-sdc
|
|
129
|
+
requires: po-shard-docs
|
|
130
|
+
notes: |
|
|
131
|
+
Marker step. The next runner picks the first story from the
|
|
132
|
+
sharded epic and triggers `openlife workflow run story-development-cycle`.
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
workflow:
|
|
2
|
+
id: qa-loop
|
|
3
|
+
name: QA Iterative Review Loop
|
|
4
|
+
description: >-
|
|
5
|
+
Automated review-fix-review cycle for a story that hit CONCERNS or FAIL on
|
|
6
|
+
its first qa-gate. Hard-capped at 5 iterations to prevent runaway loops;
|
|
7
|
+
after that, escalation is automatic. Each iteration runs
|
|
8
|
+
review → verdict → fix → re-review.
|
|
9
|
+
type: qa-loop
|
|
10
|
+
version: "1.0"
|
|
11
|
+
|
|
12
|
+
metadata:
|
|
13
|
+
elicit: false
|
|
14
|
+
confirmation_required: false
|
|
15
|
+
|
|
16
|
+
phases:
|
|
17
|
+
- phase_1: Initial QA Review
|
|
18
|
+
- phase_2: Fix + Re-review (loop)
|
|
19
|
+
- phase_3: Escalation gate
|
|
20
|
+
|
|
21
|
+
sequence:
|
|
22
|
+
- phase: 1
|
|
23
|
+
name: Initial QA Review
|
|
24
|
+
|
|
25
|
+
- id: qa-initial-review
|
|
26
|
+
agent: qa
|
|
27
|
+
action: review-story
|
|
28
|
+
duration_estimate: "20-40 min"
|
|
29
|
+
notes: |
|
|
30
|
+
Reads the story file and produces a structured verdict:
|
|
31
|
+
APPROVE → workflow exits via qa-loop-approved (skip remaining).
|
|
32
|
+
REJECT → continue to dev-fix-1.
|
|
33
|
+
BLOCKED → escalate-immediately.
|
|
34
|
+
|
|
35
|
+
- phase: 2
|
|
36
|
+
name: Fix + Re-review (loop iterations; engine v1.2 unrolls explicitly)
|
|
37
|
+
|
|
38
|
+
# Iteration 1
|
|
39
|
+
- id: dev-fix-1
|
|
40
|
+
agent: dev
|
|
41
|
+
action: apply-qa-feedback
|
|
42
|
+
requires: qa-initial-review
|
|
43
|
+
duration_estimate: "1-3 hours"
|
|
44
|
+
idempotent: true
|
|
45
|
+
|
|
46
|
+
- id: qa-review-1
|
|
47
|
+
agent: qa
|
|
48
|
+
action: review-story
|
|
49
|
+
requires: dev-fix-1
|
|
50
|
+
duration_estimate: "20-40 min"
|
|
51
|
+
idempotent: true
|
|
52
|
+
|
|
53
|
+
# Iteration 2
|
|
54
|
+
- id: dev-fix-2
|
|
55
|
+
agent: dev
|
|
56
|
+
action: apply-qa-feedback
|
|
57
|
+
requires: qa-review-1
|
|
58
|
+
duration_estimate: "1-3 hours"
|
|
59
|
+
idempotent: true
|
|
60
|
+
|
|
61
|
+
- id: qa-review-2
|
|
62
|
+
agent: qa
|
|
63
|
+
action: review-story
|
|
64
|
+
requires: dev-fix-2
|
|
65
|
+
duration_estimate: "20-40 min"
|
|
66
|
+
idempotent: true
|
|
67
|
+
|
|
68
|
+
# Iteration 3
|
|
69
|
+
- id: dev-fix-3
|
|
70
|
+
agent: dev
|
|
71
|
+
action: apply-qa-feedback
|
|
72
|
+
requires: qa-review-2
|
|
73
|
+
duration_estimate: "1-3 hours"
|
|
74
|
+
idempotent: true
|
|
75
|
+
|
|
76
|
+
- id: qa-review-3
|
|
77
|
+
agent: qa
|
|
78
|
+
action: review-story
|
|
79
|
+
requires: dev-fix-3
|
|
80
|
+
duration_estimate: "20-40 min"
|
|
81
|
+
idempotent: true
|
|
82
|
+
|
|
83
|
+
# Iteration 4
|
|
84
|
+
- id: dev-fix-4
|
|
85
|
+
agent: dev
|
|
86
|
+
action: apply-qa-feedback
|
|
87
|
+
requires: qa-review-3
|
|
88
|
+
duration_estimate: "1-3 hours"
|
|
89
|
+
idempotent: true
|
|
90
|
+
|
|
91
|
+
- id: qa-review-4
|
|
92
|
+
agent: qa
|
|
93
|
+
action: review-story
|
|
94
|
+
requires: dev-fix-4
|
|
95
|
+
duration_estimate: "20-40 min"
|
|
96
|
+
idempotent: true
|
|
97
|
+
|
|
98
|
+
# Iteration 5 (final budget)
|
|
99
|
+
- id: dev-fix-5
|
|
100
|
+
agent: dev
|
|
101
|
+
action: apply-qa-feedback
|
|
102
|
+
requires: qa-review-4
|
|
103
|
+
duration_estimate: "1-3 hours"
|
|
104
|
+
idempotent: true
|
|
105
|
+
|
|
106
|
+
- id: qa-review-5
|
|
107
|
+
agent: qa
|
|
108
|
+
action: review-story
|
|
109
|
+
requires: dev-fix-5
|
|
110
|
+
duration_estimate: "20-40 min"
|
|
111
|
+
idempotent: true
|
|
112
|
+
|
|
113
|
+
- phase: 3
|
|
114
|
+
name: Escalation gate (max_iterations_reached)
|
|
115
|
+
|
|
116
|
+
- id: escalate-loop
|
|
117
|
+
agent: pm
|
|
118
|
+
action: escalate-qa-loop
|
|
119
|
+
requires: qa-review-5
|
|
120
|
+
duration_estimate: "10-20 min"
|
|
121
|
+
notes: |
|
|
122
|
+
Reached after 5 unsuccessful iterations. Engineering manager
|
|
123
|
+
and product owner triage manually. Loop closes here in v1.2.
|
|
124
|
+
Future: short-circuit by `condition: !qa_approved` on each
|
|
125
|
+
review step once conditional expressions land in v1.3.
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
workflow:
|
|
2
|
+
id: story-development-cycle
|
|
3
|
+
name: Story Development Cycle (SDC)
|
|
4
|
+
description: >-
|
|
5
|
+
Four-phase workflow for shipping a single story end-to-end: @sm creates,
|
|
6
|
+
@po validates, @dev implements, @qa gates. The primary workflow for all
|
|
7
|
+
OpenLife story work, with squad-level dispatch at each phase.
|
|
8
|
+
type: story-cycle
|
|
9
|
+
version: "1.0"
|
|
10
|
+
|
|
11
|
+
metadata:
|
|
12
|
+
elicit: true
|
|
13
|
+
confirmation_required: false
|
|
14
|
+
|
|
15
|
+
phases:
|
|
16
|
+
- phase_1: Create
|
|
17
|
+
- phase_2: Validate
|
|
18
|
+
- phase_3: Implement
|
|
19
|
+
- phase_4: QA Gate
|
|
20
|
+
|
|
21
|
+
sequence:
|
|
22
|
+
- phase: 1
|
|
23
|
+
name: Create
|
|
24
|
+
description: Scrum Master drafts a story from the epic context
|
|
25
|
+
|
|
26
|
+
- id: sm-draft-story
|
|
27
|
+
agent: sm
|
|
28
|
+
action: create-next-story
|
|
29
|
+
task: create-next-story.md
|
|
30
|
+
creates:
|
|
31
|
+
- docs/stories/{epicNum}.{storyNum}.story.md
|
|
32
|
+
duration_estimate: "15-30 min"
|
|
33
|
+
notes: |
|
|
34
|
+
Pulls from sharded PRD + epic context.
|
|
35
|
+
Output status: Draft. Status field literally `Draft` in the story file.
|
|
36
|
+
|
|
37
|
+
- phase: 2
|
|
38
|
+
name: Validate
|
|
39
|
+
description: Product Owner runs the 10-point validation checklist
|
|
40
|
+
|
|
41
|
+
- id: po-validate-story
|
|
42
|
+
agent: po
|
|
43
|
+
action: validate-next-story
|
|
44
|
+
task: validate-next-story.md
|
|
45
|
+
requires: sm-draft-story
|
|
46
|
+
duration_estimate: "10-20 min"
|
|
47
|
+
idempotent: true
|
|
48
|
+
notes: |
|
|
49
|
+
10-point checklist. Decision GO (>=7) or NO-GO.
|
|
50
|
+
On GO @po MUST update Status: Draft → Ready in the story file.
|
|
51
|
+
|
|
52
|
+
- phase: 3
|
|
53
|
+
name: Implement
|
|
54
|
+
description: Developer executes the story
|
|
55
|
+
|
|
56
|
+
- id: dev-develop-story
|
|
57
|
+
agent: dev
|
|
58
|
+
action: develop-story
|
|
59
|
+
task: dev-develop-story.md
|
|
60
|
+
requires: po-validate-story
|
|
61
|
+
duration_estimate: "1-3 days"
|
|
62
|
+
notes: |
|
|
63
|
+
Modes: Interactive (default) / YOLO / Pre-Flight.
|
|
64
|
+
Updates File List + checkboxes as work progresses.
|
|
65
|
+
CodeRabbit self-healing max 2 iterations on CRITICAL/HIGH.
|
|
66
|
+
Status: Ready → InProgress → InReview.
|
|
67
|
+
|
|
68
|
+
- phase: 4
|
|
69
|
+
name: QA Gate
|
|
70
|
+
description: Test Architect runs the 7-quality-check gate
|
|
71
|
+
|
|
72
|
+
- id: qa-gate
|
|
73
|
+
squad: qa-loop
|
|
74
|
+
action: qa-gate
|
|
75
|
+
task: qa-gate.md
|
|
76
|
+
requires: dev-develop-story
|
|
77
|
+
duration_estimate: "30-60 min"
|
|
78
|
+
notes: |
|
|
79
|
+
7 quality checks. Verdict PASS / CONCERNS / FAIL / WAIVED.
|
|
80
|
+
On PASS status moves InReview → Done; @devops takes git push.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# OpenLife Feature Rollout Changelog (Dual Mode + Reversa + DesignMD)
|
|
2
|
+
|
|
3
|
+
## Completed in this cycle
|
|
4
|
+
|
|
5
|
+
### Core execution
|
|
6
|
+
- Dual mode persisted in mission lifecycle (`task` default, `service` explicit)
|
|
7
|
+
- Formal job lifecycle with events (`enqueued/claimed/started/completed/failed/blocked`)
|
|
8
|
+
- Destructive guardrails enforced (delete/remove/erase requires explicit consent)
|
|
9
|
+
|
|
10
|
+
### Service operations
|
|
11
|
+
- CLI operations: `service status/pause/resume/events`
|
|
12
|
+
- Task introspection: `task status`
|
|
13
|
+
- Budget hard-stop -> service paused + event log
|
|
14
|
+
|
|
15
|
+
### Workspace foundations
|
|
16
|
+
- Workspace-aware artifacts path under `.artifacts/workspaces/<workspaceId>/...`
|
|
17
|
+
- Service state/events now namespaced by workspace
|
|
18
|
+
|
|
19
|
+
### Runtime and orchestration
|
|
20
|
+
- Runtime registry probe/list baseline
|
|
21
|
+
- Teammate board baseline (owner/status/blockers/comments)
|
|
22
|
+
- Learning loop baseline (governed skill candidates)
|
|
23
|
+
|
|
24
|
+
### Reversa and DesignMD
|
|
25
|
+
- Reversa state now supports mode metadata (`default` | `designmd`)
|
|
26
|
+
- New mode setter in Reversa (`setMode`)
|
|
27
|
+
- New `DesignMdMode` manager to apply/design profile and write root `DESIGN.md`
|
|
28
|
+
- CLI surface:
|
|
29
|
+
- `reversa mode --set <default|designmd> --profile <id>`
|
|
30
|
+
- `designmd status`
|
|
31
|
+
- `designmd apply <profileId> <source> <title> <designPath>`
|
|
32
|
+
- `aiobuilder mode --set <default|designmd> --profile <id>`
|
|
33
|
+
|
|
34
|
+
## Validation status
|
|
35
|
+
- TypeScript build: passing
|
|
36
|
+
- Automated tests passing for dual mode, guardrails, lifecycle, runtime, reversa-lite, service CLI, teammate/learning
|
|
37
|
+
|
|
38
|
+
## Next integration step (pending your references/models)
|
|
39
|
+
1. Add importer for Awesome DESIGN.md catalog profile manifests
|
|
40
|
+
2. Add profile templates bundle under `design/profiles/`
|
|
41
|
+
3. Wire Reversa generation phase to enforce active DesignMD profile tokens
|
|
42
|
+
4. Wire AIOBUILDER scaffolding prompts to DesignMD profile context
|
|
43
|
+
5. Add regression tests for DesignMD profile switching and output consistency
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# OpenLife External Sources & Security Guard
|
|
2
|
+
|
|
3
|
+
## New source catalog commands
|
|
4
|
+
- `openlife sources list`
|
|
5
|
+
- `openlife sources guard-check <url>`
|
|
6
|
+
- `openlife sources scaffold <type> <id> --notes "..."`
|
|
7
|
+
|
|
8
|
+
## Autonomous creation baselines (local)
|
|
9
|
+
- `openlife agents create <id> --role <role> --notes "..."`
|
|
10
|
+
- `openlife squads create <id> --domain <domain> --notes "..."`
|
|
11
|
+
- `openlife skills create <id> --notes "..."`
|
|
12
|
+
- `openlife mcp create <id> --transport <stdio|http> --entry "..."`
|
|
13
|
+
|
|
14
|
+
Created artifacts:
|
|
15
|
+
- `.catalog/agents/<id>/AGENT.md`
|
|
16
|
+
- `.catalog/squads/<id>/SQUAD.md`
|
|
17
|
+
- `.catalog/skills/<id>/SKILL.md`
|
|
18
|
+
- `.catalog/mcps/<id>/mcp.json`
|
|
19
|
+
|
|
20
|
+
## Default reference sources configured
|
|
21
|
+
- https://skills.sh/
|
|
22
|
+
- https://clawhub.ai/
|
|
23
|
+
- https://mcpmarket.com/
|
|
24
|
+
- https://mcpservers.org/
|
|
25
|
+
- https://github.com/ (import-allowed with guard)
|
|
26
|
+
|
|
27
|
+
## Cybersecurity guard (mandatory pre-download)
|
|
28
|
+
1. Validate source URL trust.
|
|
29
|
+
2. Scan file list / extracted directory for blocked patterns.
|
|
30
|
+
3. Reject package when blocked files are present.
|
|
31
|
+
|
|
32
|
+
Active enforcement:
|
|
33
|
+
- `designmd import` runs guard before import and blocks when malicious patterns exist.
|