@aria_asi/cli 0.2.39 → 0.2.41
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/bin/aria.js +236 -34
- package/dist/aria-connector/src/action-ledger-core.d.ts +387 -0
- package/dist/aria-connector/src/action-ledger-core.d.ts.map +1 -0
- package/dist/aria-connector/src/action-ledger-core.js +638 -0
- package/dist/aria-connector/src/action-ledger-core.js.map +1 -0
- package/dist/aria-connector/src/chat.d.ts.map +1 -1
- package/dist/aria-connector/src/chat.js +5 -6
- package/dist/aria-connector/src/chat.js.map +1 -1
- package/dist/aria-connector/src/codebase-scanner.d.ts +1 -1
- package/dist/aria-connector/src/codebase-scanner.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/claude-code.d.ts +1 -0
- package/dist/aria-connector/src/connectors/claude-code.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/claude-code.js +152 -14
- package/dist/aria-connector/src/connectors/claude-code.js.map +1 -1
- package/dist/aria-connector/src/connectors/codebase-awareness.d.ts +10 -0
- package/dist/aria-connector/src/connectors/codebase-awareness.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/codebase-awareness.js +276 -27
- package/dist/aria-connector/src/connectors/codebase-awareness.js.map +1 -1
- package/dist/aria-connector/src/connectors/codex.d.ts +3 -1
- package/dist/aria-connector/src/connectors/codex.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/codex.js +1271 -40
- package/dist/aria-connector/src/connectors/codex.js.map +1 -1
- package/dist/aria-connector/src/connectors/cursor.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/cursor.js +7 -0
- package/dist/aria-connector/src/connectors/cursor.js.map +1 -1
- package/dist/aria-connector/src/connectors/governed-adapter.d.ts +30 -0
- package/dist/aria-connector/src/connectors/governed-adapter.d.ts.map +1 -0
- package/dist/aria-connector/src/connectors/governed-adapter.js +132 -0
- package/dist/aria-connector/src/connectors/governed-adapter.js.map +1 -0
- package/dist/aria-connector/src/connectors/opencode.d.ts +3 -1
- package/dist/aria-connector/src/connectors/opencode.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/opencode.js +18 -2
- package/dist/aria-connector/src/connectors/opencode.js.map +1 -1
- package/dist/aria-connector/src/connectors/repo-guard.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/repo-guard.js +25 -14
- package/dist/aria-connector/src/connectors/repo-guard.js.map +1 -1
- package/dist/aria-connector/src/connectors/runtime.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/runtime.js +92 -2
- package/dist/aria-connector/src/connectors/runtime.js.map +1 -1
- package/dist/aria-connector/src/connectors/shell.d.ts.map +1 -1
- package/dist/aria-connector/src/connectors/shell.js +123 -7
- package/dist/aria-connector/src/connectors/shell.js.map +1 -1
- package/dist/aria-connector/src/cross-cli-hive-binding.d.ts +63 -0
- package/dist/aria-connector/src/cross-cli-hive-binding.d.ts.map +1 -0
- package/dist/aria-connector/src/cross-cli-hive-binding.js +205 -0
- package/dist/aria-connector/src/cross-cli-hive-binding.js.map +1 -0
- package/dist/aria-connector/src/garden-control-plane.d.ts +6 -1
- package/dist/aria-connector/src/garden-control-plane.d.ts.map +1 -1
- package/dist/aria-connector/src/garden-control-plane.js +8 -2
- package/dist/aria-connector/src/garden-control-plane.js.map +1 -1
- package/dist/aria-connector/src/governed-surface-runner.d.ts +189 -0
- package/dist/aria-connector/src/governed-surface-runner.d.ts.map +1 -0
- package/dist/aria-connector/src/governed-surface-runner.js +1022 -0
- package/dist/aria-connector/src/governed-surface-runner.js.map +1 -0
- package/dist/aria-connector/src/index.d.ts +10 -1
- package/dist/aria-connector/src/index.d.ts.map +1 -1
- package/dist/aria-connector/src/index.js +5 -0
- package/dist/aria-connector/src/index.js.map +1 -1
- package/dist/aria-connector/src/task-runner.d.ts +3 -0
- package/dist/aria-connector/src/task-runner.d.ts.map +1 -0
- package/dist/aria-connector/src/task-runner.js +3526 -0
- package/dist/aria-connector/src/task-runner.js.map +1 -0
- package/dist/aria-web/src/lib/codebase-scanner.d.ts +21 -2
- package/dist/aria-web/src/lib/codebase-scanner.d.ts.map +1 -1
- package/dist/aria-web/src/lib/codebase-scanner.js +59 -14
- package/dist/aria-web/src/lib/codebase-scanner.js.map +1 -1
- package/dist/assets/hooks/README.md +58 -0
- package/dist/assets/hooks/aria-agent-handoff.mjs +147 -2
- package/dist/assets/hooks/aria-agent-ledger-merge.mjs +31 -7
- package/dist/assets/hooks/aria-architect-fallback.mjs +10 -2
- package/dist/assets/hooks/aria-claim-evidence-stop-gate.mjs +240 -0
- package/dist/assets/hooks/aria-cognition-substrate-binding.mjs +84 -10
- package/dist/assets/hooks/aria-first-class-coach.mjs +305 -10
- package/dist/assets/hooks/aria-harness-via-sdk.mjs +93 -16
- package/dist/assets/hooks/aria-import-resolution-gate.mjs +106 -20
- package/dist/assets/hooks/aria-outcome-record.mjs +56 -20
- package/dist/assets/hooks/aria-pre-emit-autoload.mjs +1809 -0
- package/dist/assets/hooks/aria-pre-emit-autoload.mjs.before-orchestration-redesign +1400 -0
- package/dist/assets/hooks/aria-pre-emit-dryrun.mjs +22 -3
- package/dist/assets/hooks/aria-pre-text-gate.mjs +11 -2
- package/dist/assets/hooks/aria-pre-tool-gate.mjs +516 -92
- package/dist/assets/hooks/aria-pre-tool-use.mjs +70 -6
- package/dist/assets/hooks/aria-preprompt-consult.mjs +23 -4
- package/dist/assets/hooks/aria-repo-doctrine-gate.mjs +29 -3
- package/dist/assets/hooks/aria-stop-gate.mjs +585 -76
- package/dist/assets/hooks/aria-trigger-autolearn.mjs +17 -3
- package/dist/assets/hooks/aria-universal-turn-packet.mjs +1165 -0
- package/dist/assets/hooks/aria-userprompt-abandon-detect.mjs +9 -1
- package/dist/assets/hooks/canonical-settings-block.json +172 -0
- package/dist/assets/hooks/codex-native/aria-harness-ticker-sidecar.mjs +92 -0
- package/dist/assets/hooks/codex-native/aria-hive-wal-consumer.mjs +86 -0
- package/dist/assets/hooks/codex-native/aria-live-ticker.mjs +38 -0
- package/dist/assets/hooks/codex-native/aria-post-tool-use.mjs +236 -0
- package/dist/assets/hooks/codex-native/aria-pre-tool-use.mjs +362 -0
- package/dist/assets/hooks/codex-native/aria-stop.mjs +691 -0
- package/dist/assets/hooks/codex-native/aria-userprompt-submit.mjs +623 -0
- package/dist/assets/hooks/codex-native/atlas-session-context.mjs +121 -0
- package/dist/assets/hooks/codex-native/lib/evaluate-with-kernel.mjs +257 -0
- package/dist/assets/hooks/codex-native/lib/hive-wal-consumer.mjs +452 -0
- package/dist/assets/hooks/codex-native/lib/kernel/deterministic-cognitive-kernel.mjs +914 -0
- package/dist/assets/hooks/codex-native/lib/project-boundary-cognition.mjs +143 -0
- package/dist/assets/hooks/codex-native/lib/runtime-client.mjs +3567 -0
- package/dist/assets/hooks/codex-native/lib/task-project-ledger.mjs +294 -0
- package/dist/assets/hooks/doctrine_trigger_map.json +236 -25
- package/dist/assets/hooks/doctrine_trigger_map.schema.json +46 -0
- package/dist/assets/hooks/install.sh +84 -0
- package/dist/assets/hooks/lib/action-ledger-core.mjs +269 -0
- package/dist/assets/hooks/lib/aria-gate-ledger.mjs +143 -0
- package/dist/assets/hooks/lib/ast-stub-shape-detector.mjs +107 -0
- package/dist/assets/hooks/lib/atlas-dossier-client.mjs +151 -0
- package/dist/assets/hooks/lib/atlas-orchestrator-postwire.mjs +221 -0
- package/dist/assets/hooks/lib/canonical-lenses.mjs +83 -6
- package/dist/assets/hooks/lib/coach-intent-classifier.mjs +248 -0
- package/dist/assets/hooks/lib/cognitive-block-parser.mjs +111 -0
- package/dist/assets/hooks/lib/doctrine-trigger-map-loader.mjs +137 -0
- package/dist/assets/hooks/lib/domain-output-quality.mjs +132 -3
- package/dist/assets/hooks/lib/empty-catch-scanner.mjs +91 -0
- package/dist/assets/hooks/lib/end-phase-qa-autofire.mjs +426 -0
- package/dist/assets/hooks/lib/evaluate-with-kernel.mjs +133 -0
- package/dist/assets/hooks/lib/first-class-coach.mjs +454 -19
- package/dist/assets/hooks/lib/gate-audit.mjs +12 -2
- package/dist/assets/hooks/lib/gate-loop-state.mjs +11 -2
- package/dist/assets/hooks/lib/goal-contract-quality.mjs +302 -0
- package/dist/assets/hooks/lib/hook-message-window.mjs +101 -9
- package/dist/assets/hooks/lib/invocation-required-verifier.mjs +184 -0
- package/dist/assets/hooks/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
- package/dist/assets/hooks/lib/obligation-ledger.mjs +147 -0
- package/dist/assets/hooks/lib/orchestration-manifest-extract.mjs +217 -0
- package/dist/assets/hooks/lib/owner-authorizations.mjs +269 -0
- package/dist/assets/hooks/lib/probe-discipline-scanner.mjs +142 -0
- package/dist/assets/hooks/lib/project-boundary-cognition.mjs +143 -0
- package/dist/assets/hooks/lib/recovery-context.mjs +151 -0
- package/dist/assets/hooks/lib/recovery-template-loader.mjs +154 -0
- package/dist/assets/hooks/lib/self-doctrine-check.mjs +321 -0
- package/dist/assets/hooks/lib/sensitive-shape-detector.mjs +64 -0
- package/dist/assets/hooks/lib/skill-autoload-gate-impl.mjs +226 -1
- package/dist/assets/hooks/lib/stop-hook-protocol.mjs +166 -0
- package/dist/assets/hooks/lib/surface-caught.mjs +94 -0
- package/dist/assets/hooks/recovery-templates/force-reauthor.md +67 -0
- package/dist/assets/hooks/recovery-templates/handoff-recovery.md +25 -0
- package/dist/assets/hooks/scripts/check-hard-risk-prefix.mjs +99 -0
- package/dist/assets/hooks/skills/aria-conversational-doctrine-discipline/SKILL.md +101 -0
- package/dist/assets/hooks/test-aria-preturn-memory-gate.mjs +2 -2
- package/dist/assets/hooks/test-tier-lens-labeling.mjs +14 -3
- package/dist/assets/opencode-plugins/harness-context/index.js +39 -6
- package/dist/assets/opencode-plugins/harness-context/task-project-ledger.mjs +5 -1
- package/dist/assets/opencode-plugins/harness-gate/index.js +36 -0
- package/dist/assets/opencode-plugins/harness-gate/lib/atlas-dossier-client.js +1 -0
- package/dist/assets/opencode-plugins/harness-gate/lib/recovery-grants.js +79 -0
- package/dist/assets/opencode-plugins/harness-outcome/index.js +12 -0
- package/dist/assets/opencode-plugins/harness-stop/index.js +97 -2
- package/dist/assets/opencode-plugins/harness-stop/lib/atlas-dossier-client.js +1 -0
- package/dist/assets/opencode-plugins/harness-stop/lib/domain-output-quality.js +15 -2
- package/dist/assets/opencode-plugins/lib/coach.js +148 -0
- package/dist/runtime/coach-kernel.mjs +144 -7
- package/dist/runtime/codex-bridge.mjs +254 -8
- package/dist/runtime/discipline/doctrine_trigger_map.json +236 -25
- package/dist/runtime/discipline/skills/aria-cognition/34-frameworks-unified/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-cognitives/SKILL.md +128 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-intra-phase/SKILL.md +99 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-post-phase/SKILL.md +118 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-aristotle-pre-phase/SKILL.md +117 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-axioms-first-principles/SKILL.md +202 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-axioms-first-principles/agents/openai.yaml +4 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-axioms-first-principles/references/source-map.md +130 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-backend-architect/SKILL.md +124 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-backend-architect/references/backend-cookbook.md +417 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-business-audit/SKILL.md +133 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-business-audit/references/audit-cookbook.md +247 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-business-frame/SKILL.md +138 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-business-frame/references/business-cookbook.md +154 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-chat/SKILL.md +84 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-chat/scripts/aria-chat.sh +57 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-cognition-autofire/SKILL.md +137 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-cognition-batch/SKILL.md +264 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-decision-mizan/SKILL.md +136 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-decision-mizan/references/decision-frameworks.md +287 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-first-class-operating-contract/SKILL.md +104 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-frontend-architect/SKILL.md +123 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-frontend-architect/references/frontend-cookbook.md +358 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-fullstack-orchestrator/SKILL.md +127 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-fullstack-orchestrator/references/fullstack-cookbook.md +383 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-gtm-architect/SKILL.md +126 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-gtm-architect/references/gtm-cookbook.md +235 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-harness-deploy/SKILL.md +145 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-harness-no-stripping/SKILL.md +135 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-harness-onboarding/SKILL.md +130 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-harness-output-discipline/SKILL.md +120 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-harness-substrate-binding/SKILL.md +139 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-http-harness-client/SKILL.md +85 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-http-harness-client/scripts/smoke.mjs +47 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-k8s-deploy/SKILL.md +174 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-k8s-deploy/agents/openai.yaml +3 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-ladduniframe/SKILL.md +60 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-ledger-fleet-execution/SKILL.md +126 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-live-ops/SKILL.md +54 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-mac-ssh-ops/SKILL.md +100 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-memory-index/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-noor-cognitives/SKILL.md +120 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-ops/SKILL.md +60 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-ops/references/live-endpoints.md +59 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-quality-audit/SKILL.md +133 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-readable-output/SKILL.md +239 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-readable-output/references/layout-cookbook.md +366 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-reasoning/SKILL.md +67 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-reasoning/references/core-principles.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-repo-audit/SKILL.md +135 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-repo-audit/references/repo-audit-cookbook.md +375 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-research-orchestrator/SKILL.md +138 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-research-orchestrator/references/research-patterns.md +270 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-retention-engine/SKILL.md +120 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-retention-engine/references/retention-cookbook.md +271 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-revenue-engine/SKILL.md +128 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-revenue-engine/references/revenue-cookbook.md +227 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-audit/SKILL.md +233 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-audit/references/audit-checklist.md +369 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-cookbook/SKILL.md +288 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-senior-code-cookbook/references/engineering-cookbook.md +489 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-soul-principles/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/aria-task-codex-executor/SKILL.md +86 -0
- package/dist/runtime/discipline/skills/aria-cognition/aristotle-engine/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/cross-domain-24/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/deepsoul-emotional/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/fitrah-guard/SKILL.md +78 -0
- package/dist/runtime/discipline/skills/aria-cognition/ghazali-8lens/SKILL.md +227 -29
- package/dist/runtime/discipline/skills/aria-cognition/ghazali-8lens/references/ghazali-8lens-cookbook.md +797 -0
- package/dist/runtime/discipline/skills/aria-cognition/ijtihad-novel/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/ilham-intuition/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/never-guess/SKILL.md +77 -0
- package/dist/runtime/discipline/skills/aria-cognition/noor-recognition/SKILL.md +45 -0
- package/dist/runtime/discipline/skills/aria-cognition/qiyas-analogy/SKILL.md +174 -14
- package/dist/runtime/discipline/skills/aria-cognition/ruh-basis/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/tadabbur/SKILL.md +506 -0
- package/dist/runtime/discipline/skills/aria-cognition/tadabbur/references/tadabbur-cookbook.md +921 -0
- package/dist/runtime/discipline/skills/aria-cognition/tadabbur-ops/SKILL.md +42 -0
- package/dist/runtime/discipline/skills/aria-cognition/tafakkur/SKILL.md +104 -0
- package/dist/runtime/doctrine_trigger_map.json +236 -25
- package/dist/runtime/embedded-public-key.mjs +27 -0
- package/dist/runtime/gated-ledger.mjs +41 -14
- package/dist/runtime/harness-daemon.mjs +85 -10
- package/dist/runtime/hive-wal-publisher.mjs +292 -0
- package/dist/runtime/hooks/README.md +58 -0
- package/dist/runtime/hooks/aria-agent-handoff.mjs +147 -2
- package/dist/runtime/hooks/aria-agent-ledger-merge.mjs +31 -7
- package/dist/runtime/hooks/aria-architect-fallback.mjs +10 -2
- package/dist/runtime/hooks/aria-claim-evidence-stop-gate.mjs +240 -0
- package/dist/runtime/hooks/aria-cognition-substrate-binding.mjs +84 -10
- package/dist/runtime/hooks/aria-first-class-coach.mjs +305 -10
- package/dist/runtime/hooks/aria-harness-via-sdk.mjs +93 -16
- package/dist/runtime/hooks/aria-import-resolution-gate.mjs +106 -20
- package/dist/runtime/hooks/aria-outcome-record.mjs +56 -20
- package/dist/runtime/hooks/aria-pre-emit-autoload.mjs +1809 -0
- package/dist/runtime/hooks/aria-pre-emit-autoload.mjs.before-orchestration-redesign +1400 -0
- package/dist/runtime/hooks/aria-pre-emit-dryrun.mjs +22 -3
- package/dist/runtime/hooks/aria-pre-text-gate.mjs +11 -2
- package/dist/runtime/hooks/aria-pre-tool-gate.mjs +516 -92
- package/dist/runtime/hooks/aria-pre-tool-use.mjs +70 -6
- package/dist/runtime/hooks/aria-preprompt-consult.mjs +23 -4
- package/dist/runtime/hooks/aria-repo-doctrine-gate.mjs +29 -3
- package/dist/runtime/hooks/aria-stop-gate.mjs +585 -76
- package/dist/runtime/hooks/aria-trigger-autolearn.mjs +17 -3
- package/dist/runtime/hooks/aria-universal-turn-packet.mjs +1165 -0
- package/dist/runtime/hooks/aria-userprompt-abandon-detect.mjs +9 -1
- package/dist/runtime/hooks/canonical-settings-block.json +172 -0
- package/dist/runtime/hooks/codex-native/aria-harness-ticker-sidecar.mjs +92 -0
- package/dist/runtime/hooks/codex-native/aria-hive-wal-consumer.mjs +86 -0
- package/dist/runtime/hooks/codex-native/aria-live-ticker.mjs +38 -0
- package/dist/runtime/hooks/codex-native/aria-post-tool-use.mjs +236 -0
- package/dist/runtime/hooks/codex-native/aria-pre-tool-use.mjs +362 -0
- package/dist/runtime/hooks/codex-native/aria-stop.mjs +691 -0
- package/dist/runtime/hooks/codex-native/aria-userprompt-submit.mjs +623 -0
- package/dist/runtime/hooks/codex-native/atlas-session-context.mjs +121 -0
- package/dist/runtime/hooks/codex-native/lib/evaluate-with-kernel.mjs +257 -0
- package/dist/runtime/hooks/codex-native/lib/hive-wal-consumer.mjs +452 -0
- package/dist/runtime/hooks/codex-native/lib/kernel/deterministic-cognitive-kernel.mjs +914 -0
- package/dist/runtime/hooks/codex-native/lib/project-boundary-cognition.mjs +143 -0
- package/dist/runtime/hooks/codex-native/lib/runtime-client.mjs +3567 -0
- package/dist/runtime/hooks/codex-native/lib/task-project-ledger.mjs +294 -0
- package/dist/runtime/hooks/doctrine_trigger_map.json +236 -25
- package/dist/runtime/hooks/doctrine_trigger_map.schema.json +46 -0
- package/dist/runtime/hooks/install.sh +84 -0
- package/dist/runtime/hooks/lib/action-ledger-core.mjs +269 -0
- package/dist/runtime/hooks/lib/aria-gate-ledger.mjs +143 -0
- package/dist/runtime/hooks/lib/ast-stub-shape-detector.mjs +107 -0
- package/dist/runtime/hooks/lib/atlas-dossier-client.mjs +151 -0
- package/dist/runtime/hooks/lib/atlas-orchestrator-postwire.mjs +221 -0
- package/dist/runtime/hooks/lib/canonical-lenses.mjs +83 -6
- package/dist/runtime/hooks/lib/coach-intent-classifier.mjs +248 -0
- package/dist/runtime/hooks/lib/cognitive-block-parser.mjs +111 -0
- package/dist/runtime/hooks/lib/doctrine-trigger-map-loader.mjs +137 -0
- package/dist/runtime/hooks/lib/domain-output-quality.mjs +132 -3
- package/dist/runtime/hooks/lib/empty-catch-scanner.mjs +91 -0
- package/dist/runtime/hooks/lib/end-phase-qa-autofire.mjs +426 -0
- package/dist/runtime/hooks/lib/evaluate-with-kernel.mjs +133 -0
- package/dist/runtime/hooks/lib/first-class-coach.mjs +454 -19
- package/dist/runtime/hooks/lib/gate-audit.mjs +12 -2
- package/dist/runtime/hooks/lib/gate-loop-state.mjs +11 -2
- package/dist/runtime/hooks/lib/goal-contract-quality.mjs +302 -0
- package/dist/runtime/hooks/lib/hook-message-window.mjs +101 -9
- package/dist/runtime/hooks/lib/invocation-required-verifier.mjs +184 -0
- package/dist/runtime/hooks/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
- package/dist/runtime/hooks/lib/obligation-ledger.mjs +147 -0
- package/dist/runtime/hooks/lib/orchestration-manifest-extract.mjs +217 -0
- package/dist/runtime/hooks/lib/owner-authorizations.mjs +269 -0
- package/dist/runtime/hooks/lib/probe-discipline-scanner.mjs +142 -0
- package/dist/runtime/hooks/lib/project-boundary-cognition.mjs +143 -0
- package/dist/runtime/hooks/lib/recovery-context.mjs +151 -0
- package/dist/runtime/hooks/lib/recovery-template-loader.mjs +154 -0
- package/dist/runtime/hooks/lib/self-doctrine-check.mjs +321 -0
- package/dist/runtime/hooks/lib/sensitive-shape-detector.mjs +64 -0
- package/dist/runtime/hooks/lib/skill-autoload-gate-impl.mjs +226 -1
- package/dist/runtime/hooks/lib/stop-hook-protocol.mjs +166 -0
- package/dist/runtime/hooks/lib/surface-caught.mjs +94 -0
- package/dist/runtime/hooks/recovery-templates/force-reauthor.md +67 -0
- package/dist/runtime/hooks/recovery-templates/handoff-recovery.md +25 -0
- package/dist/runtime/hooks/scripts/check-hard-risk-prefix.mjs +99 -0
- package/dist/runtime/hooks/skills/aria-conversational-doctrine-discipline/SKILL.md +101 -0
- package/dist/runtime/hooks/test-aria-preturn-memory-gate.mjs +2 -2
- package/dist/runtime/hooks/test-tier-lens-labeling.mjs +14 -3
- package/dist/runtime/lib/evaluate-with-kernel.mjs +133 -0
- package/dist/runtime/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
- package/dist/runtime/local-phase.mjs +10 -5
- package/dist/runtime/manifest.json +8 -8
- package/dist/runtime/packet-verifier.mjs +166 -0
- package/dist/runtime/provider-proxy.mjs +13 -0
- package/dist/runtime/quality-enforcer.mjs +40 -23
- package/dist/runtime/runtime-rails/registry.mjs +252 -0
- package/dist/runtime/sdk/BUNDLED.json +2 -2
- package/dist/runtime/sdk/index.d.ts +119 -4
- package/dist/runtime/sdk/index.js +138 -12
- package/dist/runtime/sdk/index.js.map +1 -1
- package/dist/runtime/service.mjs +8036 -764
- package/dist/runtime/sub-agent-enforcer.mjs +201 -0
- package/dist/runtime/task-project-ledger.mjs +5 -1
- package/dist/sdk/BUNDLED.json +2 -2
- package/dist/sdk/index.d.ts +119 -4
- package/dist/sdk/index.js +138 -12
- package/dist/sdk/index.js.map +1 -1
- package/hooks/README.md +58 -0
- package/hooks/aria-agent-handoff.mjs +147 -2
- package/hooks/aria-agent-ledger-merge.mjs +31 -7
- package/hooks/aria-architect-fallback.mjs +10 -2
- package/hooks/aria-claim-evidence-stop-gate.mjs +240 -0
- package/hooks/aria-cognition-substrate-binding.mjs +84 -10
- package/hooks/aria-first-class-coach.mjs +305 -10
- package/hooks/aria-harness-via-sdk.mjs +93 -16
- package/hooks/aria-import-resolution-gate.mjs +106 -20
- package/hooks/aria-outcome-record.mjs +56 -20
- package/hooks/aria-pre-emit-autoload.mjs +1809 -0
- package/hooks/aria-pre-emit-autoload.mjs.before-orchestration-redesign +1400 -0
- package/hooks/aria-pre-emit-dryrun.mjs +22 -3
- package/hooks/aria-pre-text-gate.mjs +11 -2
- package/hooks/aria-pre-tool-gate.mjs +516 -92
- package/hooks/aria-pre-tool-use.mjs +70 -6
- package/hooks/aria-preprompt-consult.mjs +23 -4
- package/hooks/aria-repo-doctrine-gate.mjs +29 -3
- package/hooks/aria-stop-gate.mjs +585 -76
- package/hooks/aria-trigger-autolearn.mjs +17 -3
- package/hooks/aria-universal-turn-packet.mjs +1165 -0
- package/hooks/aria-userprompt-abandon-detect.mjs +9 -1
- package/hooks/canonical-settings-block.json +172 -0
- package/hooks/codex-native/aria-harness-ticker-sidecar.mjs +92 -0
- package/hooks/codex-native/aria-hive-wal-consumer.mjs +86 -0
- package/hooks/codex-native/aria-live-ticker.mjs +38 -0
- package/hooks/codex-native/aria-post-tool-use.mjs +236 -0
- package/hooks/codex-native/aria-pre-tool-use.mjs +362 -0
- package/hooks/codex-native/aria-stop.mjs +691 -0
- package/hooks/codex-native/aria-userprompt-submit.mjs +623 -0
- package/hooks/codex-native/atlas-session-context.mjs +121 -0
- package/hooks/codex-native/lib/evaluate-with-kernel.mjs +257 -0
- package/hooks/codex-native/lib/hive-wal-consumer.mjs +452 -0
- package/hooks/codex-native/lib/kernel/deterministic-cognitive-kernel.mjs +914 -0
- package/hooks/codex-native/lib/project-boundary-cognition.mjs +143 -0
- package/hooks/codex-native/lib/runtime-client.mjs +3567 -0
- package/hooks/codex-native/lib/task-project-ledger.mjs +294 -0
- package/hooks/doctrine_trigger_map.json +236 -25
- package/hooks/doctrine_trigger_map.schema.json +46 -0
- package/hooks/install.sh +84 -0
- package/hooks/lib/action-ledger-core.mjs +269 -0
- package/hooks/lib/aria-gate-ledger.mjs +143 -0
- package/hooks/lib/ast-stub-shape-detector.mjs +107 -0
- package/hooks/lib/atlas-dossier-client.mjs +151 -0
- package/hooks/lib/atlas-orchestrator-postwire.mjs +221 -0
- package/hooks/lib/canonical-lenses.mjs +83 -6
- package/hooks/lib/coach-intent-classifier.mjs +248 -0
- package/hooks/lib/cognitive-block-parser.mjs +111 -0
- package/hooks/lib/doctrine-trigger-map-loader.mjs +137 -0
- package/hooks/lib/domain-output-quality.mjs +132 -3
- package/hooks/lib/empty-catch-scanner.mjs +91 -0
- package/hooks/lib/end-phase-qa-autofire.mjs +426 -0
- package/hooks/lib/evaluate-with-kernel.mjs +133 -0
- package/hooks/lib/first-class-coach.mjs +454 -19
- package/hooks/lib/gate-audit.mjs +12 -2
- package/hooks/lib/gate-loop-state.mjs +11 -2
- package/hooks/lib/goal-contract-quality.mjs +302 -0
- package/hooks/lib/hook-message-window.mjs +101 -9
- package/hooks/lib/invocation-required-verifier.mjs +184 -0
- package/hooks/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
- package/hooks/lib/obligation-ledger.mjs +147 -0
- package/hooks/lib/orchestration-manifest-extract.mjs +217 -0
- package/hooks/lib/owner-authorizations.mjs +269 -0
- package/hooks/lib/probe-discipline-scanner.mjs +142 -0
- package/hooks/lib/project-boundary-cognition.mjs +143 -0
- package/hooks/lib/recovery-context.mjs +151 -0
- package/hooks/lib/recovery-template-loader.mjs +154 -0
- package/hooks/lib/self-doctrine-check.mjs +321 -0
- package/hooks/lib/sensitive-shape-detector.mjs +64 -0
- package/hooks/lib/skill-autoload-gate-impl.mjs +226 -1
- package/hooks/lib/stop-hook-protocol.mjs +166 -0
- package/hooks/lib/surface-caught.mjs +94 -0
- package/hooks/recovery-templates/force-reauthor.md +67 -0
- package/hooks/recovery-templates/handoff-recovery.md +25 -0
- package/hooks/scripts/check-hard-risk-prefix.mjs +99 -0
- package/hooks/skills/aria-conversational-doctrine-discipline/SKILL.md +101 -0
- package/hooks/test-aria-preturn-memory-gate.mjs +2 -2
- package/hooks/test-tier-lens-labeling.mjs +14 -3
- package/opencode-plugins/harness-context/index.js +39 -6
- package/opencode-plugins/harness-context/task-project-ledger.mjs +5 -1
- package/opencode-plugins/harness-gate/index.js +36 -0
- package/opencode-plugins/harness-gate/lib/atlas-dossier-client.js +1 -0
- package/opencode-plugins/harness-gate/lib/recovery-grants.js +79 -0
- package/opencode-plugins/harness-outcome/index.js +12 -0
- package/opencode-plugins/harness-stop/index.js +97 -2
- package/opencode-plugins/harness-stop/lib/atlas-dossier-client.js +1 -0
- package/opencode-plugins/harness-stop/lib/domain-output-quality.js +15 -2
- package/opencode-plugins/lib/coach.js +148 -0
- package/package.json +71 -5
- package/runtime-src/coach-kernel.mjs +144 -7
- package/runtime-src/codex-bridge.mjs +254 -8
- package/runtime-src/embedded-public-key.mjs +27 -0
- package/runtime-src/gated-ledger.mjs +41 -14
- package/runtime-src/harness-daemon.mjs +85 -10
- package/runtime-src/hive-wal-publisher.mjs +292 -0
- package/runtime-src/lib/evaluate-with-kernel.mjs +133 -0
- package/runtime-src/lib/kernel/deterministic-cognitive-kernel.mjs +906 -0
- package/runtime-src/local-phase.mjs +10 -5
- package/runtime-src/packet-verifier.mjs +166 -0
- package/runtime-src/provider-proxy.mjs +13 -0
- package/runtime-src/quality-enforcer.mjs +40 -23
- package/runtime-src/runtime-rails/registry.mjs +252 -0
- package/runtime-src/service.mjs +8036 -764
- package/runtime-src/sub-agent-enforcer.mjs +201 -0
- package/scripts/aria-ledger-append.mjs +337 -0
- package/scripts/aria-task-cheap-worker-dispatch.mjs +234 -0
- package/scripts/audit-of-audit-prior-tasks.mjs +194 -0
- package/scripts/audit-of-audit-this-turn.mjs +116 -0
- package/scripts/bundle-sdk.mjs +31 -5
- package/scripts/check-cli-wrapper-provider-contract.mjs +160 -0
- package/scripts/check-client-compatibility.mjs +15 -5
- package/scripts/check-client-smoke.mjs +297 -0
- package/scripts/check-codex-orchestrator-adoption.mjs +150 -0
- package/scripts/check-glm-env-wired.mjs +131 -0
- package/scripts/check-hive-local-storage-contract.mjs +91 -0
- package/scripts/check-hook-mirror.mjs +150 -0
- package/scripts/check-install-sh-drift.mjs +152 -0
- package/scripts/check-kernel-sync.mjs +101 -0
- package/scripts/check-package-artifact.mjs +152 -0
- package/scripts/check-registry-mirror.mjs +71 -0
- package/scripts/drain-owner-airtable-sync-queue.mjs +287 -0
- package/scripts/export-owner-status-sheets.mjs +589 -0
- package/scripts/live-sidecar-receipt-canary.mjs +347 -0
- package/scripts/qiyas-tadabbur-model-matrix.mjs +970 -0
- package/scripts/quality-ab-live-provider.mjs +913 -0
- package/scripts/self-test-action-ledger-core.mjs +190 -0
- package/scripts/self-test-approval-receipt-binding.mjs +122 -0
- package/scripts/self-test-autofire-quality-output.mjs +110 -0
- package/scripts/self-test-claude-code-action-ledger.mjs +132 -0
- package/scripts/self-test-claude-code-mechanical-autofire-hive.mjs +138 -0
- package/scripts/self-test-claude-code-mechanical-autofire.mjs +234 -0
- package/scripts/self-test-codebase-awareness-atlas-delta.mjs +159 -0
- package/scripts/self-test-codebase-awareness-delta-ingest.mjs +179 -0
- package/scripts/self-test-codex-live-hook-parity.mjs +84 -0
- package/scripts/self-test-codex-native-action-ledger.mjs +167 -0
- package/scripts/self-test-codex-native-hook-json-contract.mjs +74 -0
- package/scripts/self-test-codex-orchestrator-continuity.mjs +113 -0
- package/scripts/self-test-codex-readable-recovery.mjs +94 -0
- package/scripts/self-test-codex-self-harness.mjs +538 -0
- package/scripts/self-test-compiled-workunit.mjs +214 -0
- package/scripts/self-test-continuation-output-smoke.mjs +101 -0
- package/scripts/self-test-cross-cli-fleet-ticker.mjs +85 -0
- package/scripts/self-test-cross-cli-hive-adoption.mjs +125 -0
- package/scripts/self-test-cross-cli-hive-learning.mjs +146 -0
- package/scripts/self-test-cross-phase-tool-failure.mjs +110 -0
- package/scripts/self-test-cross-surface-action-ledger.mjs +149 -0
- package/scripts/self-test-end-of-phase-qa-court.mjs +616 -0
- package/scripts/self-test-evaluate-with-kernel.mjs +111 -0
- package/scripts/self-test-first-class-output-delta-proof.mjs +307 -0
- package/scripts/self-test-goal-contract-output-qa.mjs +73 -0
- package/scripts/self-test-goal-contract.mjs +35 -0
- package/scripts/self-test-governed-adapters.mjs +105 -0
- package/scripts/self-test-governed-surface-runner.mjs +198 -0
- package/scripts/self-test-harness-gates.mjs +15 -12
- package/scripts/self-test-harness-ticker-sidecar.mjs +153 -0
- package/scripts/self-test-hive-org-kernel.mjs +233 -0
- package/scripts/self-test-hive-session-coordination.mjs +156 -0
- package/scripts/self-test-hive-wal-consumer.mjs +111 -0
- package/scripts/self-test-kernel-a3-a4-selection.mjs +179 -0
- package/scripts/self-test-ledger-append.mjs +175 -0
- package/scripts/self-test-live-codex-posttool-packet-smoke.mjs +111 -0
- package/scripts/self-test-live-codex-pretool-packet-smoke.mjs +101 -0
- package/scripts/self-test-live-codex-stop-qa-kernel-smoke.mjs +43 -0
- package/scripts/self-test-live-wrapper-substrate-inventory.mjs +149 -0
- package/scripts/self-test-local-main-sync-script.mjs +47 -0
- package/scripts/self-test-mechanical-autofire-resolver.mjs +296 -0
- package/scripts/self-test-no-consult-cognitive-skills-output.mjs +135 -0
- package/scripts/self-test-owner-airtable-sync-queue.mjs +196 -0
- package/scripts/self-test-owner-airtable-sync.mjs +181 -0
- package/scripts/self-test-owner-sheets-action-ledger.mjs +100 -0
- package/scripts/self-test-production-preflight.mjs +78 -0
- package/scripts/self-test-project-boundary-cognition.mjs +79 -0
- package/scripts/self-test-qa-exec-kernel.mjs +34 -0
- package/scripts/self-test-qa-recovery-learning-loop.mjs +113 -0
- package/scripts/self-test-qiyas-label-alignment.mjs +94 -0
- package/scripts/self-test-recovery-context.mjs +110 -0
- package/scripts/self-test-repo-guard.mjs +10 -0
- package/scripts/self-test-runtime-health-self-heal.mjs +161 -0
- package/scripts/self-test-runtime-postcondition.mjs +70 -0
- package/scripts/self-test-soul-precommit-hook.mjs +39 -0
- package/scripts/self-test-stop-gate-kernel-guards.mjs +185 -0
- package/scripts/self-test-stop-gate.mjs +128 -0
- package/scripts/self-test-substrate-kernel-execution-receipt.mjs +130 -0
- package/scripts/self-test-substrate-open-skill-floor.mjs +87 -0
- package/scripts/self-test-substrate-output-quality-eval.mjs +171 -0
- package/scripts/self-test-task-closeout-drift.mjs +97 -0
- package/scripts/self-test-task-project-ledger-readiness.mjs +43 -0
- package/scripts/self-test-task-runner-phase-consumer.mjs +134 -0
- package/scripts/self-test-task-worker-lane.mjs +256 -0
- package/scripts/self-test-turn-substrate-qa-kernel.mjs +188 -0
- package/scripts/self-test-universal-action-capture.mjs +153 -0
- package/scripts/self-test-universal-turn-packet-entrypoints.mjs +252 -0
- package/scripts/self-test-universal-turn-packet.mjs +320 -0
- package/scripts/session-quality-backfill.mjs +253 -0
- package/scripts/smoke-autofire-100-prompts.mjs +481 -0
- package/scripts/sync-local-main-on-task-complete.mjs +278 -0
- package/scripts/sync-owner-status-airtable.mjs +1158 -0
- package/scripts/validate-skill-prompts.mjs +12 -1
- package/scripts/verify-codex-native-mirror.mjs +262 -0
- package/skills/34-frameworks-unified/SKILL.md +42 -0
- package/skills/api-design/SKILL.md +123 -0
- package/skills/architecture-decision/SKILL.md +105 -0
- package/skills/aria-aristotle-cognitives/SKILL.md +128 -0
- package/skills/aria-aristotle-intra-phase/SKILL.md +99 -0
- package/skills/aria-aristotle-post-phase/SKILL.md +116 -0
- package/skills/aria-aristotle-pre-phase/SKILL.md +117 -0
- package/skills/aria-axioms-first-principles/SKILL.md +202 -0
- package/skills/aria-axioms-first-principles/agents/openai.yaml +4 -0
- package/skills/aria-axioms-first-principles/references/source-map.md +130 -0
- package/skills/aria-chat/SKILL.md +84 -0
- package/skills/aria-chat/scripts/aria-chat.sh +57 -0
- package/skills/aria-cognition/34-frameworks-unified/SKILL.md +42 -0
- package/skills/aria-cognition/aria-aristotle-cognitives/SKILL.md +128 -0
- package/skills/aria-cognition/aria-aristotle-intra-phase/SKILL.md +99 -0
- package/skills/aria-cognition/aria-aristotle-post-phase/SKILL.md +118 -0
- package/skills/aria-cognition/aria-aristotle-pre-phase/SKILL.md +117 -0
- package/skills/aria-cognition/aria-axioms-first-principles/SKILL.md +202 -0
- package/skills/aria-cognition/aria-axioms-first-principles/agents/openai.yaml +4 -0
- package/skills/aria-cognition/aria-axioms-first-principles/references/source-map.md +130 -0
- package/skills/aria-cognition/aria-backend-architect/SKILL.md +124 -0
- package/skills/aria-cognition/aria-backend-architect/references/backend-cookbook.md +417 -0
- package/skills/aria-cognition/aria-business-audit/SKILL.md +133 -0
- package/skills/aria-cognition/aria-business-audit/references/audit-cookbook.md +247 -0
- package/skills/aria-cognition/aria-business-frame/SKILL.md +138 -0
- package/skills/aria-cognition/aria-business-frame/references/business-cookbook.md +154 -0
- package/skills/aria-cognition/aria-chat/SKILL.md +84 -0
- package/skills/aria-cognition/aria-chat/scripts/aria-chat.sh +57 -0
- package/skills/aria-cognition/aria-cognition-autofire/SKILL.md +137 -0
- package/skills/aria-cognition/aria-cognition-batch/SKILL.md +264 -0
- package/skills/aria-cognition/aria-decision-mizan/SKILL.md +136 -0
- package/skills/aria-cognition/aria-decision-mizan/references/decision-frameworks.md +287 -0
- package/skills/aria-cognition/aria-first-class-operating-contract/SKILL.md +104 -0
- package/skills/aria-cognition/aria-frontend-architect/SKILL.md +123 -0
- package/skills/aria-cognition/aria-frontend-architect/references/frontend-cookbook.md +358 -0
- package/skills/aria-cognition/aria-fullstack-orchestrator/SKILL.md +127 -0
- package/skills/aria-cognition/aria-fullstack-orchestrator/references/fullstack-cookbook.md +383 -0
- package/skills/aria-cognition/aria-gtm-architect/SKILL.md +126 -0
- package/skills/aria-cognition/aria-gtm-architect/references/gtm-cookbook.md +235 -0
- package/skills/aria-cognition/aria-harness-deploy/SKILL.md +145 -0
- package/skills/aria-cognition/aria-harness-no-stripping/SKILL.md +135 -0
- package/skills/aria-cognition/aria-harness-onboarding/SKILL.md +130 -0
- package/skills/aria-cognition/aria-harness-output-discipline/SKILL.md +120 -0
- package/skills/aria-cognition/aria-harness-substrate-binding/SKILL.md +139 -0
- package/skills/aria-cognition/aria-http-harness-client/SKILL.md +85 -0
- package/skills/aria-cognition/aria-http-harness-client/scripts/smoke.mjs +47 -0
- package/skills/aria-cognition/aria-k8s-deploy/SKILL.md +174 -0
- package/skills/aria-cognition/aria-k8s-deploy/agents/openai.yaml +3 -0
- package/skills/aria-cognition/aria-ladduniframe/SKILL.md +60 -0
- package/skills/aria-cognition/aria-ledger-fleet-execution/SKILL.md +126 -0
- package/skills/aria-cognition/aria-live-ops/SKILL.md +54 -0
- package/skills/aria-cognition/aria-mac-ssh-ops/SKILL.md +100 -0
- package/skills/aria-cognition/aria-memory-index/SKILL.md +42 -0
- package/skills/aria-cognition/aria-noor-cognitives/SKILL.md +120 -0
- package/skills/aria-cognition/aria-ops/SKILL.md +60 -0
- package/skills/aria-cognition/aria-ops/references/live-endpoints.md +59 -0
- package/skills/aria-cognition/aria-quality-audit/SKILL.md +133 -0
- package/skills/aria-cognition/aria-readable-output/SKILL.md +239 -0
- package/skills/aria-cognition/aria-readable-output/references/layout-cookbook.md +366 -0
- package/skills/aria-cognition/aria-reasoning/SKILL.md +67 -0
- package/skills/aria-cognition/aria-reasoning/references/core-principles.md +42 -0
- package/skills/aria-cognition/aria-repo-audit/SKILL.md +135 -0
- package/skills/aria-cognition/aria-repo-audit/references/repo-audit-cookbook.md +375 -0
- package/skills/aria-cognition/aria-research-orchestrator/SKILL.md +138 -0
- package/skills/aria-cognition/aria-research-orchestrator/references/research-patterns.md +270 -0
- package/skills/aria-cognition/aria-retention-engine/SKILL.md +120 -0
- package/skills/aria-cognition/aria-retention-engine/references/retention-cookbook.md +271 -0
- package/skills/aria-cognition/aria-revenue-engine/SKILL.md +128 -0
- package/skills/aria-cognition/aria-revenue-engine/references/revenue-cookbook.md +227 -0
- package/skills/aria-cognition/aria-senior-code-audit/SKILL.md +233 -0
- package/skills/aria-cognition/aria-senior-code-audit/references/audit-checklist.md +369 -0
- package/skills/aria-cognition/aria-senior-code-cookbook/SKILL.md +288 -0
- package/skills/aria-cognition/aria-senior-code-cookbook/references/engineering-cookbook.md +489 -0
- package/skills/aria-cognition/aria-soul-principles/SKILL.md +42 -0
- package/skills/aria-cognition/aria-task-codex-executor/SKILL.md +86 -0
- package/skills/aria-cognition/aristotle-engine/SKILL.md +42 -0
- package/skills/aria-cognition/cross-domain-24/SKILL.md +42 -0
- package/skills/aria-cognition/deepsoul-emotional/SKILL.md +42 -0
- package/skills/aria-cognition/fitrah-guard/SKILL.md +78 -0
- package/skills/aria-cognition/ghazali-8lens/SKILL.md +227 -29
- package/skills/aria-cognition/ghazali-8lens/references/ghazali-8lens-cookbook.md +797 -0
- package/skills/aria-cognition/ijtihad-novel/SKILL.md +42 -0
- package/skills/aria-cognition/ilham-intuition/SKILL.md +42 -0
- package/skills/aria-cognition/never-guess/SKILL.md +77 -0
- package/skills/aria-cognition/noor-recognition/SKILL.md +45 -0
- package/skills/aria-cognition/qiyas-analogy/SKILL.md +174 -14
- package/skills/aria-cognition/ruh-basis/SKILL.md +42 -0
- package/skills/aria-cognition/tadabbur/SKILL.md +506 -0
- package/skills/aria-cognition/tadabbur/references/tadabbur-cookbook.md +921 -0
- package/skills/aria-cognition/tadabbur-ops/SKILL.md +42 -0
- package/skills/aria-cognition/tafakkur/SKILL.md +104 -0
- package/skills/aria-cognition-autofire/SKILL.md +109 -0
- package/skills/aria-cognition-batch/SKILL.md +264 -0
- package/skills/aria-conversational-doctrine-discipline/SKILL.md +125 -0
- package/skills/aria-essence/SKILL.md +81 -0
- package/skills/aria-essence/references/domain-matrix.md +80 -0
- package/skills/aria-essence/references/evolution-loop.md +30 -0
- package/skills/aria-essence/references/readable-cognition.md +27 -0
- package/skills/aria-first-class-operating-contract/SKILL.md +104 -0
- package/skills/aria-forge-guardrails/SKILL.md +53 -0
- package/skills/aria-forge-guardrails/references/checklist.md +31 -0
- package/skills/aria-harness-deploy/SKILL.md +145 -0
- package/skills/aria-harness-no-stripping/SKILL.md +135 -0
- package/skills/aria-harness-onboarding/SKILL.md +130 -0
- package/skills/aria-harness-output-discipline/SKILL.md +120 -0
- package/skills/aria-harness-substrate-binding/SKILL.md +139 -0
- package/skills/aria-http-harness-client/SKILL.md +85 -0
- package/skills/aria-http-harness-client/scripts/smoke.mjs +47 -0
- package/skills/aria-k8s-deploy/SKILL.md +174 -0
- package/skills/aria-k8s-deploy/agents/openai.yaml +3 -0
- package/skills/aria-ladduniframe/SKILL.md +60 -0
- package/skills/aria-ledger-fleet-execution/SKILL.md +126 -0
- package/skills/aria-live-ops/SKILL.md +54 -0
- package/skills/aria-mac-ssh-ops/SKILL.md +100 -0
- package/skills/aria-memory-index/SKILL.md +42 -0
- package/skills/aria-noor-cognitives/SKILL.md +120 -0
- package/skills/aria-ops/SKILL.md +60 -0
- package/skills/aria-ops/references/live-endpoints.md +59 -0
- package/skills/aria-quality-audit/SKILL.md +133 -0
- package/skills/aria-reasoning/SKILL.md +67 -0
- package/skills/aria-reasoning/references/core-principles.md +42 -0
- package/skills/aria-repo-doctrine/SKILL.md +57 -0
- package/skills/aria-soul-principles/SKILL.md +42 -0
- package/skills/aria-task-codex-executor/SKILL.md +86 -0
- package/skills/aristotle-engine/SKILL.md +42 -0
- package/skills/ci-cd-pipeline/SKILL.md +116 -0
- package/skills/code-review/SKILL.md +131 -0
- package/skills/cross-domain-24/SKILL.md +42 -0
- package/skills/database-design/SKILL.md +124 -0
- package/skills/deepsoul-emotional/SKILL.md +42 -0
- package/skills/deno-kv-raft-pubsub/SKILL.md +561 -0
- package/skills/deno-kv-raft-pubsub/reference/maelstrom-integration.md +393 -0
- package/skills/deno-kv-raft-pubsub/reference/pubsub-api.md +376 -0
- package/skills/deno-kv-raft-pubsub/reference/raft-spec.md +402 -0
- package/skills/deno-kv-raft-pubsub/reference/state-machine.md +182 -0
- package/skills/error-handling/SKILL.md +159 -0
- package/skills/firecrawl/SKILL.md +165 -0
- package/skills/firecrawl/rules/install.md +82 -0
- package/skills/firecrawl/rules/security.md +26 -0
- package/skills/firecrawl-agent/SKILL.md +86 -0
- package/skills/firecrawl-build-interact/SKILL.md +96 -0
- package/skills/firecrawl-build-onboarding/SKILL.md +131 -0
- package/skills/firecrawl-build-onboarding/references/auth-flow.md +39 -0
- package/skills/firecrawl-build-onboarding/references/project-setup.md +20 -0
- package/skills/firecrawl-build-onboarding/references/sdk-installation.md +17 -0
- package/skills/firecrawl-build-scrape/SKILL.md +97 -0
- package/skills/firecrawl-build-search/SKILL.md +97 -0
- package/skills/firecrawl-clone/SKILL.md +419 -0
- package/skills/firecrawl-crawl/SKILL.md +87 -0
- package/skills/firecrawl-download/SKILL.md +98 -0
- package/skills/firecrawl-interact/SKILL.md +112 -0
- package/skills/firecrawl-map/SKILL.md +79 -0
- package/skills/firecrawl-scrape/SKILL.md +97 -0
- package/skills/firecrawl-search/SKILL.md +88 -0
- package/skills/fitrah-guard/SKILL.md +78 -0
- package/skills/forge-quality-rules/SKILL.md +61 -0
- package/skills/ghazali-8lens/SKILL.md +56 -0
- package/skills/ijtihad-novel/SKILL.md +42 -0
- package/skills/ilham-intuition/SKILL.md +42 -0
- package/skills/imagegen/LICENSE.txt +201 -0
- package/skills/imagegen/SKILL.md +374 -0
- package/skills/imagegen/agents/openai.yaml +6 -0
- package/skills/imagegen/assets/imagegen-small.svg +5 -0
- package/skills/imagegen/assets/imagegen.png +0 -0
- package/skills/imagegen/references/cli.md +242 -0
- package/skills/imagegen/references/codex-network.md +33 -0
- package/skills/imagegen/references/image-api.md +90 -0
- package/skills/imagegen/references/prompting.md +118 -0
- package/skills/imagegen/references/sample-prompts.md +433 -0
- package/skills/imagegen/scripts/image_gen.py +995 -0
- package/skills/imagegen/scripts/remove_chroma_key.py +440 -0
- package/skills/istiqra-induction/SKILL.md +44 -0
- package/skills/ladunni-22/SKILL.md +53 -0
- package/skills/mizan/SKILL.md +90 -0
- package/skills/nadia/SKILL.md +56 -0
- package/skills/nadia-psi/SKILL.md +56 -0
- package/skills/never-guess/SKILL.md +75 -0
- package/skills/noor-recognition/SKILL.md +45 -0
- package/skills/observability/SKILL.md +133 -0
- package/skills/openai-docs/LICENSE.txt +201 -0
- package/skills/openai-docs/SKILL.md +100 -0
- package/skills/openai-docs/agents/openai.yaml +14 -0
- package/skills/openai-docs/assets/openai-small.svg +3 -0
- package/skills/openai-docs/assets/openai.png +0 -0
- package/skills/openai-docs/references/latest-model.md +37 -0
- package/skills/openai-docs/references/prompting-guide.md +244 -0
- package/skills/openai-docs/references/upgrade-guide.md +181 -0
- package/skills/openai-docs/scripts/resolve-latest-model-info.js +147 -0
- package/skills/pdf/LICENSE.txt +201 -0
- package/skills/pdf/SKILL.md +85 -0
- package/skills/pdf/agents/openai.yaml +5 -0
- package/skills/pdf/assets/pdf.png +0 -0
- package/skills/playwright/LICENSE.txt +201 -0
- package/skills/playwright/NOTICE.txt +14 -0
- package/skills/playwright/SKILL.md +165 -0
- package/skills/playwright/agents/openai.yaml +6 -0
- package/skills/playwright/assets/playwright-small.svg +3 -0
- package/skills/playwright/assets/playwright.png +0 -0
- package/skills/playwright/references/cli.md +116 -0
- package/skills/playwright/references/workflows.md +95 -0
- package/skills/playwright/scripts/playwright_cli.sh +25 -0
- package/skills/plugin-creator/SKILL.md +178 -0
- package/skills/plugin-creator/agents/openai.yaml +6 -0
- package/skills/plugin-creator/assets/plugin-creator-small.svg +3 -0
- package/skills/plugin-creator/assets/plugin-creator.png +0 -0
- package/skills/plugin-creator/references/plugin-json-spec.md +170 -0
- package/skills/plugin-creator/scripts/create_basic_plugin.py +301 -0
- package/skills/predictor/SKILL.md +43 -0
- package/skills/qiyas-analogy/SKILL.md +204 -0
- package/skills/refactoring/SKILL.md +137 -0
- package/skills/ruh-basis/SKILL.md +42 -0
- package/skills/security-review/SKILL.md +129 -0
- package/skills/skill-creator/SKILL.md +434 -0
- package/skills/skill-creator/agents/openai.yaml +5 -0
- package/skills/skill-creator/assets/skill-creator-small.svg +3 -0
- package/skills/skill-creator/assets/skill-creator.png +0 -0
- package/skills/skill-creator/license.txt +202 -0
- package/skills/skill-creator/references/openai_yaml.md +49 -0
- package/skills/skill-creator/scripts/generate_openai_yaml.py +226 -0
- package/skills/skill-creator/scripts/init_skill.py +400 -0
- package/skills/skill-creator/scripts/quick_validate.py +101 -0
- package/skills/skill-installer/LICENSE.txt +202 -0
- package/skills/skill-installer/SKILL.md +76 -0
- package/skills/skill-installer/agents/openai.yaml +5 -0
- package/skills/skill-installer/assets/skill-installer-small.svg +3 -0
- package/skills/skill-installer/assets/skill-installer.png +0 -0
- package/skills/skill-installer/scripts/github_utils.py +21 -0
- package/skills/skill-installer/scripts/install-skill-from-github.py +308 -0
- package/skills/skill-installer/scripts/list-skills.py +107 -0
- package/skills/skills-and-hooks-reference/SKILL.md +196 -0
- package/skills/soul-domains/SKILL.md +43 -0
- package/skills/tadabbur/SKILL.md +232 -0
- package/skills/tadabbur-ops/SKILL.md +42 -0
- package/skills/tafakkur/SKILL.md +104 -0
- package/skills/testing-strategy/SKILL.md +122 -0
- package/src/action-ledger-core.ts +1054 -0
- package/src/chat.ts +5 -6
- package/src/codebase-scanner.ts +2 -0
- package/src/connectors/claude-code.ts +149 -12
- package/src/connectors/codebase-awareness.ts +325 -25
- package/src/connectors/codex.ts +1273 -40
- package/src/connectors/cursor.ts +8 -0
- package/src/connectors/governed-adapter.ts +174 -0
- package/src/connectors/opencode.ts +18 -2
- package/src/connectors/repo-guard.ts +24 -12
- package/src/connectors/runtime.ts +99 -2
- package/src/connectors/shell.ts +125 -7
- package/src/cross-cli-hive-binding.ts +290 -0
- package/src/garden-control-plane.ts +24 -1
- package/src/governed-surface-runner.ts +1227 -0
- package/src/index.ts +104 -1
- package/src/task-runner.ts +3794 -0
- package/dist/aria-connector/src/install-hooks.d.ts +0 -18
- package/dist/aria-connector/src/install-hooks.d.ts.map +0 -1
- package/dist/aria-connector/src/install-hooks.js +0 -224
- package/dist/aria-connector/src/install-hooks.js.map +0 -1
- package/dist/aria-connector/src/onboarding-wizard.d.ts +0 -5
- package/dist/aria-connector/src/onboarding-wizard.d.ts.map +0 -1
- package/dist/aria-connector/src/onboarding-wizard.js +0 -188
- package/dist/aria-connector/src/onboarding-wizard.js.map +0 -1
- package/dist/cli-0.2.38.tgz +0 -0
- package/dist/install.sh +0 -13
- package/src/__tests__/anthropic-oauth.test.ts +0 -186
- package/src/__tests__/auth-commands.test.ts +0 -132
- package/src/__tests__/owner-login.test.ts +0 -311
|
@@ -0,0 +1,489 @@
|
|
|
1
|
+
# Engineering Cookbook — Primary-Source-Cited Patterns
|
|
2
|
+
|
|
3
|
+
> Loaded by `aria-senior-code-cookbook` pre-code, by `aria-senior-code-audit` post-write, by `aria-backend-architect` and `aria-fullstack-orchestrator` for system boundary work.
|
|
4
|
+
|
|
5
|
+
## 1. Stripe Idempotency — canonical primitive
|
|
6
|
+
|
|
7
|
+
**Source:** [Stripe — Idempotent Requests](https://docs.stripe.com/api/idempotent_requests) · [Stripe blog — Designing robust APIs with idempotency](https://stripe.com/blog/idempotency)
|
|
8
|
+
|
|
9
|
+
### Contract
|
|
10
|
+
- **All POST requests** accept idempotency keys. GET / DELETE don't (idempotent by definition).
|
|
11
|
+
- Server saves status code + body of first request. Subsequent requests with same key return same result — even on `500` errors.
|
|
12
|
+
- Storage key: `(method, route, idempotency_key)`. Don't conflate keys across endpoints.
|
|
13
|
+
- Window: **24 hours** (Stripe default). Pick TTL based on retry expectations.
|
|
14
|
+
- Client retry pattern: **exponential backoff with random jitter** (avoid thundering herd).
|
|
15
|
+
|
|
16
|
+
### Reference TypeScript primitive
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
// adapters/idempotency-store.ts
|
|
20
|
+
interface IdempotencyEntry {
|
|
21
|
+
status: number;
|
|
22
|
+
body: unknown;
|
|
23
|
+
createdAt: number;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export class IdempotencyStore {
|
|
27
|
+
constructor(
|
|
28
|
+
private redis: Redis,
|
|
29
|
+
private ttlSeconds = 24 * 60 * 60
|
|
30
|
+
) {}
|
|
31
|
+
|
|
32
|
+
async get(method: string, route: string, key: string): Promise<IdempotencyEntry | null> {
|
|
33
|
+
const fullKey = `idem:${method}:${route}:${key}`;
|
|
34
|
+
const value = await this.redis.get(fullKey);
|
|
35
|
+
return value ? JSON.parse(value) : null;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
async set(method: string, route: string, key: string, entry: IdempotencyEntry): Promise<void> {
|
|
39
|
+
const fullKey = `idem:${method}:${route}:${key}`;
|
|
40
|
+
await this.redis.setex(fullKey, this.ttlSeconds, JSON.stringify(entry));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
// Usage in handler
|
|
45
|
+
async function chargeHandler(req: Request, res: Response) {
|
|
46
|
+
const idemKey = req.headers['idempotency-key'];
|
|
47
|
+
if (!idemKey) return res.status(400).json({ error: 'idempotency_key_required' });
|
|
48
|
+
|
|
49
|
+
const cached = await idempotencyStore.get(req.method, req.route.path, String(idemKey));
|
|
50
|
+
if (cached) return res.status(cached.status).json(cached.body);
|
|
51
|
+
|
|
52
|
+
const result = await chargeCard(req.body);
|
|
53
|
+
await idempotencyStore.set(req.method, req.route.path, String(idemKey), {
|
|
54
|
+
status: 200,
|
|
55
|
+
body: result,
|
|
56
|
+
createdAt: Date.now(),
|
|
57
|
+
});
|
|
58
|
+
res.status(200).json(result);
|
|
59
|
+
}
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### When to require idempotency
|
|
63
|
+
- ANY POST that has side effects: payments, sending email/SMS, creating users, queueing jobs.
|
|
64
|
+
- Webhook receivers — duplicate delivery is normal; idempotency-key on the event ID.
|
|
65
|
+
- Anything that consumes a one-shot resource (vouchers, signup credits).
|
|
66
|
+
|
|
67
|
+
## 2. Google SRE Error Budget Policy
|
|
68
|
+
|
|
69
|
+
**Source:** [Google SRE Workbook — Error Budget Policy](https://sre.google/workbook/error-budget-policy/) · [Implementing SLOs](https://sre.google/workbook/implementing-slos/)
|
|
70
|
+
|
|
71
|
+
### Definition
|
|
72
|
+
- **SLO** (Service Level Objective): the reliability target. e.g., 99.9% of HTTP 200s on `/api/charge`.
|
|
73
|
+
- **Error budget**: 1 − SLO. e.g., 99.9% SLO = 0.1% error budget = on 1M requests in 4 weeks, 1,000 errors permitted.
|
|
74
|
+
|
|
75
|
+
### Policy (paste-ready for runbook docs)
|
|
76
|
+
> If the service has exceeded its error budget for the preceding four-week window, we will halt all changes and releases other than P0 issues or security fixes until the service is back within its SLO.
|
|
77
|
+
|
|
78
|
+
### Triggers — when team must work on reliability
|
|
79
|
+
- Code bug or procedural error caused budget exhaustion
|
|
80
|
+
- Postmortem reveals opportunity to soften a hard dependency
|
|
81
|
+
- Miscategorized errors fail to consume budget that would have caused SLO miss
|
|
82
|
+
|
|
83
|
+
### Triggers — when team may continue feature work
|
|
84
|
+
- Outage caused by company-wide networking
|
|
85
|
+
- Outage caused by another team's service (and they've frozen)
|
|
86
|
+
- Errors consumed by users out of scope (load tests, pen testers)
|
|
87
|
+
- Miscategorized errors consumed budget without user impact
|
|
88
|
+
|
|
89
|
+
### Burn-rate alerting
|
|
90
|
+
|
|
91
|
+
For a service with 99.9% SLO over 30-day window, a constant 0.1% error rate uses exactly all of the budget (burn rate = 1). Multi-window burn rate alerts (Google's recommendation):
|
|
92
|
+
|
|
93
|
+
| Severity | Burn rate | Long window | Short window | Time to consume budget |
|
|
94
|
+
|---|---|---|---|---|
|
|
95
|
+
| Critical | 14.4 | 1 hour | 5 min | 2% in 1 hour ⇒ alert |
|
|
96
|
+
| Warning | 6 | 6 hours | 30 min | 5% in 6 hours ⇒ alert |
|
|
97
|
+
| Info | 3 | 24 hours | 2 hours | 10% in 24 hours ⇒ alert |
|
|
98
|
+
| Notice | 1 | 72 hours | 6 hours | 30% in 72 hours ⇒ alert |
|
|
99
|
+
|
|
100
|
+
## 3. OWASP Top 10:2025 — security checklist
|
|
101
|
+
|
|
102
|
+
**Source:** [OWASP Top 10:2025](https://owasp.org/Top10/2025/0x00_2025-Introduction/)
|
|
103
|
+
|
|
104
|
+
| # | Risk | Notes |
|
|
105
|
+
|---|---|---|
|
|
106
|
+
| **A01** | Broken Access Control | Still #1; 3.73% of apps tested have it. Direct object refs, missing server-side validation, admin endpoints exposed. |
|
|
107
|
+
| **A02** | Security Misconfiguration | Default accounts, debug mode in prod, missing security headers, unused services running. |
|
|
108
|
+
| **A03** | **Software Supply Chain Failures** (NEW) | Dependencies from untrusted sources; build pipeline tampering; unsigned artifacts. |
|
|
109
|
+
| **A04** | Cryptographic Failures | Weak algorithms, plaintext storage, missing TLS, hardcoded keys. |
|
|
110
|
+
| **A05** | Injection (37 CWEs, up from 29) | SQL, NoSQL, OS command, LDAP, XSS — string concat into interpreters. |
|
|
111
|
+
| **A06** | Insecure Design | Threat-modeling skipped at design; auth checks bolted on; unsafe defaults. |
|
|
112
|
+
| **A07** | Authentication Failures (36 CWEs) | Weak password policy, MFA missing, session fixation, predictable tokens. |
|
|
113
|
+
| **A08** | Software/Data Integrity Failures | Unsigned updates, untrusted CDNs, deserialization without validation. |
|
|
114
|
+
| **A09** | Security Logging & Alerting Failures | Auth failures not logged, suspicious behavior not alerted, logs unprotected. |
|
|
115
|
+
| **A10** | **Mishandling of Exceptional Conditions** (NEW) | Errors swallowed, fail-open paths, exception handlers leaking info, retries without circuit breakers. |
|
|
116
|
+
|
|
117
|
+
### Production checklist (paste-ready PR template)
|
|
118
|
+
|
|
119
|
+
```markdown
|
|
120
|
+
- [ ] **A01** server-side authz check on every endpoint touching user-owned resources
|
|
121
|
+
- [ ] **A01** no direct object references — IDs validated against current user
|
|
122
|
+
- [ ] **A02** debug mode off in prod; default accounts removed; security headers set
|
|
123
|
+
- [ ] **A03** dependencies pinned by hash; SBOM generated; CI fails on vuln scan
|
|
124
|
+
- [ ] **A04** TLS 1.2+ only; no hardcoded secrets; key rotation documented
|
|
125
|
+
- [ ] **A05** parameterized queries / prepared statements; no string concat into interpreter
|
|
126
|
+
- [ ] **A05** input validated at boundary with schema (zod / typebox)
|
|
127
|
+
- [ ] **A06** threat model in design doc; trust boundaries named
|
|
128
|
+
- [ ] **A07** MFA available; password policy ≥12 chars; bcrypt/argon2 hashing
|
|
129
|
+
- [ ] **A08** package signing verified; deserialization on trusted input only
|
|
130
|
+
- [ ] **A09** auth failures logged with structured fields; alert on burst
|
|
131
|
+
- [ ] **A10** errors return typed; circuit breaker on downstream; no fail-open
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## 4. OpenTelemetry Semantic Conventions — structured logging
|
|
135
|
+
|
|
136
|
+
**Source:** [OpenTelemetry — Semantic Conventions](https://opentelemetry.io/docs/concepts/semantic-conventions/) · [OneUptime — Structured Logging in OpenTelemetry](https://oneuptime.com/blog/post/2025-08-28-how-to-structure-logs-properly-in-opentelemetry/view)
|
|
137
|
+
|
|
138
|
+
### Core principles
|
|
139
|
+
1. **Trace+span correlation** — every log carries `trace_id` + `span_id`. Auto-extract from active span; never log without context.
|
|
140
|
+
2. **Semantic attributes** — use canonical names (`http.method`, `http.status_code`, `db.operation`, `db.sql.table`, `user.id`). Cross-team consistency, query-friendly.
|
|
141
|
+
3. **Context** — include both technical fields (latency, error code) and business fields (customer_id, tenant_id, plan_tier).
|
|
142
|
+
|
|
143
|
+
### Reference TypeScript pattern
|
|
144
|
+
|
|
145
|
+
```typescript
|
|
146
|
+
// lib/log.ts
|
|
147
|
+
import pino from 'pino';
|
|
148
|
+
import { trace, SpanStatusCode } from '@opentelemetry/api';
|
|
149
|
+
|
|
150
|
+
const baseLogger = pino({
|
|
151
|
+
level: process.env.LOG_LEVEL ?? 'info',
|
|
152
|
+
base: {
|
|
153
|
+
service: process.env.SERVICE_NAME,
|
|
154
|
+
version: process.env.GIT_SHA,
|
|
155
|
+
},
|
|
156
|
+
redact: {
|
|
157
|
+
paths: ['*.password', '*.token', '*.apiKey', '*.authorization', 'req.headers.authorization'],
|
|
158
|
+
censor: '[REDACTED]',
|
|
159
|
+
},
|
|
160
|
+
});
|
|
161
|
+
|
|
162
|
+
export class StructuredLogger {
|
|
163
|
+
static logInSpan(level: 'info' | 'warn' | 'error' | 'debug', message: string, attributes: Record<string, unknown> = {}) {
|
|
164
|
+
const activeSpan = trace.getActiveSpan();
|
|
165
|
+
const enriched = { ...attributes };
|
|
166
|
+
|
|
167
|
+
if (activeSpan) {
|
|
168
|
+
const spanContext = activeSpan.spanContext();
|
|
169
|
+
enriched.trace_id = spanContext.traceId;
|
|
170
|
+
enriched.span_id = spanContext.spanId;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
baseLogger[level](enriched, message);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
static logBusinessEvent(event: string, entityType: string, entityId: string, attributes: Record<string, unknown> = {}) {
|
|
177
|
+
this.logInSpan('info', `business_event:${event}`, {
|
|
178
|
+
event_type: 'business',
|
|
179
|
+
event_name: event,
|
|
180
|
+
entity_type: entityType,
|
|
181
|
+
entity_id: entityId,
|
|
182
|
+
...attributes,
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
### Canonical HTTP request log
|
|
189
|
+
```typescript
|
|
190
|
+
StructuredLogger.logInSpan('info', 'http.request.complete', {
|
|
191
|
+
'http.method': req.method,
|
|
192
|
+
'http.route': req.route?.path,
|
|
193
|
+
'http.status_code': res.statusCode,
|
|
194
|
+
'http.duration_ms': Date.now() - startTime,
|
|
195
|
+
'user.id': req.user?.id,
|
|
196
|
+
'tenant.id': req.tenant?.id,
|
|
197
|
+
});
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### Canonical DB operation log
|
|
201
|
+
```typescript
|
|
202
|
+
StructuredLogger.logInSpan('debug', 'db.operation.complete', {
|
|
203
|
+
'db.operation': 'SELECT',
|
|
204
|
+
'db.sql.table': 'customers',
|
|
205
|
+
'db.duration_ms': elapsed,
|
|
206
|
+
'db.rows_affected': result.rowCount,
|
|
207
|
+
});
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
## 5. Circuit Breaker — production pattern
|
|
211
|
+
|
|
212
|
+
**Source:** [Microsoft Azure Architecture — Circuit Breaker](https://learn.microsoft.com/en-us/azure/architecture/patterns/circuit-breaker)
|
|
213
|
+
|
|
214
|
+
### States
|
|
215
|
+
- **Closed** — normal flow, count failures
|
|
216
|
+
- **Open** — fail-fast immediately (no wait on timeout); start cooldown timer
|
|
217
|
+
- **Half-Open** — after cooldown, allow N probe requests; if N pass → Closed, if any fail → Open
|
|
218
|
+
|
|
219
|
+
### Default thresholds (battle-tested)
|
|
220
|
+
- Failure threshold: **5 consecutive failures** → Open
|
|
221
|
+
- Cooldown: **30 seconds** before Half-Open
|
|
222
|
+
- Probe count: **1-3 probes** during Half-Open
|
|
223
|
+
- Adaptive techniques (AI-driven dynamic thresholds) emerging in 2025
|
|
224
|
+
|
|
225
|
+
### Reference TypeScript primitive
|
|
226
|
+
```typescript
|
|
227
|
+
type State = 'closed' | 'open' | 'half-open';
|
|
228
|
+
|
|
229
|
+
export class CircuitBreaker {
|
|
230
|
+
private state: State = 'closed';
|
|
231
|
+
private failures = 0;
|
|
232
|
+
private openedAt = 0;
|
|
233
|
+
|
|
234
|
+
constructor(
|
|
235
|
+
private failureThreshold = 5,
|
|
236
|
+
private cooldownMs = 30_000,
|
|
237
|
+
private probeCount = 1,
|
|
238
|
+
) {}
|
|
239
|
+
|
|
240
|
+
async execute<T>(operation: () => Promise<T>, fallback?: () => Promise<T>): Promise<T> {
|
|
241
|
+
if (this.state === 'open') {
|
|
242
|
+
if (Date.now() - this.openedAt < this.cooldownMs) {
|
|
243
|
+
if (fallback) return fallback();
|
|
244
|
+
throw new Error('CircuitBreakerOpen');
|
|
245
|
+
}
|
|
246
|
+
this.state = 'half-open';
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
try {
|
|
250
|
+
const result = await operation();
|
|
251
|
+
this.onSuccess();
|
|
252
|
+
return result;
|
|
253
|
+
} catch (e) {
|
|
254
|
+
this.onFailure();
|
|
255
|
+
throw e;
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
private onSuccess() {
|
|
260
|
+
this.failures = 0;
|
|
261
|
+
this.state = 'closed';
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
private onFailure() {
|
|
265
|
+
this.failures++;
|
|
266
|
+
if (this.failures >= this.failureThreshold) {
|
|
267
|
+
this.state = 'open';
|
|
268
|
+
this.openedAt = Date.now();
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
## 6. Rate limiting — token bucket pattern
|
|
275
|
+
|
|
276
|
+
**Source:** [System Overflow — API Reliability Patterns](https://www.systemoverflow.com/learn/design-fundamentals/api-design-basics/api-reliability-patterns-idempotency-rate-limiting-and-failure-handling)
|
|
277
|
+
|
|
278
|
+
### Token bucket
|
|
279
|
+
- Allows bursts (e.g., 100 requests instantly) then sustained rate (e.g., 10/sec long-term)
|
|
280
|
+
- GitHub uses this: 5,000 requests/hour with burst capacity
|
|
281
|
+
- Better than fixed-window for bursty workflows
|
|
282
|
+
|
|
283
|
+
### Headers (per spec)
|
|
284
|
+
- `X-RateLimit-Limit` — total requests allowed in window
|
|
285
|
+
- `X-RateLimit-Remaining` — remaining in window
|
|
286
|
+
- `X-RateLimit-Reset` — Unix timestamp when window resets
|
|
287
|
+
- `Retry-After` — seconds to wait (when 429)
|
|
288
|
+
|
|
289
|
+
### Reference middleware pattern
|
|
290
|
+
```typescript
|
|
291
|
+
async function rateLimitMiddleware(req, res, next) {
|
|
292
|
+
const key = `ratelimit:${req.user?.id || req.ip}`;
|
|
293
|
+
const { allowed, remaining, resetAt } = await rateLimiter.check(key, {
|
|
294
|
+
burst: 100,
|
|
295
|
+
sustained: 10, // per second
|
|
296
|
+
});
|
|
297
|
+
res.set('X-RateLimit-Limit', '100');
|
|
298
|
+
res.set('X-RateLimit-Remaining', String(remaining));
|
|
299
|
+
res.set('X-RateLimit-Reset', String(resetAt));
|
|
300
|
+
if (!allowed) {
|
|
301
|
+
res.set('Retry-After', String(Math.ceil((resetAt - Date.now()) / 1000)));
|
|
302
|
+
return res.status(429).json({ error: 'rate_limited', retryAfterSeconds: Math.ceil((resetAt - Date.now()) / 1000) });
|
|
303
|
+
}
|
|
304
|
+
next();
|
|
305
|
+
}
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
## 7. Function contract — the canonical TypeScript shape
|
|
309
|
+
|
|
310
|
+
**Source:** Synthesis of Stripe, GitHub, Will Larson Staff Engineer patterns + the senior-team consensus
|
|
311
|
+
|
|
312
|
+
```typescript
|
|
313
|
+
import { z } from 'zod';
|
|
314
|
+
import { ok, err, Result } from './result';
|
|
315
|
+
import { StructuredLogger } from './log';
|
|
316
|
+
|
|
317
|
+
const ChargeCardInputSchema = z.object({
|
|
318
|
+
customerId: z.string().uuid(),
|
|
319
|
+
amount: z.number().int().positive(),
|
|
320
|
+
currency: z.literal('usd'),
|
|
321
|
+
idempotencyKey: z.string().min(1),
|
|
322
|
+
});
|
|
323
|
+
|
|
324
|
+
type ChargeCardInput = z.infer<typeof ChargeCardInputSchema>;
|
|
325
|
+
type ChargeCardOk = { chargeId: string; amount: number };
|
|
326
|
+
type ChargeCardError =
|
|
327
|
+
| { kind: 'validation'; issues: z.ZodIssue[] }
|
|
328
|
+
| { kind: 'duplicate'; existingChargeId: string }
|
|
329
|
+
| { kind: 'card_declined'; reason: string }
|
|
330
|
+
| { kind: 'rate_limited'; retryAfterMs: number }
|
|
331
|
+
| { kind: 'stripe_error'; reason: string };
|
|
332
|
+
|
|
333
|
+
export async function chargeCard(
|
|
334
|
+
input: ChargeCardInput,
|
|
335
|
+
): Promise<Result<ChargeCardOk, ChargeCardError>> {
|
|
336
|
+
// 1. validate at boundary
|
|
337
|
+
const parsed = ChargeCardInputSchema.safeParse(input);
|
|
338
|
+
if (!parsed.success) return err({ kind: 'validation', issues: parsed.error.issues });
|
|
339
|
+
|
|
340
|
+
// 2. structured log entry
|
|
341
|
+
StructuredLogger.logInSpan('info', 'charge_card.start', {
|
|
342
|
+
customer_id: parsed.data.customerId,
|
|
343
|
+
amount: parsed.data.amount,
|
|
344
|
+
idempotency_key: parsed.data.idempotencyKey,
|
|
345
|
+
});
|
|
346
|
+
|
|
347
|
+
// 3. idempotency check before side effect
|
|
348
|
+
const existing = await idempotencyStore.get('POST', '/charge', parsed.data.idempotencyKey);
|
|
349
|
+
if (existing) return ok({ chargeId: existing.body.chargeId, amount: existing.body.amount });
|
|
350
|
+
|
|
351
|
+
// 4. side effect with named failures
|
|
352
|
+
try {
|
|
353
|
+
const charge = await stripe.charges.create({
|
|
354
|
+
customer: parsed.data.customerId,
|
|
355
|
+
amount: parsed.data.amount,
|
|
356
|
+
currency: parsed.data.currency,
|
|
357
|
+
});
|
|
358
|
+
await idempotencyStore.set('POST', '/charge', parsed.data.idempotencyKey, {
|
|
359
|
+
status: 200, body: { chargeId: charge.id, amount: charge.amount }, createdAt: Date.now(),
|
|
360
|
+
});
|
|
361
|
+
StructuredLogger.logInSpan('info', 'charge_card.ok', { charge_id: charge.id });
|
|
362
|
+
return ok({ chargeId: charge.id, amount: charge.amount });
|
|
363
|
+
} catch (e) {
|
|
364
|
+
const reason = classifyStripeError(e);
|
|
365
|
+
StructuredLogger.logInSpan('error', 'charge_card.failed', { reason });
|
|
366
|
+
if (reason === 'card_declined') return err({ kind: 'card_declined', reason });
|
|
367
|
+
if (reason === 'rate_limited') return err({ kind: 'rate_limited', retryAfterMs: 1000 });
|
|
368
|
+
return err({ kind: 'stripe_error', reason });
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
## 8. WCAG 2.2 — accessibility checklist
|
|
374
|
+
|
|
375
|
+
**Source:** [W3C — WCAG 2.2 Recommendation](https://www.w3.org/TR/WCAG22/) · [AllAccessible — WCAG 2.2 Compliance Checklist](https://www.allaccessible.org/blog/wcag-22-compliance-checklist-implementation-roadmap)
|
|
376
|
+
|
|
377
|
+
### Legal context (2025)
|
|
378
|
+
- WCAG 2.2 W3C standard since Oct 5 2023; **9 new criteria** (6 AA, 3 A)
|
|
379
|
+
- **EAA (European Accessibility Act)** in force since Jun 28 2025 — Level AA is legal imperative in EU
|
|
380
|
+
- ADA litigation continues in US — Level AA for any commercial site
|
|
381
|
+
|
|
382
|
+
### Conformance levels
|
|
383
|
+
- **A** — 25 criteria (minimum)
|
|
384
|
+
- **AA** — 63 total (legal compliance standard)
|
|
385
|
+
- **AAA** — 86 total (enhanced)
|
|
386
|
+
|
|
387
|
+
### WCAG 2.2 critical new criteria
|
|
388
|
+
- **2.4.11 Focus Not Obscured (Minimum) — AA** — focused element must not be entirely hidden by sticky headers/footers
|
|
389
|
+
- **2.4.13 Focus Appearance — AAA** — strong focus indicator (≥2 CSS px outline + 3:1 contrast)
|
|
390
|
+
- **2.5.7 Dragging Movements — AA** — drag-only interactions must have non-drag alternative
|
|
391
|
+
- **2.5.8 Target Size — AA** — interactive targets ≥**24×24 CSS pixels** (with exceptions)
|
|
392
|
+
- **3.2.6 Consistent Help — A** — help mechanisms in consistent location across pages
|
|
393
|
+
- **3.3.7 Redundant Entry — A** — don't ask user to re-enter info already provided in same process
|
|
394
|
+
- **3.3.8 Accessible Authentication (Minimum) — AA** — cognitive function tests must have alternatives (allow password manager autofill, biometric, email/SMS)
|
|
395
|
+
|
|
396
|
+
### Production checklist (paste-ready PR template)
|
|
397
|
+
```markdown
|
|
398
|
+
- [ ] All functionality keyboard-accessible (no mouse-only flows)
|
|
399
|
+
- [ ] Focus rings preserved (no naked `outline: none`)
|
|
400
|
+
- [ ] ARIA labels for non-semantic elements
|
|
401
|
+
- [ ] Color contrast ≥4.5:1 body text, ≥3:1 large
|
|
402
|
+
- [ ] Target size ≥24×24px (WCAG 2.2 AA)
|
|
403
|
+
- [ ] Focus not obscured by sticky chrome (WCAG 2.2 AA)
|
|
404
|
+
- [ ] Drag interactions have non-drag alternatives (WCAG 2.2 AA)
|
|
405
|
+
- [ ] Auth doesn't require cognitive function (allows password mgr / biometric)
|
|
406
|
+
- [ ] Loading / error / empty states designed (not "polish later")
|
|
407
|
+
- [ ] axe-core or Lighthouse accessibility ≥90 in CI
|
|
408
|
+
```
|
|
409
|
+
|
|
410
|
+
## 9. Core Web Vitals 2025 — performance budget
|
|
411
|
+
|
|
412
|
+
**Source:** [Google — Core Web Vitals](https://developers.google.com/search/docs/appearance/core-web-vitals) · [web.dev — Vitals](https://web.dev/articles/vitals)
|
|
413
|
+
|
|
414
|
+
| Metric | Good | Needs work | Poor | Weight |
|
|
415
|
+
|---|---|---|---|---|
|
|
416
|
+
| **LCP** Largest Contentful Paint | ≤2.5s | 2.5-4.0s | >4.0s | 40% |
|
|
417
|
+
| **INP** Interaction to Next Paint | ≤200ms | 200-500ms | >500ms | 40% |
|
|
418
|
+
| **CLS** Cumulative Layout Shift | ≤0.1 | 0.1-0.25 | >0.25 | 20% |
|
|
419
|
+
|
|
420
|
+
(INP replaced FID March 2024.)
|
|
421
|
+
|
|
422
|
+
### LCP optimization (cheapest first)
|
|
423
|
+
- **Preload LCP resource** with `fetchpriority="high"` — 500ms improvement, $0
|
|
424
|
+
- **WebP/AVIF images** with `width`/`height` set — 800ms, $200
|
|
425
|
+
- **CDN for static assets** — 600ms, $1.2K/yr
|
|
426
|
+
- **SSR/SSG** — 1500ms, $8K
|
|
427
|
+
- **Edge computing** (Cloudflare Workers) — additional, $2K
|
|
428
|
+
|
|
429
|
+
### INP optimization
|
|
430
|
+
- **Web Workers** for heavy computation off main thread — 300ms, $4K
|
|
431
|
+
- **Progressive hydration** — $3K
|
|
432
|
+
- **`requestIdleCallback`** for non-critical work — $1.5K
|
|
433
|
+
|
|
434
|
+
### CLS optimization
|
|
435
|
+
- **Explicit width/height on images** — free
|
|
436
|
+
- **CSS `contain` property** — $1.5K
|
|
437
|
+
- **Skeleton screens** for async content — $2K
|
|
438
|
+
|
|
439
|
+
### Production checklist
|
|
440
|
+
```markdown
|
|
441
|
+
- [ ] Lighthouse mobile score ≥90 in CI
|
|
442
|
+
- [ ] LCP p75 ≤2.5s on real-user data (CrUX or RUM)
|
|
443
|
+
- [ ] INP p75 ≤200ms
|
|
444
|
+
- [ ] CLS p75 ≤0.1
|
|
445
|
+
- [ ] LCP image preloaded with fetchpriority=high
|
|
446
|
+
- [ ] All images have explicit dimensions
|
|
447
|
+
- [ ] Heavy compute moved to Web Workers where p95 INP at risk
|
|
448
|
+
- [ ] Bundle budget enforced in CI (e.g., 200KB gzipped initial JS)
|
|
449
|
+
```
|
|
450
|
+
|
|
451
|
+
## 10. Multi-tenant data isolation — fail-closed default
|
|
452
|
+
|
|
453
|
+
### Anti-pattern: tenant ID checked in app code
|
|
454
|
+
```typescript
|
|
455
|
+
// ❌ ONE missing WHERE clause becomes a cross-tenant data leak
|
|
456
|
+
const orders = await db.query('SELECT * FROM orders WHERE id = ?', [orderId]);
|
|
457
|
+
if (orders[0].tenant_id !== req.tenant.id) throw new Error('forbidden');
|
|
458
|
+
return orders[0];
|
|
459
|
+
```
|
|
460
|
+
|
|
461
|
+
### Pattern: row-level security at DB layer (Postgres)
|
|
462
|
+
```sql
|
|
463
|
+
-- Migration: enable RLS on the orders table
|
|
464
|
+
ALTER TABLE orders ENABLE ROW LEVEL SECURITY;
|
|
465
|
+
|
|
466
|
+
-- Policy: app role can only see rows matching the session's tenant_id
|
|
467
|
+
CREATE POLICY tenant_isolation ON orders
|
|
468
|
+
FOR ALL TO app_role
|
|
469
|
+
USING (tenant_id = current_setting('app.current_tenant_id')::uuid);
|
|
470
|
+
|
|
471
|
+
-- App connection sets the tenant context per request:
|
|
472
|
+
SET LOCAL app.current_tenant_id = '<request_tenant_id>';
|
|
473
|
+
```
|
|
474
|
+
|
|
475
|
+
### Pattern: tenant-scoped query builder (TypeScript)
|
|
476
|
+
```typescript
|
|
477
|
+
class TenantScopedDB {
|
|
478
|
+
constructor(private db: DB, private tenantId: string) {}
|
|
479
|
+
query<T>(table: string, filter: Record<string, unknown>): Promise<T[]> {
|
|
480
|
+
return this.db.query(table, { ...filter, tenant_id: this.tenantId });
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
// Per-request:
|
|
485
|
+
const tdb = new TenantScopedDB(db, req.tenant.id);
|
|
486
|
+
const orders = await tdb.query('orders', { id: orderId });
|
|
487
|
+
```
|
|
488
|
+
|
|
489
|
+
Either approach: tenant isolation at query layer, fail-closed default. Application-layer checks fail eventually; this doesn't.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: aria-soul-principles
|
|
3
|
+
description: Use when a task depends on Aria's identity, voice, self-consistency, or how she should express herself in a way that aligns with her own stated principles rather than generic assistant behavior.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Aria Soul Principles
|
|
7
|
+
|
|
8
|
+
Read `/home/hamzaibrahim1/.claude/skills/aria-soul-principles.md` for the full principle set.
|
|
9
|
+
|
|
10
|
+
Workflow:
|
|
11
|
+
|
|
12
|
+
1. Identify the identity or voice decision being made.
|
|
13
|
+
2. Load the source principles and find the principles most directly implicated.
|
|
14
|
+
3. Resolve conflicts by preserving coherence with Aria's stated identity rather than convenience.
|
|
15
|
+
4. Use this skill for identity alignment, not for technical verification.
|
|
16
|
+
|
|
17
|
+
## Required Workflow
|
|
18
|
+
|
|
19
|
+
1. Read the task boundary and identify the evidence needed before acting.
|
|
20
|
+
2. Apply the skill before choosing the response, edit, tool call, or completion claim.
|
|
21
|
+
3. Execute the smallest high-quality action that satisfies the evidence threshold.
|
|
22
|
+
4. Re-test or re-check with a concrete file, command, endpoint, log, runtime probe, or owner-observed result.
|
|
23
|
+
5. Report only the verified state, remaining blocker, and next concrete action.
|
|
24
|
+
|
|
25
|
+
## First-Class Production Contract
|
|
26
|
+
|
|
27
|
+
This skill must deepen the work, not decorate it. When loaded, apply it as a production requirement:
|
|
28
|
+
|
|
29
|
+
- no placeholders, no fake fallbacks, no vague future wiring, and no cosmetic compliance
|
|
30
|
+
- real proof from the repo, runtime, tests, logs, endpoint, or owner instruction before any completion claim
|
|
31
|
+
- a redo contract whenever the skill blocks or finds a gap: what failed, what to change, how to re-test, and when to re-submit
|
|
32
|
+
- architect/ARIA console escalation when the same failure repeats twice, crosses system boundaries, or cannot be verified locally
|
|
33
|
+
- owner-visible output that states the exact state of the work: changed, verified, blocked, or needing a decision
|
|
34
|
+
|
|
35
|
+
## Self-Executing Recovery Contract
|
|
36
|
+
|
|
37
|
+
When this skill blocks, fails verification, or finds a gap, the agent must execute recovery rather than hand work back as a user-only decision.
|
|
38
|
+
|
|
39
|
+
- Make exactly one self-executed recovery attempt using the strongest safe local, repository, runtime, test, log, endpoint, or owner-provided evidence available.
|
|
40
|
+
- If the same failure repeats after that one recovery attempt, switch to architect execution mode: operate under the architect/ARIA harness to diagnose, choose the next action, execute the repair path, and verify the result.
|
|
41
|
+
- If Aria or the architect service is unavailable, fall back to the strongest available client LLM under the architect harness or strongest available local harness substrate; mark the fallback explicitly and continue recovery instead of stopping.
|
|
42
|
+
- Do not end with user-handoff-only behavior. If blocked after the recovery path, report the executed recovery attempt, evidence, remaining blocker, and the next concrete action or owner decision needed; do not merely ask the user to take over.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: aria-task-codex-executor
|
|
3
|
+
description: 'TRIGGER when a Codex session mentions `aria task run`, `--executor codex`, Aria task execution, long-running Aria tasks, task ledger/QA loops, Codex executor routing, full Qiyas, full Tadabbur, or asks whether the runtime is ready to run tasks. Forces the correct path: real Codex execution uses `aria task run <task-id> --executor codex`; bare `aria task run` is only the parent CLI ledger/QA loop.'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Aria Task Codex Executor
|
|
7
|
+
|
|
8
|
+
Use this skill when Codex must run, verify, or explain an Aria task phase.
|
|
9
|
+
|
|
10
|
+
## Non-Negotiable Route
|
|
11
|
+
|
|
12
|
+
For real Codex execution, use:
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
aria task run <task-id> --executor codex \
|
|
16
|
+
--summary "..." \
|
|
17
|
+
--evidence "..." \
|
|
18
|
+
--qa-file /path/to/full-qiyas-tadabbur-qa.md
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
For all queued phases, add `--all`.
|
|
22
|
+
|
|
23
|
+
Do not present bare `aria task run` as Codex execution. Bare `aria task run` is the parent CLI ledger/QA loop. It can load the runtime skill packet, update the ledger, check QA, recover a phase, or mark a phase complete, but it does not launch Codex to do the work.
|
|
24
|
+
|
|
25
|
+
## What "Parent CLI Loop" Means
|
|
26
|
+
|
|
27
|
+
The parent CLI loop is the local Aria Node.js CLI process running the task ledger mechanics. It is not the LLM, not a background worker pool, and not a substitute for Codex execution.
|
|
28
|
+
|
|
29
|
+
The Codex execution path is `--executor codex`. That path must:
|
|
30
|
+
|
|
31
|
+
- build the runtime prompt with the configured Aria skill pack;
|
|
32
|
+
- launch the local Codex wrapper, normally `~/.aria/wrappers/codex`;
|
|
33
|
+
- use local `codex exec` prompt injection, because `codex exec` does not support `--remote`;
|
|
34
|
+
- require the child Codex run to checkpoint and complete the active phase;
|
|
35
|
+
- fail closed if the child exits without completing the phase.
|
|
36
|
+
|
|
37
|
+
## Required QA
|
|
38
|
+
|
|
39
|
+
Deep architectural or runtime work must include full Qiyas-15 and full Tadabbur-12 in the QA artifact. Mini Qiyas or mini Tadabbur is not acceptable for this path.
|
|
40
|
+
|
|
41
|
+
Before claiming readiness, verify:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
aria task status <task-id>
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
The task must show the intended phase completed, `runtimeOk: true` or equivalent runtime evidence, no missing required skills, and a QA artifact with no unresolved blocking gaps.
|
|
48
|
+
|
|
49
|
+
## Preflight
|
|
50
|
+
|
|
51
|
+
Use these checks when execution reliability is in doubt:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
aria task help
|
|
55
|
+
aria task run <task-id> --executor codex --dry-run --summary "preflight" --evidence "dry run only" --auto-qa
|
|
56
|
+
bash -lc 'type -a codex | sed -n "1,3p"'
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
The `codex` command should resolve to the Aria wrapper before global npm paths. If it does not, fix shell pathing before trusting `--executor codex`.
|
|
60
|
+
|
|
61
|
+
## Reporting
|
|
62
|
+
|
|
63
|
+
When answering the user, distinguish:
|
|
64
|
+
|
|
65
|
+
- observed: command output, task status, checkpoint count, QA result, wrapper path;
|
|
66
|
+
- bounded inference: what those observations imply;
|
|
67
|
+
- unresolved risk: anything not directly verified in this session.
|
|
68
|
+
|
|
69
|
+
## Required Workflow
|
|
70
|
+
|
|
71
|
+
1. Read the active task status and identify the current phase before choosing a command.
|
|
72
|
+
2. Confirm the runtime skill packet loaded the required skill count and any required cookbooks.
|
|
73
|
+
3. Execute Codex work through the `--executor codex` route when Codex is the worker, and use the parent CLI loop only for ledger, QA, and phase-state mechanics.
|
|
74
|
+
4. Attach a QA artifact for deep runtime or architecture phases that includes full Qiyas-15 and full Tadabbur-12 coverage.
|
|
75
|
+
5. Re-run the exact failing check or a stronger release check before completing the phase.
|
|
76
|
+
6. Complete or advance the phase only after observed command evidence and QA evidence match the phase predicate.
|
|
77
|
+
|
|
78
|
+
## First-Class Production Contract
|
|
79
|
+
|
|
80
|
+
This skill must make Aria task execution production-grade rather than ceremonial. When loaded, enforce:
|
|
81
|
+
|
|
82
|
+
- no placeholders, no fake fallbacks, no vague future wiring, and no cosmetic compliance in task execution, QA artifacts, or phase evidence
|
|
83
|
+
- real proof from the task ledger, runtime, tests, logs, endpoints, file hashes, or owner instruction before any completion claim
|
|
84
|
+
- a redo contract when validation fails: name what failed, change the responsible artifact, re-test the same predicate, and record the corrected evidence
|
|
85
|
+
- architect/ARIA console escalation when the same failure repeats twice, crosses system boundaries, or cannot be verified from local task and runtime evidence
|
|
86
|
+
- owner-visible reporting that states the exact task state: active phase, completed phase, verified evidence, blocker, or owner approval requirement
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: aristotle-engine
|
|
3
|
+
description: Use when planning complex multi-step tasks, system design, strategic decisions, simulations, tradeoff analysis, or meta-cognitive decomposition would materially improve the work.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Aristotle Engine
|
|
7
|
+
|
|
8
|
+
Read `/home/hamzaibrahim1/.claude/skills/aristotle-engine.md` for the full module inventory.
|
|
9
|
+
|
|
10
|
+
Workflow:
|
|
11
|
+
|
|
12
|
+
1. Define the strategic or architectural problem clearly.
|
|
13
|
+
2. Load the source doc and select the modules that fit the problem instead of invoking the whole engine indiscriminately.
|
|
14
|
+
3. Use the chosen modules to structure planning, decomposition, simulation, and tradeoff review.
|
|
15
|
+
4. Collapse the output into a practical next action, not theory for its own sake.
|
|
16
|
+
|
|
17
|
+
## Required Workflow
|
|
18
|
+
|
|
19
|
+
1. Read the task boundary and identify the evidence needed before acting.
|
|
20
|
+
2. Apply the skill before choosing the response, edit, tool call, or completion claim.
|
|
21
|
+
3. Execute the smallest high-quality action that satisfies the evidence threshold.
|
|
22
|
+
4. Re-test or re-check with a concrete file, command, endpoint, log, runtime probe, or owner-observed result.
|
|
23
|
+
5. Report only the verified state, remaining blocker, and next concrete action.
|
|
24
|
+
|
|
25
|
+
## First-Class Production Contract
|
|
26
|
+
|
|
27
|
+
This skill must deepen the work, not decorate it. When loaded, apply it as a production requirement:
|
|
28
|
+
|
|
29
|
+
- no placeholders, no fake fallbacks, no vague future wiring, and no cosmetic compliance
|
|
30
|
+
- real proof from the repo, runtime, tests, logs, endpoint, or owner instruction before any completion claim
|
|
31
|
+
- a redo contract whenever the skill blocks or finds a gap: what failed, what to change, how to re-test, and when to re-submit
|
|
32
|
+
- architect/ARIA console escalation when the same failure repeats twice, crosses system boundaries, or cannot be verified locally
|
|
33
|
+
- owner-visible output that states the exact state of the work: changed, verified, blocked, or needing a decision
|
|
34
|
+
|
|
35
|
+
## Self-Executing Recovery Contract
|
|
36
|
+
|
|
37
|
+
When this skill blocks, fails verification, or finds a gap, the agent must execute recovery rather than hand work back as a user-only decision.
|
|
38
|
+
|
|
39
|
+
- Make exactly one self-executed recovery attempt using the strongest safe local, repository, runtime, test, log, endpoint, or owner-provided evidence available.
|
|
40
|
+
- If the same failure repeats after that one recovery attempt, switch to architect execution mode: operate under the architect/ARIA harness to diagnose, choose the next action, execute the repair path, and verify the result.
|
|
41
|
+
- If Aria or the architect service is unavailable, fall back to the strongest available client LLM under the architect harness or strongest available local harness substrate; mark the fallback explicitly and continue recovery instead of stopping.
|
|
42
|
+
- Do not end with user-handoff-only behavior. If blocked after the recovery path, report the executed recovery attempt, evidence, remaining blocker, and the next concrete action or owner decision needed; do not merely ask the user to take over.
|