kenaz 0.0.0-stage → 0.3.2
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/kenaz.js +3 -0
- package/core/.agents/skills/remotion-best-practices/SKILL.md +61 -0
- package/core/.agents/skills/remotion-best-practices/rules/3d.md +86 -0
- package/core/.agents/skills/remotion-best-practices/rules/animations.md +27 -0
- package/core/.agents/skills/remotion-best-practices/rules/assets/charts-bar-chart.tsx +173 -0
- package/core/.agents/skills/remotion-best-practices/rules/assets/text-animations-typewriter.tsx +100 -0
- package/core/.agents/skills/remotion-best-practices/rules/assets/text-animations-word-highlight.tsx +103 -0
- package/core/.agents/skills/remotion-best-practices/rules/assets.md +78 -0
- package/core/.agents/skills/remotion-best-practices/rules/audio-visualization.md +198 -0
- package/core/.agents/skills/remotion-best-practices/rules/audio.md +169 -0
- package/core/.agents/skills/remotion-best-practices/rules/calculate-metadata.md +134 -0
- package/core/.agents/skills/remotion-best-practices/rules/can-decode.md +81 -0
- package/core/.agents/skills/remotion-best-practices/rules/charts.md +120 -0
- package/core/.agents/skills/remotion-best-practices/rules/compositions.md +154 -0
- package/core/.agents/skills/remotion-best-practices/rules/display-captions.md +184 -0
- package/core/.agents/skills/remotion-best-practices/rules/extract-frames.md +229 -0
- package/core/.agents/skills/remotion-best-practices/rules/ffmpeg.md +38 -0
- package/core/.agents/skills/remotion-best-practices/rules/fonts.md +152 -0
- package/core/.agents/skills/remotion-best-practices/rules/get-audio-duration.md +58 -0
- package/core/.agents/skills/remotion-best-practices/rules/get-video-dimensions.md +68 -0
- package/core/.agents/skills/remotion-best-practices/rules/get-video-duration.md +60 -0
- package/core/.agents/skills/remotion-best-practices/rules/gifs.md +141 -0
- package/core/.agents/skills/remotion-best-practices/rules/images.md +134 -0
- package/core/.agents/skills/remotion-best-practices/rules/import-srt-captions.md +69 -0
- package/core/.agents/skills/remotion-best-practices/rules/light-leaks.md +73 -0
- package/core/.agents/skills/remotion-best-practices/rules/lottie.md +70 -0
- package/core/.agents/skills/remotion-best-practices/rules/maps.md +412 -0
- package/core/.agents/skills/remotion-best-practices/rules/measuring-dom-nodes.md +34 -0
- package/core/.agents/skills/remotion-best-practices/rules/measuring-text.md +140 -0
- package/core/.agents/skills/remotion-best-practices/rules/parameters.md +109 -0
- package/core/.agents/skills/remotion-best-practices/rules/sequencing.md +118 -0
- package/core/.agents/skills/remotion-best-practices/rules/sfx.md +30 -0
- package/core/.agents/skills/remotion-best-practices/rules/subtitles.md +36 -0
- package/core/.agents/skills/remotion-best-practices/rules/tailwind.md +11 -0
- package/core/.agents/skills/remotion-best-practices/rules/text-animations.md +20 -0
- package/core/.agents/skills/remotion-best-practices/rules/timing.md +179 -0
- package/core/.agents/skills/remotion-best-practices/rules/transcribe-captions.md +70 -0
- package/core/.agents/skills/remotion-best-practices/rules/transitions.md +197 -0
- package/core/.agents/skills/remotion-best-practices/rules/transparent-videos.md +106 -0
- package/core/.agents/skills/remotion-best-practices/rules/trimming.md +51 -0
- package/core/.agents/skills/remotion-best-practices/rules/videos.md +171 -0
- package/core/.agents/skills/remotion-best-practices/rules/voiceover.md +99 -0
- package/core/.agents/skills/supabase-postgres-best-practices/AGENTS.md +90 -0
- package/core/.agents/skills/supabase-postgres-best-practices/CLAUDE.md +1 -0
- package/core/.agents/skills/supabase-postgres-best-practices/SKILL.md +64 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/advanced-full-text-search.md +55 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md +49 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/conn-idle-timeout.md +46 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/conn-limits.md +44 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/conn-pooling.md +41 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/conn-prepared-statements.md +46 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/data-batch-inserts.md +54 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/data-n-plus-one.md +53 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/data-pagination.md +50 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/data-upsert.md +50 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/lock-advisory.md +56 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md +68 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/lock-short-transactions.md +50 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/lock-skip-locked.md +54 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md +45 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md +55 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md +55 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/query-composite-indexes.md +44 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/query-covering-indexes.md +40 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/query-index-types.md +45 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/query-missing-indexes.md +43 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/query-partial-indexes.md +45 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/schema-data-types.md +46 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md +59 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md +55 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/schema-partitioning.md +55 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/schema-primary-keys.md +61 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/security-privileges.md +54 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/security-rls-basics.md +50 -0
- package/core/.agents/skills/supabase-postgres-best-practices/references/security-rls-performance.md +57 -0
- package/core/.agents/skills/typesafe-ai/LICENSE +21 -0
- package/core/.agents/skills/typesafe-ai/SKILL.md +149 -0
- package/core/.agents/skills/vercel-react-best-practices/AGENTS.md +2934 -0
- package/core/.agents/skills/vercel-react-best-practices/SKILL.md +136 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/advanced-init-once.md +42 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/async-api-routes.md +38 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/async-defer-await.md +80 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/async-dependencies.md +51 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/async-parallel.md +28 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +59 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/bundle-conditional.md +31 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +49 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +35 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/bundle-preload.md +50 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/client-event-listeners.md +74 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +71 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +107 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-cache-storage.md +70 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-early-exit.md +50 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-index-maps.md +37 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-length-check-first.md +49 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rendering-activity.md +26 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +40 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +46 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +74 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +58 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-memo.md +44 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/server-cache-react.md +76 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
- package/core/.agents/skills/vercel-react-best-practices/rules/server-serialization.md +38 -0
- package/core/.claude/agents/pcb-reviewer.md +146 -0
- package/core/.claude/commands/Amelia.md +5 -0
- package/core/.claude/commands/Ansuz.md +38 -0
- package/core/.claude/commands/Huginn.md +25 -0
- package/core/.claude/commands/agent-worker.md +168 -0
- package/core/.claude/commands/architect.md +24 -0
- package/core/.claude/commands/archive.md +24 -0
- package/core/.claude/commands/canary.md +17 -0
- package/core/.claude/commands/incident.md +15 -0
- package/core/.claude/commands/init.md +112 -0
- package/core/.claude/commands/legacy_dev.md +18 -0
- package/core/.claude/commands/product-review.md +131 -0
- package/core/.claude/commands/review.md +14 -0
- package/core/.claude/commands/security.md +15 -0
- package/core/.claude/commands/spec.md +22 -0
- package/core/.claude/commands/strategy.md +141 -0
- package/core/.claude/commands/sunny.md +1 -0
- package/core/.claude/commands//347/224/242/345/223/201.md +15 -0
- package/core/.claude/commands//347/224/242/345/223/201/346/252/242/350/246/226.md +129 -0
- package/core/.claude/commands//350/250/255/350/250/210.md +14 -0
- package/core/.claude/commands//350/251/225/344/274/260.md +16 -0
- package/core/.claude/commands//351/200/262/345/272/246.md +15 -0
- package/core/.claude/hooks/__tests__/substrate.test.js +122 -0
- package/core/.claude/hooks/__tests__/task-1866-cli-guard.test.js +193 -0
- package/core/.claude/hooks/__tests__/task-1977-dedupe-guard.test.js +125 -0
- package/core/.claude/hooks/__tests__/task-2087-mark-landed-idempotent.test.js +128 -0
- package/core/.claude/hooks/__tests__/task-2253-null-tip-marker-reuse.test.js +84 -0
- package/core/.claude/hooks/__tests__/task-2381-project-guard-walkup.test.js +53 -0
- package/core/.claude/hooks/_ansuz-conversation.js +183 -0
- package/core/.claude/hooks/_ansuz-conversation.test.js +90 -0
- package/core/.claude/hooks/_dedupe-guard.js +75 -0
- package/core/.claude/hooks/_peer-project-root.js +113 -0
- package/core/.claude/hooks/_peer-project-root.test.js +121 -0
- package/core/.claude/hooks/_peer-waiting-line.js +27 -0
- package/core/.claude/hooks/_project-guard.js +45 -0
- package/core/.claude/hooks/_run-user-prompt.js +134 -0
- package/core/.claude/hooks/_run-user-prompt.test.js +80 -0
- package/core/.claude/hooks/_session-identity.js +62 -0
- package/core/.claude/hooks/_session-pin.js +34 -0
- package/core/.claude/hooks/_session-pin.test.js +89 -0
- package/core/.claude/hooks/_signal-fence.js +17 -0
- package/core/.claude/hooks/_substrate-paths.js +95 -0
- package/core/.claude/hooks/_user-scope.js +23 -0
- package/core/.claude/hooks/ansuz-session-pin-via-turn-context.test.js +52 -0
- package/core/.claude/hooks/ansuz-session-pin.js +171 -0
- package/core/.claude/hooks/ansuz-session-pin.test.js +140 -0
- package/core/.claude/hooks/context-check.js +51 -0
- package/core/.claude/hooks/core-resolve.js +230 -0
- package/core/.claude/hooks/daemon-outbox-hook.js +139 -0
- package/core/.claude/hooks/fatigue-check.js +52 -0
- package/core/.claude/hooks/handoff-snapshot-on-commit.js +154 -0
- package/core/.claude/hooks/handoff-snapshot-on-decision.js +188 -0
- package/core/.claude/hooks/handoff-snapshot-on-question.js +158 -0
- package/core/.claude/hooks/handoff-staleness.js +197 -0
- package/core/.claude/hooks/jev-thalamus-context.js +17 -0
- package/core/.claude/hooks/jev-thalamus-context.test.js +41 -0
- package/core/.claude/hooks/lease-release.js +119 -0
- package/core/.claude/hooks/lease-touch.js +96 -0
- package/core/.claude/hooks/memory-guard.js +723 -0
- package/core/.claude/hooks/memory-guard.test.js +574 -0
- package/core/.claude/hooks/reflex-feedback.js +5 -0
- package/core/.claude/hooks/session-init.ps1 +49 -0
- package/core/.claude/hooks/sound-event.js +70 -0
- package/core/.claude/hooks/sound-event.sh +37 -0
- package/core/.claude/hooks/stream-delta.js +169 -0
- package/core/.claude/hooks/synapse-first-investigation.js +326 -0
- package/core/.claude/hooks/synapse-first-investigation.test.js +126 -0
- package/core/.claude/hooks/task-bridge.js +33 -0
- package/core/.claude/hooks/turn-context-peer.test.js +115 -0
- package/core/.claude/hooks/turn-context-session-line.test.js +69 -0
- package/core/.claude/hooks/turn-context.js +215 -0
- package/core/.claude/hooks/worktree-create.js +1232 -0
- package/core/.claude/hooks/worktree-remove.js +181 -0
- package/core/.claude/no-hooks.settings.json +3 -0
- package/core/.claude/settings.json +180 -0
- package/core/.claude/skills/adapt/SKILL.md +199 -0
- package/core/.claude/skills/animate/SKILL.md +190 -0
- package/core/.claude/skills/architect_agent/SKILL.md +408 -0
- package/core/.claude/skills/assessment_agent/SKILL.md +289 -0
- package/core/.claude/skills/audit/SKILL.md +129 -0
- package/core/.claude/skills/backend_agent/SKILL.md +407 -0
- package/core/.claude/skills/backend_engineer/SKILL.md +788 -0
- package/core/.claude/skills/bolder/SKILL.md +132 -0
- package/core/.claude/skills/clarify/SKILL.md +180 -0
- package/core/.claude/skills/code_reviewer/SKILL.md +305 -0
- package/core/.claude/skills/code_reviewer/patterns.yaml +85 -0
- package/core/.claude/skills/colorize/SKILL.md +158 -0
- package/core/.claude/skills/critique/SKILL.md +118 -0
- package/core/.claude/skills/delight/SKILL.md +317 -0
- package/core/.claude/skills/designer/SKILL.md +845 -0
- package/core/.claude/skills/dev_agent/SKILL.md +503 -0
- package/core/.claude/skills/developer/SKILL.md +792 -0
- package/core/.claude/skills/distill/SKILL.md +137 -0
- package/core/.claude/skills/extract/SKILL.md +95 -0
- package/core/.claude/skills/feature_agent/SKILL.md +303 -0
- package/core/.claude/skills/frontend-design/SKILL.md +127 -0
- package/core/.claude/skills/frontend-design/reference/color-and-contrast.md +132 -0
- package/core/.claude/skills/frontend-design/reference/interaction-design.md +123 -0
- package/core/.claude/skills/frontend-design/reference/motion-design.md +99 -0
- package/core/.claude/skills/frontend-design/reference/responsive-design.md +114 -0
- package/core/.claude/skills/frontend-design/reference/spatial-design.md +100 -0
- package/core/.claude/skills/frontend-design/reference/typography.md +131 -0
- package/core/.claude/skills/frontend-design/reference/ux-writing.md +107 -0
- package/core/.claude/skills/frontend_agent/SKILL.md +327 -0
- package/core/.claude/skills/harden/SKILL.md +358 -0
- package/core/.claude/skills/heimdall/SKILL.md +84 -0
- package/core/.claude/skills/huginn/SKILL.md +208 -0
- package/core/.claude/skills/incident_response/SKILL.md +315 -0
- package/core/.claude/skills/legacy_dev/SKILL.md +202 -0
- package/core/.claude/skills/normalize/SKILL.md +67 -0
- package/core/.claude/skills/onboard/SKILL.md +243 -0
- package/core/.claude/skills/optimization_agent/SKILL.md +340 -0
- package/core/.claude/skills/optimize/SKILL.md +269 -0
- package/core/.claude/skills/pcb-review/SKILL.md +39 -0
- package/core/.claude/skills/polish/SKILL.md +202 -0
- package/core/.claude/skills/product_manager/SKILL.md +1091 -0
- package/core/.claude/skills/qa_engineer/SKILL.md +1269 -0
- package/core/.claude/skills/quieter/SKILL.md +118 -0
- package/core/.claude/skills/remotion-best-practices/SKILL.md +61 -0
- package/core/.claude/skills/remotion-best-practices/rules/3d.md +86 -0
- package/core/.claude/skills/remotion-best-practices/rules/animations.md +27 -0
- package/core/.claude/skills/remotion-best-practices/rules/assets/charts-bar-chart.tsx +173 -0
- package/core/.claude/skills/remotion-best-practices/rules/assets/text-animations-typewriter.tsx +100 -0
- package/core/.claude/skills/remotion-best-practices/rules/assets/text-animations-word-highlight.tsx +103 -0
- package/core/.claude/skills/remotion-best-practices/rules/assets.md +78 -0
- package/core/.claude/skills/remotion-best-practices/rules/audio-visualization.md +198 -0
- package/core/.claude/skills/remotion-best-practices/rules/audio.md +169 -0
- package/core/.claude/skills/remotion-best-practices/rules/calculate-metadata.md +134 -0
- package/core/.claude/skills/remotion-best-practices/rules/can-decode.md +81 -0
- package/core/.claude/skills/remotion-best-practices/rules/charts.md +120 -0
- package/core/.claude/skills/remotion-best-practices/rules/compositions.md +154 -0
- package/core/.claude/skills/remotion-best-practices/rules/display-captions.md +184 -0
- package/core/.claude/skills/remotion-best-practices/rules/extract-frames.md +229 -0
- package/core/.claude/skills/remotion-best-practices/rules/ffmpeg.md +38 -0
- package/core/.claude/skills/remotion-best-practices/rules/fonts.md +152 -0
- package/core/.claude/skills/remotion-best-practices/rules/get-audio-duration.md +58 -0
- package/core/.claude/skills/remotion-best-practices/rules/get-video-dimensions.md +68 -0
- package/core/.claude/skills/remotion-best-practices/rules/get-video-duration.md +60 -0
- package/core/.claude/skills/remotion-best-practices/rules/gifs.md +141 -0
- package/core/.claude/skills/remotion-best-practices/rules/images.md +134 -0
- package/core/.claude/skills/remotion-best-practices/rules/import-srt-captions.md +69 -0
- package/core/.claude/skills/remotion-best-practices/rules/light-leaks.md +73 -0
- package/core/.claude/skills/remotion-best-practices/rules/lottie.md +70 -0
- package/core/.claude/skills/remotion-best-practices/rules/maps.md +412 -0
- package/core/.claude/skills/remotion-best-practices/rules/measuring-dom-nodes.md +34 -0
- package/core/.claude/skills/remotion-best-practices/rules/measuring-text.md +140 -0
- package/core/.claude/skills/remotion-best-practices/rules/parameters.md +109 -0
- package/core/.claude/skills/remotion-best-practices/rules/sequencing.md +118 -0
- package/core/.claude/skills/remotion-best-practices/rules/sfx.md +30 -0
- package/core/.claude/skills/remotion-best-practices/rules/subtitles.md +36 -0
- package/core/.claude/skills/remotion-best-practices/rules/tailwind.md +11 -0
- package/core/.claude/skills/remotion-best-practices/rules/text-animations.md +20 -0
- package/core/.claude/skills/remotion-best-practices/rules/timing.md +179 -0
- package/core/.claude/skills/remotion-best-practices/rules/transcribe-captions.md +70 -0
- package/core/.claude/skills/remotion-best-practices/rules/transitions.md +197 -0
- package/core/.claude/skills/remotion-best-practices/rules/transparent-videos.md +106 -0
- package/core/.claude/skills/remotion-best-practices/rules/trimming.md +51 -0
- package/core/.claude/skills/remotion-best-practices/rules/videos.md +171 -0
- package/core/.claude/skills/remotion-best-practices/rules/voiceover.md +99 -0
- package/core/.claude/skills/security_agent/SKILL.md +312 -0
- package/core/.claude/skills/spec_optimizer/SKILL.md +299 -0
- package/core/.claude/skills/sre_agent/SKILL.md +1347 -0
- package/core/.claude/skills/sunny/SKILL.md +74 -0
- package/core/.claude/skills/supabase-postgres-best-practices/AGENTS.md +90 -0
- package/core/.claude/skills/supabase-postgres-best-practices/CLAUDE.md +1 -0
- package/core/.claude/skills/supabase-postgres-best-practices/SKILL.md +64 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/advanced-full-text-search.md +55 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md +49 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/conn-idle-timeout.md +46 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/conn-limits.md +44 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/conn-pooling.md +41 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/conn-prepared-statements.md +46 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/data-batch-inserts.md +54 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/data-n-plus-one.md +53 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/data-pagination.md +50 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/data-upsert.md +50 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/lock-advisory.md +56 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md +68 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/lock-short-transactions.md +50 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/lock-skip-locked.md +54 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md +45 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md +55 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md +55 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/query-composite-indexes.md +44 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/query-covering-indexes.md +40 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/query-index-types.md +45 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/query-missing-indexes.md +43 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/query-partial-indexes.md +45 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/schema-data-types.md +46 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md +59 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md +55 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/schema-partitioning.md +55 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/schema-primary-keys.md +61 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/security-privileges.md +54 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/security-rls-basics.md +50 -0
- package/core/.claude/skills/supabase-postgres-best-practices/references/security-rls-performance.md +57 -0
- package/core/.claude/skills/synapse_maintain/SKILL.md +84 -0
- package/core/.claude/skills/ui-ux-pro-max/SKILL.md +377 -0
- package/core/.claude/skills/ui-ux-pro-max/data/charts.csv +26 -0
- package/core/.claude/skills/ui-ux-pro-max/data/colors.csv +97 -0
- package/core/.claude/skills/ui-ux-pro-max/data/icons.csv +101 -0
- package/core/.claude/skills/ui-ux-pro-max/data/landing.csv +31 -0
- package/core/.claude/skills/ui-ux-pro-max/data/products.csv +97 -0
- package/core/.claude/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/core/.claude/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/core/.claude/skills/ui-ux-pro-max/data/styles.csv +68 -0
- package/core/.claude/skills/ui-ux-pro-max/data/typography.csv +58 -0
- package/core/.claude/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/core/.claude/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/core/.claude/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/core/.claude/skills/ui-ux-pro-max/scripts/core.py +253 -0
- package/core/.claude/skills/ui-ux-pro-max/scripts/design_system.py +1067 -0
- package/core/.claude/skills/ui-ux-pro-max/scripts/search.py +106 -0
- package/core/.claude/skills/vercel-react-best-practices/AGENTS.md +2934 -0
- package/core/.claude/skills/vercel-react-best-practices/SKILL.md +136 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/advanced-init-once.md +42 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/async-api-routes.md +38 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/async-defer-await.md +80 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/async-dependencies.md +51 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/async-parallel.md +28 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +59 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/bundle-conditional.md +31 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +49 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +35 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/bundle-preload.md +50 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/client-event-listeners.md +74 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +71 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +107 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-cache-storage.md +70 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-early-exit.md +50 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-index-maps.md +37 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-length-check-first.md +49 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rendering-activity.md +26 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +40 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +46 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +74 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +58 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-memo.md +44 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/server-cache-react.md +76 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
- package/core/.claude/skills/vercel-react-best-practices/rules/server-serialization.md +38 -0
- package/core/.collaboration/README.md +258 -0
- package/core/.collaboration/cli/commands/assign.js +39 -0
- package/core/.collaboration/cli/commands/claim.js +33 -0
- package/core/.collaboration/cli/commands/complete.js +44 -0
- package/core/.collaboration/cli/commands/create.js +110 -0
- package/core/.collaboration/cli/commands/get.js +83 -0
- package/core/.collaboration/cli/commands/index.js +52 -0
- package/core/.collaboration/cli/commands/list.js +51 -0
- package/core/.collaboration/cli/commands/lock.js +45 -0
- package/core/.collaboration/cli/commands/rebuild.js +39 -0
- package/core/.collaboration/cli/commands/search.js +61 -0
- package/core/.collaboration/cli/commands/stats.js +61 -0
- package/core/.collaboration/cli/commands/transfer.js +41 -0
- package/core/.collaboration/cli/commands/unlock.js +48 -0
- package/core/.collaboration/cli/formatters/help-formatter.js +70 -0
- package/core/.collaboration/cli/formatters/index.js +7 -0
- package/core/.collaboration/cli/task-cli.js +46 -0
- package/core/.collaboration/cli/utils/arg-parser.js +74 -0
- package/core/.collaboration/cli/utils/git-user.js +25 -0
- package/core/.collaboration/cli/utils/index.js +9 -0
- package/core/.collaboration/cli/utils/output.js +10 -0
- package/core/.collaboration/config/default.yaml +189 -0
- package/core/.collaboration/core/conflict-resolver.js +461 -0
- package/core/.collaboration/core/conflict-resolver.test.js +389 -0
- package/core/.collaboration/core/id-generator.js +303 -0
- package/core/.collaboration/core/migrate-legacy.js +260 -0
- package/core/.collaboration/core/package.json +1 -0
- package/core/.collaboration/core/task-2257-estimated-hours.test.js +72 -0
- package/core/.collaboration/core/task-2260-dir-layout-move.test.js +60 -0
- package/core/.collaboration/core/task-2264-single-after-capture.test.js +61 -0
- package/core/.collaboration/core/task-2288-followups.test.js +121 -0
- package/core/.collaboration/core/task-api-json.js +211 -0
- package/core/.collaboration/core/task-api.js +3729 -0
- package/core/.collaboration/core/task-api.test.js +1268 -0
- package/core/.collaboration/docs/API.md +787 -0
- package/core/.collaboration/docs/ARCHITECTURE.md +596 -0
- package/core/.collaboration/docs/CLI.md +821 -0
- package/core/.collaboration/docs/FAQ.md +695 -0
- package/core/.collaboration/docs/MIGRATION.md +804 -0
- package/core/.collaboration/docs/examples/README.md +320 -0
- package/core/.collaboration/docs/examples/advanced-queries.js +261 -0
- package/core/.collaboration/docs/examples/basic-usage.js +184 -0
- package/core/.collaboration/docs/examples/team-workflow.js +352 -0
- package/core/.collaboration/hooks/README.md +70 -0
- package/core/.collaboration/hooks/config.json +10 -0
- package/core/.collaboration/hooks/install.js +400 -0
- package/core/.collaboration/hooks/post-merge.js +163 -0
- package/core/.collaboration/hooks/pre-commit.js +264 -0
- package/core/.collaboration/hooks/synapse-hook.js +486 -0
- package/core/.collaboration/hooks/synapse-hook.test.js +69 -0
- package/core/.failure/INDEX.yaml +231 -0
- package/core/.failure/agent-execution/FAIL-001-agent-no-output.yaml +391 -0
- package/core/.failure/agent-execution/FAIL-004_agent_platform_specific_commands.md +194 -0
- package/core/.failure/agent-execution/FAIL-005_background_agent_permission_denied.md +204 -0
- package/core/.failure/agent-execution/FAIL-007-pm-lead-wrong-team-invocation.yaml +0 -0
- package/core/.failure/agent-execution/FAIL-008-bypass-api-direct-yaml-write.yaml +94 -0
- package/core/.failure/agent-execution/FAIL-010-phase0-poem-format-skipped.yaml +28 -0
- package/core/.failure/agent-execution/FAIL-010-skipping-cognitive-checkpoint-after-verification.yaml +59 -0
- package/core/.failure/agent-execution/FAIL-012-grep-shortcut-during-investigation.yaml +85 -0
- package/core/.failure/agent-execution/FAIL-013-search-cwd-drift-and-case-mismatch.yaml +103 -0
- package/core/.failure/agent-execution/FAIL-014-shared-worktree-premature-death-verdict.yaml +35 -0
- package/core/.failure/agent-execution/FAIL-AUTO-TASK_1413.yaml +31 -0
- package/core/.failure/agent-execution/FAIL-AUTO-TASK_1427.yaml +41 -0
- package/core/.failure/agent-execution/FAIL-AUTO-TASK_904.yaml +30 -0
- package/core/.failure/agent-execution/README.md +68 -0
- package/core/.failure/architecture/FAIL-004_session_based_skill_recognition.md +128 -0
- package/core/.failure/architecture/FAIL-006-python-version-compatibility.yaml +445 -0
- package/core/.failure/architecture/README.md +87 -0
- package/core/.failure/code-quality/README.md +89 -0
- package/core/.failure/data-integrity/FAIL-002-json-bom.yaml +220 -0
- package/core/.failure/data-integrity/README.md +141 -0
- package/core/.failure/pipeline/FAIL-003-queue-pollution.yaml +335 -0
- package/core/.failure/pipeline/README.md +95 -0
- package/core/.failure/retired/FAIL-009-skipping-synapse-pulse-before-code-change.yaml +49 -0
- package/core/.failure/tools/README.md +230 -0
- package/core/.failure/tools/USAGE_GUIDE.md +323 -0
- package/core/.failure/tools/check_bom.js +101 -0
- package/core/.failure/tools/check_failures.ps1 +387 -0
- package/core/.failure/tools/fix_json.js +58 -0
- package/core/.failure/tools/log_failure.ps1 +474 -0
- package/core/.failure/tools/remove_bom.js +46 -0
- package/core/.failure/tools/validate_json.js +50 -0
- package/core/.formation/.episode-input.json +10 -0
- package/core/.formation/README.md +188 -0
- package/core/.formation/bifrost/CGDD_hook_lifecycle.js +575 -0
- package/core/.formation/bifrost/HOOK_PARITY_VERIFICATION.md +241 -0
- package/core/.formation/bifrost/README.md +71 -0
- package/core/.formation/bifrost/codex-doctor.js +106 -0
- package/core/.formation/bifrost/codex-doctor.test.js +51 -0
- package/core/.formation/bifrost/launch.js +510 -0
- package/core/.formation/bifrost/launch.test.js +217 -0
- package/core/.formation/bifrost/openai/codex-hook-shim.js +171 -0
- package/core/.formation/bifrost/openai/codex-hook-shim.test.js +107 -0
- package/core/.formation/bifrost/openai/models.json +36 -0
- package/core/.formation/bifrost/openai/relay.js +781 -0
- package/core/.formation/bifrost/openai/relay.test.js +71 -0
- package/core/.formation/bifrost/session.js +382 -0
- package/core/.formation/bifrost/session.test.js +121 -0
- package/core/.formation/bifrost/setup-codex.js +685 -0
- package/core/.formation/bifrost/setup-codex.test.js +102 -0
- package/core/.formation/bifrost/shared/ansuz-boot-policy.js +31 -0
- package/core/.formation/bifrost/shared/ansuz-boot-policy.test.js +40 -0
- package/core/.formation/bifrost/shared/boot-context.js +68 -0
- package/core/.formation/bifrost/shared/boot-context.test.js +67 -0
- package/core/.formation/bifrost/shared/codex-appserver.js +191 -0
- package/core/.formation/bifrost/shared/codex-injection.js +126 -0
- package/core/.formation/bifrost/shared/codex-session-registry.js +105 -0
- package/core/.formation/bifrost/shared/codex-session-registry.test.js +126 -0
- package/core/.formation/bifrost/shared/consolidate.js +286 -0
- package/core/.formation/bifrost/shared/stream-json.js +103 -0
- package/core/.formation/bifrost/shared/tools.js +278 -0
- package/core/.formation/bifrost/sync.js +142 -0
- package/core/.formation/briefs/scheduler-evolution.md +209 -0
- package/core/.formation/lead.yaml +118 -0
- package/core/.formation/legacy.bak/designer.yaml +57 -0
- package/core/.formation/legacy.bak/pm.yaml +57 -0
- package/core/.formation/legacy.bak/qa.yaml +57 -0
- package/core/.formation/legacy.bak/review.yaml +62 -0
- package/core/.formation/legacy.bak/scheduler.yaml +129 -0
- package/core/.formation/legacy.bak/sre.yaml +57 -0
- package/core/.formation/legion/forge.yaml +299 -0
- package/core/.formation/legion/hive.yaml +238 -0
- package/core/.formation/native/claude/README.md +61 -0
- package/core/.formation/native/claude/models.json +42 -0
- package/core/.formation/role-map.yaml +274 -0
- package/core/.formation/roles/_shared/modules/code_review.yaml +98 -0
- package/core/.formation/roles/_shared/modules/security.yaml +103 -0
- package/core/.formation/roles/_shared/modules/testing.yaml +14 -0
- package/core/.formation/roles/backend/role.yaml +93 -0
- package/core/.formation/roles/code_reviewer/role.yaml +102 -0
- package/core/.formation/roles/database_optimizer/role.yaml +107 -0
- package/core/.formation/roles/designer/role.yaml +66 -0
- package/core/.formation/roles/developer/role.yaml +75 -0
- package/core/.formation/roles/frontend/role.yaml +134 -0
- package/core/.formation/roles/incident_response/role.yaml +89 -0
- package/core/.formation/roles/qa/role.yaml +89 -0
- package/core/.formation/roles/security/role.yaml +87 -0
- package/core/.formation/roles/sre/role.yaml +66 -0
- package/core/.formation/skills/coordinator.yaml +52 -0
- package/core/.formation/solo/diagnosis.yaml +78 -0
- package/core/.formation/solo/strategy.yaml +121 -0
- package/core/.formation/spec/task_operations.parity.test.js +426 -0
- package/core/.formation/spec/task_operations.yaml +291 -0
- package/core/.formation/squad/blitz.yaml +192 -0
- package/core/.formation/squad/strategy-tribunal.yaml +354 -0
- package/core/.formation/squad/strategy.yaml +349 -0
- package/core/.formation/squad/sweep.yaml +208 -0
- package/core/.formation/tests/hello.txt +2 -0
- package/core/.formation/tools/__tests__/m1-claim-gate.test.js +175 -0
- package/core/.formation/tools/__tests__/m1-hmap-convid.test.js +216 -0
- package/core/.formation/tools/__tests__/release-lock.test.js +176 -0
- package/core/.formation/tools/__tests__/subagent-bifrost-guard.test.js +234 -0
- package/core/.formation/tools/__tests__/subagent-codex-harness.test.js +96 -0
- package/core/.formation/tools/__tests__/task-1863-claim-late-release.test.js +160 -0
- package/core/.formation/tools/__tests__/task-2265-singleton-identity.test.js +134 -0
- package/core/.formation/tools/__tests__/task-2281-singleton-readers.test.js +64 -0
- package/core/.formation/tools/__tests__/task2030-worktree-node-modules.test.js +221 -0
- package/core/.formation/tools/__tests__/task2067-worktree-branch-reuse.test.js +148 -0
- package/core/.formation/tools/alaya-gate.js +198 -0
- package/core/.formation/tools/analytics.js +172 -0
- package/core/.formation/tools/broadcast.js +103 -0
- package/core/.formation/tools/commit-sync.js +154 -0
- package/core/.formation/tools/coordinator.js +350 -0
- package/core/.formation/tools/dashboard-models-chain.test.js +60 -0
- package/core/.formation/tools/dispatch-cortex-context.test.js +52 -0
- package/core/.formation/tools/dispatch-detail/cross-project-worktree.md +40 -0
- package/core/.formation/tools/dispatch-detail/testing-module.md +53 -0
- package/core/.formation/tools/dispatch-detail/worktree-subagent-mode.md +72 -0
- package/core/.formation/tools/dispatch-dryrun.test.js +54 -0
- package/core/.formation/tools/dispatch-model-policy.test.js +165 -0
- package/core/.formation/tools/dispatch-notifier.js +84 -0
- package/core/.formation/tools/dispatch-registry.js +346 -0
- package/core/.formation/tools/dispatch.js +1931 -0
- package/core/.formation/tools/formations.js +1203 -0
- package/core/.formation/tools/forseti-verify.js +1170 -0
- package/core/.formation/tools/git-salvage.js +269 -0
- package/core/.formation/tools/guard-attribution.js +224 -0
- package/core/.formation/tools/headless-branch-recovery.test.js +64 -0
- package/core/.formation/tools/headless-dryrun.test.js +79 -0
- package/core/.formation/tools/headless-v2.js +659 -0
- package/core/.formation/tools/headless.js +1071 -0
- package/core/.formation/tools/integration.js +528 -0
- package/core/.formation/tools/jev-correction.js +214 -0
- package/core/.formation/tools/jev-correction.test.js +178 -0
- package/core/.formation/tools/legacy-scheduler.js +1994 -0
- package/core/.formation/tools/lib/exec-tree.js +92 -0
- package/core/.formation/tools/lib/exec-tree.test.js +82 -0
- package/core/.formation/tools/loader.js +190 -0
- package/core/.formation/tools/log-reader.js +232 -0
- package/core/.formation/tools/logger.js +273 -0
- package/core/.formation/tools/mcp-allowlist.test.js +40 -0
- package/core/.formation/tools/memory-loader.js +422 -0
- package/core/.formation/tools/merge-lock-heartbeat.test.js +35 -0
- package/core/.formation/tools/no-hooks.settings.json +3 -0
- package/core/.formation/tools/pool-status-push.js +121 -0
- package/core/.formation/tools/pool-status-push.test.js +165 -0
- package/core/.formation/tools/post-complete/bounded-http.js +102 -0
- package/core/.formation/tools/post-complete/bounded-http.test.js +130 -0
- package/core/.formation/tools/post-complete/cognitive.js +270 -0
- package/core/.formation/tools/post-complete/git-merge.js +2845 -0
- package/core/.formation/tools/post-complete/health.js +464 -0
- package/core/.formation/tools/post-complete/integration-gaps.js +98 -0
- package/core/.formation/tools/post-complete/outcome.js +874 -0
- package/core/.formation/tools/post-complete/staging.js +390 -0
- package/core/.formation/tools/post-complete/subagent-transcript-stats.js +460 -0
- package/core/.formation/tools/post-complete/subagent-transcript-stats.test.js +680 -0
- package/core/.formation/tools/post-complete/task1536.test.js +627 -0
- package/core/.formation/tools/post-complete/task1543.test.js +261 -0
- package/core/.formation/tools/post-complete/task1876.test.js +287 -0
- package/core/.formation/tools/post-complete/task1957.test.js +293 -0
- package/core/.formation/tools/post-complete/task1997.test.js +401 -0
- package/core/.formation/tools/post-complete/task2028.test.js +232 -0
- package/core/.formation/tools/post-complete/task2029.test.js +275 -0
- package/core/.formation/tools/post-complete/task2036.test.js +330 -0
- package/core/.formation/tools/post-complete/task2038.test.js +246 -0
- package/core/.formation/tools/post-complete/task2071.test.js +231 -0
- package/core/.formation/tools/post-complete/task2233.test.js +100 -0
- package/core/.formation/tools/post-complete/task2240.test.js +134 -0
- package/core/.formation/tools/post-complete/task2244.test.js +199 -0
- package/core/.formation/tools/post-complete/task2255.test.js +28 -0
- package/core/.formation/tools/post-complete/task2268.test.js +106 -0
- package/core/.formation/tools/post-complete/task2341.test.js +74 -0
- package/core/.formation/tools/post-complete/task2345.test.js +38 -0
- package/core/.formation/tools/post-complete/testing.js +482 -0
- package/core/.formation/tools/post-complete/wish.js +177 -0
- package/core/.formation/tools/post-complete/worktree-rescue.test.js +283 -0
- package/core/.formation/tools/post-complete.js +3660 -0
- package/core/.formation/tools/post-complete.test.js +1002 -0
- package/core/.formation/tools/pre-dispatch-snapshot.test.js +328 -0
- package/core/.formation/tools/process-state.js +33 -0
- package/core/.formation/tools/prompt.js +2183 -0
- package/core/.formation/tools/prompt.test.js +875 -0
- package/core/.formation/tools/remote-conflict.js +98 -0
- package/core/.formation/tools/revert-daemon-state.js +162 -0
- package/core/.formation/tools/route-audit.test.js +55 -0
- package/core/.formation/tools/runner.js +1332 -0
- package/core/.formation/tools/supabase-client.js +104 -0
- package/core/.formation/tools/task-sync.js +236 -0
- package/core/.formation/tools/task-utils.js +344 -0
- package/core/.formation/tools/task2028-headless-worktree.test.js +112 -0
- package/core/.formation/tools/test-drift.js +148 -0
- package/core/.formation/tools/tests/headless-mcp-args-plumbing.test.js +123 -0
- package/core/.formation/tools/tests/relay-mcp-overrides.test.js +112 -0
- package/core/.formation/tools/transcript-recorder.js +574 -0
- package/core/.formation/tools/utils-claude-cmd.test.js +28 -0
- package/core/.formation/tools/utils-worktree-config.test.js +44 -0
- package/core/.formation/tools/utils.js +1020 -0
- package/core/.formation/tools/verify-acceptance.js +585 -0
- package/core/.formation/tools/worktree-leak.test.js +162 -0
- package/core/.formation/tools/worktree-reclaim.js +259 -0
- package/core/.formation/tools/worktree-reclaim.test.js +182 -0
- package/core/.formation/tools/yggdrasil-local.js +97 -0
- package/core/.formation/unit/do.yaml +78 -0
- package/core/.formation/unit/heimdall.yaml +96 -0
- package/core/.formation/unit/plan.yaml +67 -0
- package/core/.formation/unit/think.yaml +58 -0
- package/core/.kenaz/MUNINN_SNAPSHOT9_EPISODE.json +32 -0
- package/core/.kenaz/MUNINN_SNAPSHOT9_RUNE.json +23 -0
- package/core/.kenaz/MUNINN_SNAPSHOT9_SUMMARY.md +89 -0
- package/core/.kenaz/ash_TASK_1428-20260507.json +14 -0
- package/core/.kenaz/cache/native-models/claude.json +42 -0
- package/core/.kenaz/claude-hooks-manifest.json +119 -0
- package/core/.kenaz/cortex.yaml +100 -0
- package/core/.kenaz/curator_state.json +7 -0
- package/core/.kenaz/dashboard-quick-prompts.json +9 -0
- package/core/.kenaz/designs/METAPLASTICITY_CONFIDENCE_DESIGN.md +537 -0
- package/core/.kenaz/designs/REFLEX_INITIATOR_DESIGN.md +501 -0
- package/core/.kenaz/designs/TASK_1385_handoff_mcp_design.md +426 -0
- package/core/.kenaz/designs/TASK_932_hippocampus_consolidation.md +103 -0
- package/core/.kenaz/designs/TASK_934_efe_signal_engine.md +97 -0
- package/core/.kenaz/designs/TASK_935_self_evolution_framework.md +154 -0
- package/core/.kenaz/designs/VISION_cognitive_architecture_roadmap.md +159 -0
- package/core/.kenaz/designs/metaplasticity_simulation_results.json +696 -0
- package/core/.kenaz/docs/INDEX.md +214 -0
- package/core/.kenaz/docs/README.md +290 -0
- package/core/.kenaz/docs/registry.json +962 -0
- package/core/.kenaz/docs/schema.json +144 -0
- package/core/.kenaz/docs/tools/GIT_HOOK_GUIDE.md +203 -0
- package/core/.kenaz/docs/tools/RAG_INTEGRATION_GUIDE.md +306 -0
- package/core/.kenaz/docs/tools/README.md +99 -0
- package/core/.kenaz/docs/tools/TIME_ESTIMATION_GUIDE.md +299 -0
- package/core/.kenaz/docs/tools/package-lock.json +618 -0
- package/core/.kenaz/docs/tools/package.json +34 -0
- package/core/.kenaz/docs/tools/src/cli.ts +365 -0
- package/core/.kenaz/docs/tools/src/field-extractor.ts +152 -0
- package/core/.kenaz/docs/tools/src/index.ts +14 -0
- package/core/.kenaz/docs/tools/src/registry.ts +664 -0
- package/core/.kenaz/docs/tools/src/search.ts +195 -0
- package/core/.kenaz/docs/tools/src/types.ts +88 -0
- package/core/.kenaz/docs/tools/test-git-hook.sh +79 -0
- package/core/.kenaz/docs/tools/tsconfig.json +20 -0
- package/core/.kenaz/docs/tools/verify.sh +106 -0
- package/core/.kenaz/episodes/SESSION_ansuz-prompt-1785087304784.yaml +68 -0
- package/core/.kenaz/huginn-exploration.json +8 -0
- package/core/.kenaz/knowledge/ladybug_2c51da1e_shadow_file_frame_group.patch +163 -0
- package/core/.kenaz/knowledge/ladybug_30cf85690e_shadow_page_read_during_checkpoint.patch +393 -0
- package/core/.kenaz/knowledge/ladybug_7a17858d3a_node_group_delete_lock.patch +102 -0
- package/core/.kenaz/knowledge/ladybug_926a0ba1_column_checkpoint.patch +412 -0
- package/core/.kenaz/knowledge/ladybug_a346c4c4b6_pk_index_header_pages.patch +144 -0
- package/core/.kenaz/knowledge/ladybug_ba5f38815b_csr_node_group.patch +86 -0
- package/core/.kenaz/main-memory/README.md +230 -0
- package/core/.kenaz/main-memory/kenaz/cortex/001_cortex_overview.md +168 -0
- package/core/.kenaz/main-memory/kenaz/cortex/001_rag_engine_overview.md +30 -0
- package/core/.kenaz/main-memory/kenaz/memory-system/001_three_tier_architecture.md +361 -0
- package/core/.kenaz/main-memory/kenaz/pipeline/001_task_execution_flow.md +117 -0
- package/core/.kenaz/main-memory/kenaz/pipeline/001_task_granularity.md +154 -0
- package/core/.kenaz/main-memory/kenaz/pipeline/002_team_priority.md +51 -0
- package/core/.kenaz/main-memory/kenaz/pipeline/003_feature_id_system.md +46 -0
- package/core/.kenaz/main-memory/kenaz/rules/001_gen_007_self_containment.md +108 -0
- package/core/.kenaz/main-memory/kenaz/rules/001_rule_priority_system.md +121 -0
- package/core/.kenaz/main-memory/kenaz/rules/002_agt_006_pre_check.md +0 -0
- package/core/.kenaz/main-memory/kenaz/rules/003_ppl_002_task_archival.md +48 -0
- package/core/.kenaz/main-memory/kenaz/system/001_dual_track_task_system.md +197 -0
- package/core/.kenaz/main-memory/knowledge/patterns/001_json_bom_issue.md +78 -0
- package/core/.kenaz/main-memory/knowledge/patterns/001_leader_worker_pattern.md +0 -0
- package/core/.kenaz/main-memory/knowledge/patterns/002_scope_path_conflict.md +115 -0
- package/core/.kenaz/main-memory/knowledge/patterns/002_task_dependency_resolution.md +223 -0
- package/core/.kenaz/main-memory/knowledge/patterns/003_question_protocol.md +242 -0
- package/core/.kenaz/main-memory/knowledge/patterns/004_user_insight_value.md +111 -0
- package/core/.kenaz/main-memory/knowledge/patterns/005_file_lock_pattern.md +274 -0
- package/core/.kenaz/main-memory/knowledge/references/001_ppl_rules.md +28 -0
- package/core/.kenaz/main-memory/knowledge/solutions/001_json_bom_issue.md +137 -0
- package/core/.kenaz/main-memory/knowledge/solutions/001_team_invocation.md +0 -0
- package/core/.kenaz/main-memory/knowledge/solutions/002_passive_monitoring.md +0 -0
- package/core/.kenaz/main-memory/knowledge/solutions/003_windows_file_race_condition.md +239 -0
- package/core/.kenaz/main-memory/registry.json +326 -0
- package/core/.kenaz/main-memory/version.yaml +58 -0
- package/core/.kenaz/muninn_episode_write.ps1 +17 -0
- package/core/.kenaz/muninn_snapshot11_rune_candidates.md +63 -0
- package/core/.kenaz/muninn_snapshot1_rune_candidates.md +49 -0
- package/core/.kenaz/orphan_audit_2026-05.md +181 -0
- package/core/.kenaz/ownership.yaml +155 -0
- package/core/.kenaz/peer.yaml +72 -0
- package/core/.kenaz/project.yaml +62 -0
- package/core/.kenaz/rune_ansuz_literature_validation_strategy.md +40 -0
- package/core/.kenaz/rune_efe_active_inference_validation.md +36 -0
- package/core/.kenaz/rune_yggdrasil_filesystem_scoped_project.md +41 -0
- package/core/.kenaz/rune_yggdrasil_project_identity_folder_name.md +41 -0
- package/core/.kenaz/rune_yggdrasil_relay_protocol_project_mismatch.md +39 -0
- package/core/.kenaz/runes_TASK_1428.json +57 -0
- package/core/.kenaz/specialist/ansuz_motivational_state.schema.json +138 -0
- package/core/.kenaz/specialist/ansuz_rules.yaml +241 -0
- package/core/.kenaz/specialist/ansuz_session_handoff.schema.json +128 -0
- package/core/.kenaz/specialist/chart_TASK_1657.json +50 -0
- package/core/.kenaz/specialist/cognitive-hub-e2e.test.js +494 -0
- package/core/.kenaz/specialist/daemon-manifest.yaml +168 -0
- package/core/.kenaz/specialist/empty_ac_audit_report.md +63 -0
- package/core/.kenaz/specialist/episode_muninn_completion_1785056865691.json +91 -0
- package/core/.kenaz/specialist/field_report_watermark.json +1 -0
- package/core/.kenaz/specialist/gc1826_driver.js +118 -0
- package/core/.kenaz/specialist/heimdall_proposal_1017c07f.json +13 -0
- package/core/.kenaz/specialist/heimdall_proposal_3dfaa8b9.json +12 -0
- package/core/.kenaz/specialist/heimdall_proposal_57af18f9.json +15 -0
- package/core/.kenaz/specialist/heimdall_proposal_57b1aa1b.json +14 -0
- package/core/.kenaz/specialist/heimdall_proposal_5a3c9473.json +13 -0
- package/core/.kenaz/specialist/identity_verdicts/TASK_1073.json +75 -0
- package/core/.kenaz/specialist/identity_verdicts/TASK_TEST.json +77 -0
- package/core/.kenaz/specialist/memory_guard_fired.json +1 -0
- package/core/.kenaz/specialist/memory_guard_trigger_cache.json +1 -0
- package/core/.kenaz/specialist/memory_source_priority.yaml +260 -0
- package/core/.kenaz/specialist/motivational_state.schema.json +62 -0
- package/core/.kenaz/specialist/prompt_1775.txt +317 -0
- package/core/.kenaz/specialist/prompt_1776.txt +326 -0
- package/core/.kenaz/specialist/prompt_1791.txt +320 -0
- package/core/.kenaz/specialist/prompt_1792.txt +320 -0
- package/core/.kenaz/specialist/prompt_1795.txt +281 -0
- package/core/.kenaz/specialist/prompt_1813.txt +332 -0
- package/core/.kenaz/specialist/prompt_1814.txt +401 -0
- package/core/.kenaz/specialist/prompt_1815.txt +394 -0
- package/core/.kenaz/specialist/prompt_1816.txt +437 -0
- package/core/.kenaz/specialist/prompt_1818.txt +361 -0
- package/core/.kenaz/specialist/prompt_1819.txt +421 -0
- package/core/.kenaz/specialist/prompt_1821.txt +345 -0
- package/core/.kenaz/specialist/prompt_1822.txt +313 -0
- package/core/.kenaz/specialist/prompt_1824.txt +348 -0
- package/core/.kenaz/specialist/prompt_1826.txt +388 -0
- package/core/.kenaz/specialist/retired_organs/README.md +58 -0
- package/core/.kenaz/specialist/rune_calibration_poc.md +175 -0
- package/core/.kenaz/specialist/rune_efe_salience_gap.md +21 -0
- package/core/.kenaz/specialist/rune_ember_autonomous_dispatch_gate.md +24 -0
- package/core/.kenaz/specialist/rune_post_dispatch_verification_pattern.md +31 -0
- package/core/.kenaz/specialist/rune_surprise_proxy_improvement.md +28 -0
- package/core/.kenaz/specialist/rune_worktree_dispatch_pattern.md +31 -0
- package/core/.kenaz/specialist/rune_yaml_filter_desync_fix.md +26 -0
- package/core/.kenaz/specialist/rune_yggdrasil_project_identity_folder_name.md +24 -0
- package/core/.kenaz/specialist/sessions/chart_TASK_1599.json +41 -0
- package/core/.kenaz/specialist/sessions/hmap_028aa781-aad2-48c0-9a61-5540565d4a7f.json +5 -0
- package/core/.kenaz/specialist/sessions/hmap_20210387-0c64-400c-9d0a-53042a0cbd89.json +5 -0
- package/core/.kenaz/specialist/sessions/hmap_c1375c5d-fd9f-44bd-a83e-353ecbb0392f.json +5 -0
- package/core/.kenaz/specialist/sessions/scratch_028aa781-aad2-48c0-9a61-5540565d4a7f.json +6 -0
- package/core/.kenaz/specialist/sessions/scratch_0acc0fb3-24f9-453f-9e92-6ef1cdf03a7c.json +6 -0
- package/core/.kenaz/specialist/sessions/scratch_20210387-0c64-400c-9d0a-53042a0cbd89.json +6 -0
- package/core/.kenaz/specialist/sessions/scratch_2f10623e-b7a1-4647-905e-9dc7c4d99f9c.json +6 -0
- package/core/.kenaz/specialist/sessions/scratch_5a38b62d-608a-488c-82f0-7e47e95e0905.json +6 -0
- package/core/.kenaz/specialist/sessions/scratch_5d9758ef-d9b6-4ffe-a017-3ed26d0a313b.json +6 -0
- package/core/.kenaz/specialist/sessions/scratch_c1375c5d-fd9f-44bd-a83e-353ecbb0392f.json +6 -0
- package/core/.kenaz/specialist/sessions/scratch_c9f3c711-b73d-4fcd-ad2a-7b2bc024ee77.json +6 -0
- package/core/.kenaz/specialist/sessions/scratch_e72e5274-1c81-4655-a05a-f87d1ecb2917.json +6 -0
- package/core/.kenaz/specialist/sessions/scratch_f740cdbe-f756-41fc-98fb-2b1413d51901.json +6 -0
- package/core/.kenaz/specialist/t1777_probe.txt +1 -0
- package/core/.kenaz/specialist/task1825_update.json +43 -0
- package/core/.kenaz/specialist/task1827_update.json +43 -0
- package/core/.kenaz/specialist/task1828_update.json +43 -0
- package/core/.kenaz/specialist/taskgen/consolidation_i.json +38 -0
- package/core/.kenaz/specialist/taskgen/csharp_a.json +44 -0
- package/core/.kenaz/specialist/taskgen/csharp_b.json +40 -0
- package/core/.kenaz/specialist/taskgen/embedding_e.json +34 -0
- package/core/.kenaz/specialist/taskgen/hygiene_fg.json +39 -0
- package/core/.kenaz/specialist/taskgen/pathology_h.json +36 -0
- package/core/.kenaz/specialist/taskgen/unity_noise_d.json +38 -0
- package/core/.kenaz/specialist/taskgen/visibility_c.json +38 -0
- package/core/.kenaz/specialist/verify_1837.js +302 -0
- package/core/.kenaz/specialist/verify_1838.js +124 -0
- package/core/.kenaz/tmp/heimdall_proposal_fc7e0944.json +10 -0
- package/core/.kenaz/tmp_heimdall_proposal_8d3e392.json +13 -0
- package/core/.kenaz/tmp_props.json +1 -0
- package/core/.kenaz/tmp_sounddrop_t1_prompt.txt +371 -0
- package/core/.kenaz/user_model.schema.json +107 -0
- package/core/.matrix/README.md +257 -0
- package/core/.matrix/index.matrix +5 -0
- package/core/.mcp.json +8 -0
- package/core/.prefrontal/.gitkeep +0 -0
- package/core/.prefrontal/proposals/.gitkeep +0 -0
- package/core/.rule/INDEX.yaml +99 -0
- package/core/.rule/MECHANIZED.md +61 -0
- package/core/.rule/code/README.md +211 -0
- package/core/.rule/code/backend.yaml +294 -0
- package/core/.rule/code/checklist.yaml +258 -0
- package/core/.rule/code/maintainability.yaml +227 -0
- package/core/.rule/code/naming.yaml +106 -0
- package/core/.rule/code/principles.yaml +71 -0
- package/core/.rule/code/reusability.yaml +192 -0
- package/core/.rule/code/structure.yaml +218 -0
- package/core/.rule/code/style.yaml +197 -0
- package/core/.rule/design/ui.yaml +79 -0
- package/core/.rule/general/agent-workflow.yaml +572 -0
- package/core/.rule/general/cortex-memory-recall.yaml +446 -0
- package/core/.rule/general/cortex-tools.yaml +181 -0
- package/core/.rule/general/cross-platform.yaml +107 -0
- package/core/.rule/general/ddx-synapse-stack.yaml +162 -0
- package/core/.rule/general/file-size-threshold.yaml +45 -0
- package/core/.rule/general/identity-contract.schema.yaml +251 -0
- package/core/.rule/general/memory-language.yaml +67 -0
- package/core/.rule/general/memory-source-priority.yaml +207 -0
- package/core/.rule/general/pipeline.yaml +246 -0
- package/core/.rule/general/principles.yaml +77 -0
- package/core/.rule/general/project-self-containment.yaml +253 -0
- package/core/.rule/general/rust-verify-target.yaml +80 -0
- package/core/.rule/general/specialist-identity-contract.yaml +153 -0
- package/core/.rule/general/sunny-access-control.yaml +60 -0
- package/core/.rule/general/synapse-code-intelligence.yaml +375 -0
- package/core/.rule/general/synapse-cognitive-fusion.yaml +301 -0
- package/core/.rule/general/system-invariants.yaml +248 -0
- package/core/.rule/general/task-pool-routing.yaml +102 -0
- package/core/.rule/general/worktree-isolation.yaml +79 -0
- package/core/.rule/pipeline/PPL-002-completed-task-archival.yaml +528 -0
- package/core/.rule/pipeline/auto-update.yaml +282 -0
- package/core/.rule/pipeline/task-execution.yaml +368 -0
- package/core/.rule/tools/check-permissions.js +197 -0
- package/core/.specialist/Amelia/README.md +329 -0
- package/core/.specialist/Amelia/capability.yaml +386 -0
- package/core/.specialist/Amelia/knowledge.yaml +217 -0
- package/core/.specialist/Amelia/principles.yaml +10 -0
- package/core/.specialist/Amelia/rule.yaml +79 -0
- package/core/.specialist/Amelia/workflow.yaml +241 -0
- package/core/.specialist/Ansuz/HEURISTIC_BOOT_ROUTING.md +39 -0
- package/core/.specialist/Ansuz/ROUTING.md +35 -0
- package/core/.specialist/Ansuz/RULES.md +79 -0
- package/core/.specialist/Ansuz/SYSTEM_DOC.md +611 -0
- package/core/.specialist/Ansuz/VERIFY.md +38 -0
- package/core/.specialist/Ansuz/capability.yaml +338 -0
- package/core/.specialist/Ansuz/cognitive_principles.yaml +62 -0
- package/core/.specialist/Ansuz/concepts/agent_types.yaml +22 -0
- package/core/.specialist/Ansuz/concepts/autonomous_agenda.yaml +170 -0
- package/core/.specialist/Ansuz/concepts/autonomy_contract.yaml +126 -0
- package/core/.specialist/Ansuz/concepts/boot_ritual.yaml +107 -0
- package/core/.specialist/Ansuz/concepts/boot_rules_summary.yaml +16 -0
- package/core/.specialist/Ansuz/concepts/capability_pointers.yaml +21 -0
- package/core/.specialist/Ansuz/concepts/cognitive_fluency_contract.yaml +264 -0
- package/core/.specialist/Ansuz/concepts/cognitive_systems_competence_map.yaml +14 -0
- package/core/.specialist/Ansuz/concepts/cognitive_systems_hippocampus.yaml +14 -0
- package/core/.specialist/Ansuz/concepts/cognitive_systems_overview.yaml +27 -0
- package/core/.specialist/Ansuz/concepts/cognitive_systems_serendipity.yaml +14 -0
- package/core/.specialist/Ansuz/concepts/cognitive_systems_turn_context.yaml +13 -0
- package/core/.specialist/Ansuz/concepts/commitment_layer.yaml +150 -0
- package/core/.specialist/Ansuz/concepts/completion_tracking.yaml +29 -0
- package/core/.specialist/Ansuz/concepts/deep_knowledge_pointers.yaml +28 -0
- package/core/.specialist/Ansuz/concepts/evolvable_guardrails.yaml +20 -0
- package/core/.specialist/Ansuz/concepts/fatigue_handoff.yaml +84 -0
- package/core/.specialist/Ansuz/concepts/formation_quick_ref.yaml +28 -0
- package/core/.specialist/Ansuz/concepts/guardrails_immutable.yaml +31 -0
- package/core/.specialist/Ansuz/concepts/identity.yaml +48 -0
- package/core/.specialist/Ansuz/concepts/interaction_protocol.yaml +42 -0
- package/core/.specialist/Ansuz/concepts/meta_evolvable_tier.yaml +28 -0
- package/core/.specialist/Ansuz/concepts/mindset.yaml +18 -0
- package/core/.specialist/Ansuz/concepts/phase9_verification.yaml +21 -0
- package/core/.specialist/Ansuz/concepts/phase_protocol.yaml +66 -0
- package/core/.specialist/Ansuz/concepts/principles.yaml +65 -0
- package/core/.specialist/Ansuz/concepts/self_evolution_overview.yaml +53 -0
- package/core/.specialist/Ansuz/concepts/task_first_protocol.yaml +7 -0
- package/core/.specialist/Ansuz/concepts/task_pool.yaml +119 -0
- package/core/.specialist/Ansuz/concepts/task_system.yaml +22 -0
- package/core/.specialist/Ansuz/concepts/write_verification.yaml +26 -0
- package/core/.specialist/Ansuz/core.yaml +224 -0
- package/core/.specialist/Ansuz/decisions/ADR-requirement-graph-layer.md +390 -0
- package/core/.specialist/Ansuz/elixir.yaml +70 -0
- package/core/.specialist/Ansuz/exo_cortex_tools.yaml +13 -0
- package/core/.specialist/Ansuz/experiments/boot_ablation_replay.js +197 -0
- package/core/.specialist/Ansuz/guards/blind_spot_guards.yaml +28 -0
- package/core/.specialist/Ansuz/guards/lesson_guards.yaml +203 -0
- package/core/.specialist/Ansuz/identity_contract.yaml +375 -0
- package/core/.specialist/Ansuz/knowledge.yaml +284 -0
- package/core/.specialist/Ansuz/modules/amelia_review.yaml +112 -0
- package/core/.specialist/Ansuz/modules/ddx.yaml +47 -0
- package/core/.specialist/Ansuz/modules/design_checks.yaml +47 -0
- package/core/.specialist/Ansuz/modules/identity_verification.yaml +119 -0
- package/core/.specialist/Ansuz/modules/loop_guard.yaml +36 -0
- package/core/.specialist/Ansuz/modules/prevention.yaml +84 -0
- package/core/.specialist/Ansuz/modules/prophecy.yaml +95 -0
- package/core/.specialist/Ansuz/modules/pulse_empty.yaml +36 -0
- package/core/.specialist/Ansuz/modules/qa_intake.yaml +29 -0
- package/core/.specialist/Ansuz/modules/recall.yaml +45 -0
- package/core/.specialist/Ansuz/principles.yaml +31 -0
- package/core/.specialist/Ansuz/research/EMBER_architecture_comparison.md +142 -0
- package/core/.specialist/Ansuz/rule.yaml +97 -0
- package/core/.specialist/Ansuz/self_model_seed.backup.json +100 -0
- package/core/.specialist/Ansuz/self_model_seed.json +100 -0
- package/core/.specialist/Ansuz/self_model_seed.sha256 +1 -0
- package/core/.specialist/Ansuz/tools/ansuz-handoff-snapshot.js +626 -0
- package/core/.specialist/Ansuz/tools/ansuz-handoff.js +437 -0
- package/core/.specialist/Ansuz/tools/ansuz-sdk-runner.js +1254 -0
- package/core/.specialist/Ansuz/tools/ansuz-sdk-runner.test.js +137 -0
- package/core/.specialist/Ansuz/tools/ansuz-state.js +288 -0
- package/core/.specialist/Ansuz/tools/bootstrap-anchors.js +289 -0
- package/core/.specialist/Ansuz/tools/handoff-freshness-milestone.test.js +73 -0
- package/core/.specialist/Ansuz/tools/handoff-resolver.js +207 -0
- package/core/.specialist/Ansuz/tools/handoff-session-identity.test.js +333 -0
- package/core/.specialist/Ansuz/tools/handoff-snapshot-args.test.js +25 -0
- package/core/.specialist/Ansuz/tools/install-claude-hooks.js +354 -0
- package/core/.specialist/Ansuz/tools/install-claude-hooks.test.js +110 -0
- package/core/.specialist/Ansuz/tools/package.json +16 -0
- package/core/.specialist/Ansuz/tools/preservation-coordinator.js +504 -0
- package/core/.specialist/Ansuz/tools/verify-and-land.js +1012 -0
- package/core/.specialist/Ansuz/tools/verify-and-land.test.js +1099 -0
- package/core/.specialist/Ansuz/workflow.yaml +1273 -0
- package/core/.specialist/Forseti/capability.yaml +210 -0
- package/core/.specialist/Forseti/core.yaml +176 -0
- package/core/.specialist/Forseti/principles.yaml +88 -0
- package/core/.specialist/Forseti/rule.yaml +86 -0
- package/core/.specialist/Heimdall/SKILL.md +65 -0
- package/core/.specialist/Heimdall/capability.yaml +134 -0
- package/core/.specialist/Heimdall/core.yaml +275 -0
- package/core/.specialist/Heimdall/principles.yaml +66 -0
- package/core/.specialist/Heimdall/rule.yaml +68 -0
- package/core/.specialist/Huginn/capability.yaml +234 -0
- package/core/.specialist/Huginn/core.yaml +482 -0
- package/core/.specialist/Huginn/principles.yaml +57 -0
- package/core/.specialist/Huginn/rule.yaml +121 -0
- package/core/.specialist/REFLECTION_TO_CONTROL.md +347 -0
- package/core/.specialist/ansuz_session_handoff.json +96 -0
- package/core/.specialist/experiments/rg_benchmark.js +523 -0
- package/core/.specialist/experiments/rg_benchmark_results.json +27 -0
- package/core/.specialist/shared/cognitive-primer.md +15 -0
- package/core/.specialist/shared/guard_schema.json +290 -0
- package/core/.specialist/shared/principles.yaml +213 -0
- package/core/.specialist/tests/runtime-discovery/README.md +224 -0
- package/core/.specialist/tests/runtime-discovery/active-project-polling.test.js +495 -0
- package/core/.specialist/tests/runtime-discovery/port-binding.test.js +418 -0
- package/core/.specialist/tests/runtime-discovery/resolver-priority.test.js +693 -0
- package/core/.specialist/tests/runtime-discovery/resolver-skip-on-invalid.test.js +467 -0
- package/core/.specialist/tests/runtime-discovery/resolver-symmetry.test.js +679 -0
- package/core/.specialist/tests/runtime-discovery/tail-cli-project-path.test.js +231 -0
- package/core/.specialist/tools/MEMORY_RECALL_TRIGGERS.md +156 -0
- package/core/.specialist/tools/README.md +129 -0
- package/core/.specialist/tools/__tests__/freya-cli-contract.test.js +156 -0
- package/core/.specialist/tools/__tests__/task-1863-boot-lease-reuse.test.js +99 -0
- package/core/.specialist/tools/__tests__/task-1917-orphan-detection.test.js +175 -0
- package/core/.specialist/tools/__tests__/task-1977-banner-cap.test.js +129 -0
- package/core/.specialist/tools/__tests__/task-1983-lease-project-path.test.js +96 -0
- package/core/.specialist/tools/__tests__/task-2218-boot-session-id.test.js +118 -0
- package/core/.specialist/tools/__tests__/task-2222-session-identity-interleave.test.js +203 -0
- package/core/.specialist/tools/__tests__/task-2246-reap-honesty.test.js +96 -0
- package/core/.specialist/tools/__tests__/task-2254-handoff-archive-contract.test.js +60 -0
- package/core/.specialist/tools/__tests__/task-2272-open-card-status-quote.test.js +26 -0
- package/core/.specialist/tools/__tests__/task-2374-usage-counter.test.js +34 -0
- package/core/.specialist/tools/ansuz-boot-fast.js +1120 -0
- package/core/.specialist/tools/ansuz-boot-fast.test.js +705 -0
- package/core/.specialist/tools/canary.js +501 -0
- package/core/.specialist/tools/context-injection.js +395 -0
- package/core/.specialist/tools/design-reasoning.js +493 -0
- package/core/.specialist/tools/discovery-fixtures.js +308 -0
- package/core/.specialist/tools/discovery-runner.js +460 -0
- package/core/.specialist/tools/failure-detector.js +1132 -0
- package/core/.specialist/tools/identity-scorer.js +714 -0
- package/core/.specialist/tools/jev-optional-context.js +107 -0
- package/core/.specialist/tools/jev-optional-context.test.js +152 -0
- package/core/.specialist/tools/lesson-guard.js +1084 -0
- package/core/.specialist/tools/lib/chart-path.js +159 -0
- package/core/.specialist/tools/lib/chart-path.test.js +171 -0
- package/core/.specialist/tools/lib/project-resolver.js +200 -0
- package/core/.specialist/tools/lib/project-resolver.test.js +241 -0
- package/core/.specialist/tools/memory-action-log.js +839 -0
- package/core/.specialist/tools/phase-gate.js +3754 -0
- package/core/.specialist/tools/phase-gate.test.js +85 -0
- package/core/.specialist/tools/phase9-policy.test.js +109 -0
- package/core/.specialist/tools/precompute-runner.js +444 -0
- package/core/.specialist/tools/prompt-files.test.js +169 -0
- package/core/.specialist/tools/replay-detectors.js +290 -0
- package/core/.specialist/tools/rule-engine.js +621 -0
- package/core/.specialist/tools/session-boot-ownership.test.js +117 -0
- package/core/.specialist/tools/session-project-state.test.js +65 -0
- package/core/.specialist/tools/session.js +1866 -0
- package/core/.specialist/tools/stream-lease.js +263 -0
- package/core/.specialist/tools/task-bridge-jev.test.js +170 -0
- package/core/.specialist/tools/task-bridge.js +765 -0
- package/core/.specialist/tools/verify-identity.js +453 -0
- package/core/.specialist/tools/wish-mandate-delivery.test.js +76 -0
- package/core/.system/README.md +555 -0
- package/core/.system/agent-skills/README.md +724 -0
- package/core/.system/archive/README.md +499 -0
- package/core/.system/assessment/README.md +645 -0
- package/core/.system/cli-tools/README.md +724 -0
- package/core/.system/collaboration/KNOWLEDGE.md +65 -0
- package/core/.system/collaboration/README.md +570 -0
- package/core/.system/cortex/MODULES.md +1046 -0
- package/core/.system/dashboard/FRONTEND.md +812 -0
- package/core/.system/dashboard/README.md +737 -0
- package/core/.system/external-skills/README.md +522 -0
- package/core/.system/failure/README.md +723 -0
- package/core/.system/formation/LEGACY_SKILLS.md +972 -0
- package/core/.system/formation/POST_COMPLETE.md +600 -0
- package/core/.system/formation/README.md +1092 -0
- package/core/.system/formation/TOOLS_REFERENCE.md +1145 -0
- package/core/.system/githooks/README.md +846 -0
- package/core/.system/kenaz/README.md +787 -0
- package/core/.system/memory/README.md +716 -0
- package/core/.system/pipeline/README.md +712 -0
- package/core/.system/rule/README.md +794 -0
- package/core/.system/specialist/README.md +669 -0
- package/core/.system/specialist/STRUCTURE.md +262 -0
- package/core/.system/sunny/README.md +476 -0
- package/core/.system/sunny/RULES.json +89 -0
- package/core/.system/sunny/knowledge/INDEX.md +37 -0
- package/core/.system/sunny/knowledge/agent-teams-api.md +0 -0
- package/core/.system/sunny/knowledge/ansuz-specialist.md +500 -0
- package/core/.system/sunny/knowledge/claude-cli-spawn.md +177 -0
- package/core/.system/sunny/knowledge/collaboration-api.md +925 -0
- package/core/.system/sunny/teammates/README.md +107 -0
- package/core/.system/sunny/teammates/how_to_use.yaml +101 -0
- package/core/.system/sunny/teammates/tools/headless/launcher.js +318 -0
- package/core/.system/sunny/teammates/tools/powershell/launcher.js +241 -0
- package/core/.system/sunny/teammates/tools/powershell/start.bat +50 -0
- package/core/.system/sunny/teammates/tools/utils/env.js +96 -0
- package/core/.system/sunny/teammates/tools/utils/format-output.js +329 -0
- package/core/.system/sunny/tools.json +101 -0
- package/core/.vendor/js-yaml.cjs +2795 -0
- package/core/.vendor/require-yaml.cjs +8 -0
- package/core/CLAUDE.md +172 -0
- package/core/KENAZ_CORE_VERSION +1 -0
- package/core/dev/ALAYA_FIELD_FEEDBACK_DESIGN.md +126 -0
- package/core/dev/ANSUZ_SCAFFOLD_DIET_2026-09-20.md +231 -0
- package/core/dev/ANSUZ_STARTUP_INJECTION_REVIEW.md +355 -0
- package/core/dev/ANSUZ_WORKFLOW_MODERNIZATION.md +143 -0
- package/core/dev/CORTEX_META_GRAPH_ASSESSMENT.md +99 -0
- package/core/dev/FREYA_DOWNSTREAM_BUGS_2026-09-19.md +44 -0
- package/core/dev/GLOBAL_MEMORY_IDENTITY_CONSOLIDATION.md +263 -0
- package/core/dev/GUARD_EFFECTIVENESS_DESIGN.md +180 -0
- package/core/dev/HEALTH_GATE_VARIANCE_ASSESSMENT.md +271 -0
- package/core/dev/HOOK_DIET_2026-09-21.md +126 -0
- package/core/dev/JEV_INTEGRATION_PLAN.md +189 -0
- package/core/dev/KENAZ_AGENT_CONNECT_v1_SPEC.md +139 -0
- package/core/dev/MOBILE_DESIGN_SPEC.md +569 -0
- package/core/dev/MULTI_ANSUZ_SPEC.md +136 -0
- package/core/dev/MUNINN_RETIREMENT.md +115 -0
- package/core/dev/PHASE3_ATTRIBUTION_POPULATION_DIAGNOSIS.md +211 -0
- package/core/dev/PHASE3_P3-2B_TASKLEVEL_PROBE.md +83 -0
- package/core/dev/PHASE3_P3-2_POPULATION_DISJOINTNESS.md +83 -0
- package/core/dev/PHASE3_P3-2_REMEASURE_REPORT.md +231 -0
- package/core/dev/PREDICTION_GROUNDING_DESIGN.md +376 -0
- package/core/dev/PRODUCT_SPEC.md +317 -0
- package/core/dev/PRODUCT_SPEC_FOR_AI_tepmlate.md +716 -0
- package/core/dev/PROJECT_REGISTRY_DUPLICATE_ASSESSMENT.md +86 -0
- package/core/dev/STARTUP_TIMELINE_TASK_1995.md +181 -0
- package/core/dev/SYNAPSE_WORKER_PER_PROJECT.md +881 -0
- package/core/dev/TASK_1680_P3-3_DISPATCH_SPEC.md +96 -0
- package/core/dev/TASK_1684_CALIBRATION_IMPACT_ANALYSIS.md +170 -0
- package/core/dev/TASK_1684_FORK_A_GOODHART_DESIGN.md +171 -0
- package/core/dev/TASK_1684_P3_2_REMEASURE_VALIDATION.md +262 -0
- package/core/dev/TASK_1903_SIGNAL_AUC_MEASUREMENT.md +207 -0
- package/core/dev/TASK_1904_BRANCH_INTEGRITY_AUDIT.md +146 -0
- package/core/dev/ansuz-eval/README.md +38 -0
- package/core/dev/ansuz-eval/build-fixtures.js +87 -0
- package/core/dev/ansuz-eval/grade.js +96 -0
- package/core/dev/ansuz-eval/grader.test.js +117 -0
- package/core/dev/ansuz-eval/tasks.md +32 -0
- package/core/dev/archive/ansuz/BOOT_FULL.md +141 -0
- package/core/dev/archive/ansuz/agents/ansuz-boot.md +176 -0
- package/core/dev/archive/ansuz/designs/alaya-passive-surfacing.md +84 -0
- package/core/dev/archive/ansuz/designs/cc_memory_indexing.md +307 -0
- package/core/dev/archive/ansuz/designs/check_guard.md +322 -0
- package/core/dev/archive/ansuz/designs/consequence_loop.md +227 -0
- package/core/dev/archive/ansuz/designs/mcp_kuzudb_lock_architecture.md +312 -0
- package/core/dev/archive/ansuz/designs/phase0_git_enrichment.md +278 -0
- package/core/dev/archive/ansuz/designs/refactor_mcp_tools_synapse.md +490 -0
- package/core/dev/archive/ansuz/designs/semantic_markdown_extraction.md +167 -0
- package/core/dev/archive/ansuz/designs/task_1372_prompt_injects_into.md +193 -0
- package/core/dev/archive/ansuz/designs/thought_stack.md +286 -0
- package/core/dev/archive/ansuz/investigations/reachability_unified_api_2026-04-11.md +330 -0
- package/core/dev/archive/ansuz/investigations/synapse_orphans_indexing_bug_2026-04-11.md +352 -0
- package/core/dev/archive/ansuz/investigations/synapse_orphans_reindex_verification_2026-04-11.md +48 -0
- package/core/dev/archive/ansuz/investigations/synapse_orphans_verification_2026-04-11.md +170 -0
- package/core/dev/archive/ansuz/legacy/kernel.yaml +399 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_0.yaml +418 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_1.yaml +376 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_10.yaml +35 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_11.yaml +582 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_2.yaml +94 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_3.yaml +274 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_4.yaml +67 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_5.yaml +32 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_6.yaml +91 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_7.yaml +58 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_8.yaml +146 -0
- package/core/dev/archive/ansuz/legacy/phases/phase_9.yaml +424 -0
- package/core/dev/archive/ansuz/specs/INDEX_bifrost_hook_parity.yaml +92 -0
- package/core/dev/archive/ansuz/specs/active-inference-formation.yaml +453 -0
- package/core/dev/archive/ansuz/specs/brief_TASK_1228_userpromptsubmit.yaml +191 -0
- package/core/dev/archive/ansuz/specs/brief_TASK_1229_pretooluse_posttooluse.yaml +250 -0
- package/core/dev/archive/ansuz/specs/brief_TASK_1230_sessionstart_stop.yaml +301 -0
- package/core/dev/archive/ansuz/specs/brief_TASK_1231_verification.yaml +272 -0
- package/core/dev/design/PHASE4_DESIGN.md +559 -0
- package/core/dev/design/dashboard_docs_integration_PLAN.md +388 -0
- package/core/dev/design/matrix_format_ABBREVIATIONS.md +655 -0
- package/core/dev/design/matrix_format_DESIGN_SPEC.md +601 -0
- package/core/dev/design/matrix_format_DISCUSSION_SUMMARY.md +484 -0
- package/core/dev/design/matrix_format_EXAMPLE_memory.matrix +13 -0
- package/core/dev/design/matrix_format_EXAMPLE_project_status.matrix +9 -0
- package/core/dev/design/matrix_format_EXAMPLE_tasks.matrix +14 -0
- package/core/dev/design/matrix_format_SYNTAX_BNF.md +754 -0
- package/core/dev/design/matrix_format_TOKEN_COMPARISON.md +484 -0
- package/core/dev/design/matrix_v2_COGNITIVE_DESIGN.md +503 -0
- package/core/dev/design/matrix_v2_DISCUSSION_SUMMARY.md +414 -0
- package/core/dev/design/matrix_v2_EXAMPLE.matrix +67 -0
- package/core/dev/designs/EXPANDABLE_CARD_DESIGN_SPEC.md +509 -0
- package/core/dev/jev-eval/ACTIVE_CORRECTION.md +52 -0
- package/core/dev/jev-eval/ANNOTATION_GUIDE.md +68 -0
- package/core/dev/jev-eval/BASELINE_COMPARISON.md +45 -0
- package/core/dev/jev-eval/CONTEXT_REVIEW.md +31 -0
- package/core/dev/jev-eval/EVALUATION_STATUS.md +39 -0
- package/core/dev/jev-eval/HISTORICAL_CORPUS.md +33 -0
- package/core/dev/jev-eval/PACKAGING_VERIFICATION.md +42 -0
- package/core/dev/jev-eval/README.md +101 -0
- package/core/dev/jev-eval/THALAMUS_RANKING.md +58 -0
- package/core/dev/jev-eval/VALIDATION_PROGRESS.md +54 -0
- package/core/dev/jev-eval/cli.mjs +50 -0
- package/core/dev/jev-eval/context.mjs +183 -0
- package/core/dev/jev-eval/corpus.mjs +186 -0
- package/core/dev/jev-eval/fixtures/conversation-review.seed.jsonl +6 -0
- package/core/dev/jev-eval/fixtures/synthetic.jsonl +11 -0
- package/core/dev/jev-eval/metrics.mjs +67 -0
- package/core/dev/jev-eval/muninn-baseline.mjs +119 -0
- package/core/dev/jev-eval/providers.mjs +95 -0
- package/core/dev/jev-eval/reports/annotation-pilot-2026-09-20.json +32 -0
- package/core/dev/jev-eval/reports/context-review-2026-09-20.json +48 -0
- package/core/dev/jev-eval/reports/conversation-review.pending.json +151 -0
- package/core/dev/jev-eval/reports/history-corpus-2026-09-20.json +52 -0
- package/core/dev/jev-eval/reports/length-probe-2026-09-20.json +133 -0
- package/core/dev/jev-eval/reports/live-smoke-2026-09-20.json +616 -0
- package/core/dev/jev-eval/reports/muninn-baseline-2026-09-20.json +52 -0
- package/core/dev/jev-eval/reports/resilience-2026-09-20.json +520 -0
- package/core/dev/jev-eval/reports/rules-baseline.json +197 -0
- package/core/dev/jev-eval/reports/synthetic-review.pending.json +357 -0
- package/core/dev/jev-eval/resilience.mjs +71 -0
- package/core/dev/jev-eval/review.mjs +78 -0
- package/core/dev/jev-eval/schema.mjs +87 -0
- package/core/dev/jev-eval/test/context.test.mjs +95 -0
- package/core/dev/jev-eval/test/corpus.test.mjs +102 -0
- package/core/dev/jev-eval/test/eval.test.mjs +146 -0
- package/core/dev/jev-eval/test/muninn-baseline.test.mjs +71 -0
- package/core/dev/jev-eval/test/resilience.test.mjs +72 -0
- package/core/dev/jev-eval/test/review.test.mjs +61 -0
- package/core/dev/pipeline/LOCK_STATE.json +4 -0
- package/core/dev/pipeline/OPTIMIZATION_PROPOSALS.json +32 -0
- package/core/dev/pipeline/PHASE3_PLANNING_SUMMARY.md +338 -0
- package/core/dev/pipeline/PIPELINE_CONFIG.json +46 -0
- package/core/dev/pipeline/PROGRESS.md +113 -0
- package/core/dev/pipeline/PROGRESS_template.md +860 -0
- package/core/dev/pipeline/QA_REPORT_F008.md +431 -0
- package/core/dev/pipeline/QA_REPORT_LOCAL_CLAUDE_DIAGNOSIS.md +583 -0
- package/core/dev/pipeline/README.md +210 -0
- package/core/dev/pipeline/SELF_ENHANCEMENT_STATUS.json.bak +47 -0
- package/core/dev/pipeline/TASK_QUEUE.json +192 -0
- package/core/dev/pipeline/WORKFLOW_GUIDE.md +824 -0
- package/core/dev/pipeline/archived/TASK_015_tauri_init.yaml +53 -0
- package/core/dev/pipeline/archived/TASK_016_tauri_commands.yaml +54 -0
- package/core/dev/pipeline/archived/TASK_017_rust_pty.yaml +54 -0
- package/core/dev/pipeline/archived/TASK_018_tauri_bundle.yaml +53 -0
- package/core/dev/pipeline/archived/TASK_019_release_workflow.yaml +56 -0
- package/core/dev/pipeline/archived/TASK_020_update_ui.yaml +54 -0
- package/core/dev/pipeline/archived/TASK_021_update_notification_ui.yaml +55 -0
- package/core/dev/pipeline/archived/TASK_022_remove_node_pty.yaml +65 -0
- package/core/dev/pipeline/archived/TASK_023_api_routes_migration.yaml +86 -0
- package/core/dev/pipeline/archived/TASK_024_feature_id_system.yaml +51 -0
- package/core/dev/pipeline/archived/TASK_025_executable_acceptance.yaml +66 -0
- package/core/dev/pipeline/archived/TASK_026_spec_versioning.yaml +56 -0
- package/core/dev/pipeline/archived/TASK_027_drift_detection.yaml +60 -0
- package/core/dev/pipeline/archived/TASK_028_tauri_pty_manager.yaml +60 -0
- package/core/dev/pipeline/archived/TASK_029_tauri_pty_commands.yaml +62 -0
- package/core/dev/pipeline/archived/TASK_030_frontend_session_adapter.yaml +54 -0
- package/core/dev/pipeline/archived/TASK_031_terminal_tauri_events.yaml +56 -0
- package/core/dev/pipeline/archived/TASK_041_scheduler_data_models.yaml +54 -0
- package/core/dev/pipeline/archived/TASK_042_path_lock_manager.yaml +53 -0
- package/core/dev/pipeline/archived/TASK_043_process_manager.yaml +57 -0
- package/core/dev/pipeline/archived/TASK_044_git_integration.yaml +85 -0
- package/core/dev/pipeline/archived/TASK_045_task_queue_manager.yaml +54 -0
- package/core/dev/pipeline/archived/TASK_046_scheduler_dispatcher.yaml +60 -0
- package/core/dev/pipeline/archived/TASK_047_tauri_scheduler_commands.yaml +55 -0
- package/core/dev/pipeline/archived/TASK_048_realtime_status_push.yaml +92 -0
- package/core/dev/pipeline/archived/TASK_049_frontend_scheduler_integration.yaml +58 -0
- package/core/dev/pipeline/archived/TASK_050_error_recovery.yaml +56 -0
- package/core/dev/pipeline/archived/TASK_051_optimization_proposals_backend.yaml +53 -0
- package/core/dev/pipeline/archived/TASK_052_optimization_proposals_ui.yaml +58 -0
- package/core/dev/pipeline/archived/TASK_053_optimization_proposals_diff_view.yaml +54 -0
- package/core/dev/pipeline/archived/TASK_054_multi_project_scheduler_state.yaml +76 -0
- package/core/dev/pipeline/archived/TASK_055_scheduler_api_project_scope.yaml +64 -0
- package/core/dev/pipeline/archived/TASK_056_frontend_scheduler_project_scope.yaml +62 -0
- package/core/dev/pipeline/archived/TASK_057_scheduler_module_structure.yaml +54 -0
- package/core/dev/pipeline/archived/TASK_058_scheduler_models_extract.yaml +51 -0
- package/core/dev/pipeline/archived/TASK_059_scheduler_core_extract.yaml +51 -0
- package/core/dev/pipeline/archived/TASK_060_scheduler_commands_extract.yaml +51 -0
- package/core/dev/pipeline/archived/TASK_061_scheduler_specialized_commands.yaml +53 -0
- package/core/dev/pipeline/archived/TASK_062_process_manager_module_structure.yaml +56 -0
- package/core/dev/pipeline/archived/TASK_063_process_manager_core_extract.yaml +56 -0
- package/core/dev/pipeline/archived/TASK_064_recovery_module_structure.yaml +57 -0
- package/core/dev/pipeline/archived/TASK_065_recovery_core_extract.yaml +56 -0
- package/core/dev/pipeline/archived/TASK_066_self_enhancement_scheduler_models.yaml +60 -0
- package/core/dev/pipeline/archived/TASK_067_agents_section_quick_actions.yaml +53 -0
- package/core/dev/pipeline/archived/TASK_067_self_enhancement_scheduler_core.yaml +65 -0
- package/core/dev/pipeline/archived/TASK_068_agent_workflow_rule_enhancement.yaml +46 -0
- package/core/dev/pipeline/archived/TASK_068_self_enhancement_tauri_commands.yaml +61 -0
- package/core/dev/pipeline/archived/TASK_069_agent_wizard_responsive.yaml +46 -0
- package/core/dev/pipeline/archived/TASK_069_self_enhancement_ui.yaml +62 -0
- package/core/dev/pipeline/archived/TASK_070_preview_panel_redesign.yaml +62 -0
- package/core/dev/pipeline/archived/TASK_070_self_enhancement_integration.yaml +57 -0
- package/core/dev/pipeline/archived/TASK_071_preview_panel_qa.yaml +98 -0
- package/core/dev/pipeline/archived/TASK_071_single_agent_config.yaml +57 -0
- package/core/dev/pipeline/archived/TASK_072_preview_modal_esc_fix.yaml +71 -0
- package/core/dev/pipeline/archived/TASK_072_product_review_module.yaml +57 -0
- package/core/dev/pipeline/archived/TASK_073_agents_page_component_refactor.yaml +68 -0
- package/core/dev/pipeline/archived/TASK_073_rename_single_agent.yaml +64 -0
- package/core/dev/pipeline/archived/TASK_074_preview_mode_ui_diagnosis.yaml +71 -0
- package/core/dev/pipeline/archived/TASK_074_single_agent_ui_toggle.yaml +56 -0
- package/core/dev/pipeline/archived/TASK_075_agents_page_component_refactor.yaml +69 -0
- package/core/dev/pipeline/archived/TASK_075_single_agent_integration_test.yaml +75 -0
- package/core/dev/pipeline/archived/TASK_076_preview_mode_ui_diagnosis.yaml +70 -0
- package/core/dev/pipeline/archived/TASK_076_single_agent_continuous_mode.yaml +65 -0
- package/core/dev/pipeline/archived/TASK_077_failure_directory_structure.yaml +51 -0
- package/core/dev/pipeline/archived/TASK_077_single_agent_typescript_types.yaml +59 -0
- package/core/dev/pipeline/archived/TASK_078_fail_001_agent_no_output.yaml +53 -0
- package/core/dev/pipeline/archived/TASK_078_single_agent_ui_simplify.yaml +74 -0
- package/core/dev/pipeline/archived/TASK_079_dashboard_rwd_responsive.yaml +63 -0
- package/core/dev/pipeline/archived/TASK_079_fail_002_json_bom.yaml +56 -0
- package/core/dev/pipeline/archived/TASK_080_fail_003_queue_pollution.yaml +56 -0
- package/core/dev/pipeline/archived/TASK_080_http_server_module.yaml +55 -0
- package/core/dev/pipeline/archived/TASK_081_failure_logging_tools.yaml +57 -0
- package/core/dev/pipeline/archived/TASK_081_http_api_routes.yaml +62 -0
- package/core/dev/pipeline/archived/TASK_082_frontend_api_adapter.yaml +51 -0
- package/core/dev/pipeline/archived/TASK_082_integrate_failure_to_workflow.yaml +60 -0
- package/core/dev/pipeline/archived/TASK_083_cleanup_nextjs_api.yaml +48 -0
- package/core/dev/pipeline/archived/TASK_083_task_queue_cleanup.yaml +67 -0
- package/core/dev/pipeline/archived/TASK_084_rust_dead_code_cleanup.yaml +66 -0
- package/core/dev/pipeline/archived/TASK_084_scheduler_sync_logic_fix.yaml +68 -0
- package/core/dev/pipeline/archived/TASK_085_http_api_web_mode_fixes.yaml +46 -0
- package/core/dev/pipeline/archived/TASK_085_memory_consolidation_0204_0205.yaml +98 -0
- package/core/dev/pipeline/archived/TASK_086_collapsible_preview_panel.yaml +161 -0
- package/core/dev/pipeline/archived/TASK_086_web_mode_feature_parity.yaml +62 -0
- package/core/dev/pipeline/archived/TASK_087_manual_memory_archival.yaml +163 -0
- package/core/dev/pipeline/archived/TASK_087_mobile_http_control.yaml +68 -0
- package/core/dev/pipeline/archived/TASK_088_fail_003_to_ppl_002_rule.yaml +63 -0
- package/core/dev/pipeline/archived/TASK_088_mobile_http_qa.yaml +121 -0
- package/core/dev/pipeline/archived/TASK_089_agent_collaboration_topic.yaml +60 -0
- package/core/dev/pipeline/archived/TASK_089_web_mode_monitor_fix.yaml +58 -0
- package/core/dev/pipeline/archived/TASK_090_cli_detection_fix.yaml +61 -0
- package/core/dev/pipeline/archived/TASK_090_ui_ux_lessons_topic.yaml +63 -0
- package/core/dev/pipeline/archived/TASK_091_expandable_card_design.yaml +56 -0
- package/core/dev/pipeline/archived/TASK_091_move_agent_section_components.yaml +65 -0
- package/core/dev/pipeline/archived/TASK_092_expandable_card_component.yaml +60 -0
- package/core/dev/pipeline/archived/TASK_092_refactor_agent_create_wizard.yaml +84 -0
- package/core/dev/pipeline/archived/TASK_093_taskcard_detail_integration.yaml +57 -0
- package/core/dev/pipeline/archived/TASK_093_update_barrel_exports_test.yaml +84 -0
- package/core/dev/pipeline/archived/TASK_094_ai_agent_generation_enhancement.yaml +115 -0
- package/core/dev/pipeline/archived/TASK_094_proposalcard_detail_integration.yaml +55 -0
- package/core/dev/pipeline/archived/TASK_095_preview_fixes.yaml +129 -0
- package/core/dev/pipeline/archived/TASK_095_single_agent_task_selector.yaml +60 -0
- package/core/dev/pipeline/archived/TASK_096_agents_page_ux_improvements.yaml +163 -0
- package/core/dev/pipeline/archived/TASK_096_single_agent_status_sync.yaml +60 -0
- package/core/dev/pipeline/archived/TASK_097_local_claude_error_logging.yaml +59 -0
- package/core/dev/pipeline/archived/TASK_097_single_agent_monitor_events.yaml +59 -0
- package/core/dev/pipeline/archived/TASK_098_product_manager_team_phase2.yaml +60 -0
- package/core/dev/pipeline/archived/TASK_098_single_agent_refactor_test.yaml +58 -0
- package/core/dev/pipeline/archived/TASK_099_backend_team_creation.yaml +258 -0
- package/core/dev/pipeline/archived/TASK_100_frontend_team_creation.yaml +61 -0
- package/core/dev/pipeline/archived/TASK_101_orchestrator_system.yaml +403 -0
- package/core/dev/pipeline/archived/TASK_102_designer_sre_teams.yaml +90 -0
- package/core/dev/pipeline/archived/TASK_103_integration_testing.yaml +86 -0
- package/core/dev/pipeline/archived/TASK_128_integration_testing.yaml +83 -0
- package/core/dev/pipeline/archived/TASK_134_cortex_v2_phase3_file_watcher.yaml +65 -0
- package/core/dev/pipeline/archived/TASK_134_team_http_api.yaml +96 -0
- package/core/dev/pipeline/archived/TASK_135_cortex_v2_phase3_git_monitor.yaml +63 -0
- package/core/dev/pipeline/archived/TASK_136_cortex_v2_phase3_change_analyzer.yaml +69 -0
- package/core/dev/pipeline/archived/TASK_137_cortex_v2_phase3_cache_invalidator.yaml +67 -0
- package/core/dev/pipeline/archived/TASK_137_team_orchestrator_integration.yaml +93 -0
- package/core/dev/pipeline/archived/TASK_138_cortex_v2_phase3_distributed_cache.yaml +68 -0
- package/core/dev/pipeline/archived/TASK_138_matrix_folder_structure.yaml +61 -0
- package/core/dev/pipeline/archived/TASK_139_cortex_v2_phase3_cache_prewarming.yaml +65 -0
- package/core/dev/pipeline/archived/TASK_146_unified_documentation.yaml +141 -0
- package/core/dev/pipeline/archived/TASK_147_pipeline_execution_rules.yaml +76 -0
- package/core/dev/pipeline/archived/TASK_148_update_claude_md.yaml +77 -0
- package/core/dev/pipeline/archived/TASK_149_fix_nextjs_mdx_serialization.yaml +63 -0
- package/core/dev/pipeline/archived/TASK_149_update_team_docs.yaml +77 -0
- package/core/dev/pipeline/archived/TASK_150_pipeline_workflow_guide.yaml +82 -0
- package/core/dev/pipeline/archived/TASK_164_fix_smart_context_switch.yaml +49 -0
- package/core/dev/pipeline/archived/TASK_165_ctags_symbol_index.yaml +53 -0
- package/core/dev/pipeline/archived/TASK_166_symbol_search_mcp_tool.yaml +48 -0
- package/core/dev/pipeline/archived/TASK_167_llm_module_summary.yaml +55 -0
- package/core/dev/pipeline/archived/TASK_168_map_reduce_context.yaml +51 -0
- package/core/dev/pipeline/archived/TASK_169_v2_integration_testing.yaml +52 -0
- package/core/dev/pipeline/backups/archive_2026-02-04T22-07-22/TASK_QUEUE_backup.json +95 -0
- package/core/dev/pipeline/docs/multi-agent-coordination.md +446 -0
- package/core/dev/pipeline/docs/overview.md +406 -0
- package/core/dev/pipeline/docs/task-management.md +412 -0
- package/core/dev/pipeline/docs/workflows.md +32 -0
- package/core/dev/pipeline/orchestrator/schemas/task_queue_schema.json +58 -0
- package/core/dev/pipeline/orchestrator/schemas/task_schema.json +139 -0
- package/core/dev/pipeline/plans/PLAN_task_cli_refactor.md +281 -0
- package/core/dev/pipeline/tasks/.gitkeep +1 -0
- package/core/dev/pipeline/test_results/TASK_TEST_PARALLEL_002_result.txt +27 -0
- package/core/dev/plans/CLI_FIRST_INSTALL_FLOW.md +128 -0
- package/core/dev/plans/FORMATION_RETIREMENT_PLAN.md +313 -0
- package/core/dev/plans/KUZU_REPLACEMENT_PLAN.md +126 -0
- package/core/dev/schemas/PRODUCT_SPEC.example.yaml +382 -0
- package/core/dev/schemas/PRODUCT_SPEC.schema.json +800 -0
- package/core/dev/schemas/README.md +517 -0
- package/core/dev/schemas/TASK.schema.json +226 -0
- package/core/dev/schemas/dataflows_ground_truth.yaml +173 -0
- package/core/dev/schemas/dataflows_spec.yaml +160 -0
- package/core/dev/schemas/extends_ground_truth.yaml +66 -0
- package/core/dev/schemas/extends_spec.yaml +121 -0
- package/core/dev/schemas/implements_ground_truth.yaml +77 -0
- package/core/dev/schemas/implements_spec.yaml +140 -0
- package/core/dev/scripts/CRASH_DIAGNOSIS.md +47 -0
- package/core/dev/scripts/README.md +142 -0
- package/core/dev/scripts/RUN_ONCE.bat +40 -0
- package/core/dev/scripts/START_DEV_AGENT.bat +63 -0
- package/core/dev/scripts/START_MULTI_AGENT.bat +80 -0
- package/core/dev/scripts/check-alaya-report-isolation.js +255 -0
- package/core/dev/scripts/check-file-size.js +268 -0
- package/core/dev/scripts/ci-feedback.js +251 -0
- package/core/dev/scripts/clean-verify-targets.js +132 -0
- package/core/dev/scripts/cleanup-queue.js +184 -0
- package/core/dev/scripts/cleanup_queue.js +86 -0
- package/core/dev/scripts/dev_agent_scheduler.ps1 +536 -0
- package/core/dev/scripts/dispatch-stats.js +384 -0
- package/core/dev/scripts/dispatch-stats.test.js +162 -0
- package/core/dev/scripts/gc-agent-worktrees.js +461 -0
- package/core/dev/scripts/gc-agent-worktrees.test.js +48 -0
- package/core/dev/scripts/hooks/README.md +148 -0
- package/core/dev/scripts/init_git.ps1 +396 -0
- package/core/dev/scripts/init_git.sh +337 -0
- package/core/dev/scripts/init_project.ps1 +851 -0
- package/core/dev/scripts/init_project.sh +477 -0
- package/core/dev/scripts/js-yaml-resolution.test.js +48 -0
- package/core/dev/scripts/kenaz-session.js +354 -0
- package/core/dev/scripts/kenaz-session.test.js +234 -0
- package/core/dev/scripts/legacy/README.md +39 -0
- package/core/dev/scripts/legacy/dev_agent_scheduler.ps1.bak +536 -0
- package/core/dev/scripts/legacy/multi_agent_scheduler.ps1.bak +1978 -0
- package/core/dev/scripts/matrix/CLI_README.md +214 -0
- package/core/dev/scripts/matrix/README.md +310 -0
- package/core/dev/scripts/matrix/package-lock.json +4266 -0
- package/core/dev/scripts/matrix/package.json +55 -0
- package/core/dev/scripts/matrix/src/abbreviations.ts +295 -0
- package/core/dev/scripts/matrix/src/cli/commands/convert.ts +211 -0
- package/core/dev/scripts/matrix/src/cli/commands/create.ts +95 -0
- package/core/dev/scripts/matrix/src/cli/commands/delete.ts +102 -0
- package/core/dev/scripts/matrix/src/cli/commands/list-tags.ts.wip +140 -0
- package/core/dev/scripts/matrix/src/cli/commands/manage-tags.ts.wip +173 -0
- package/core/dev/scripts/matrix/src/cli/commands/query.ts +261 -0
- package/core/dev/scripts/matrix/src/cli/commands/read.ts +77 -0
- package/core/dev/scripts/matrix/src/cli/commands/stats.ts.wip +168 -0
- package/core/dev/scripts/matrix/src/cli/commands/tokens.ts.wip +126 -0
- package/core/dev/scripts/matrix/src/cli/commands/update.ts +147 -0
- package/core/dev/scripts/matrix/src/cli/commands/validate.ts +275 -0
- package/core/dev/scripts/matrix/src/cli/index.ts +350 -0
- package/core/dev/scripts/matrix/src/cli/utils/file-handler.ts +72 -0
- package/core/dev/scripts/matrix/src/cli/utils/logger.ts +65 -0
- package/core/dev/scripts/matrix/src/index.ts +62 -0
- package/core/dev/scripts/matrix/src/indexer/tag-indexer.ts +165 -0
- package/core/dev/scripts/matrix/src/parser.ts +281 -0
- package/core/dev/scripts/matrix/src/serializer.ts +151 -0
- package/core/dev/scripts/matrix/src/validator.ts +301 -0
- package/core/dev/scripts/matrix/tests/abbreviations.test.ts +122 -0
- package/core/dev/scripts/matrix/tests/cli.test.ts +177 -0
- package/core/dev/scripts/matrix/tests/convert.test.ts +143 -0
- package/core/dev/scripts/matrix/tests/parser.test.ts +203 -0
- package/core/dev/scripts/matrix/tests/query.test.ts +85 -0
- package/core/dev/scripts/matrix/tests/serializer.test.ts +197 -0
- package/core/dev/scripts/matrix/tests/validate.test.ts +141 -0
- package/core/dev/scripts/matrix/tests/validator.test.ts +167 -0
- package/core/dev/scripts/matrix/tsconfig.json +20 -0
- package/core/dev/scripts/matrix/types/index.d.ts +111 -0
- package/core/dev/scripts/matrix/types/index.d.ts.map +1 -0
- package/core/dev/scripts/matrix/types/index.js +8 -0
- package/core/dev/scripts/matrix/types/index.js.map +1 -0
- package/core/dev/scripts/matrix/types/index.ts +124 -0
- package/core/dev/scripts/memory-guard-eval.js +330 -0
- package/core/dev/scripts/memory-usage-report.js +152 -0
- package/core/dev/scripts/migrate-task-dependencies.js +198 -0
- package/core/dev/scripts/multi_agent_scheduler.ps1 +2021 -0
- package/core/dev/scripts/multi_agent_scheduler.sh +1344 -0
- package/core/dev/scripts/probe/ansuz-scaffold-ablation.js +579 -0
- package/core/dev/scripts/probe/ansuz-scaffold-ablation.test.js +244 -0
- package/core/dev/scripts/probe/hippocampus-concurrency.js +247 -0
- package/core/dev/scripts/probe/hook-latency-probe.js +315 -0
- package/core/dev/scripts/probe/hook-latency-probe.test.js +105 -0
- package/core/dev/scripts/probe/prediction-signal-auc.js +483 -0
- package/core/dev/scripts/probe/prediction-signal-auc.test.js +200 -0
- package/core/dev/scripts/reset_tasks.js +99 -0
- package/core/dev/scripts/run-rust-tests.js +207 -0
- package/core/dev/scripts/run-rust-tests.test.js +154 -0
- package/core/dev/scripts/run_once.sh +47 -0
- package/core/dev/scripts/rust-verify-worktree.js +591 -0
- package/core/dev/scripts/rust-verify-worktree.test.js +574 -0
- package/core/dev/scripts/seh_probe.rs +26 -0
- package/core/dev/scripts/setup_mcp.ps1 +192 -0
- package/core/dev/scripts/setup_mcp.sh +159 -0
- package/core/dev/scripts/setup_rag.ps1 +304 -0
- package/core/dev/scripts/setup_rag.sh +230 -0
- package/core/dev/scripts/start_dev_agent.sh +137 -0
- package/core/dev/scripts/start_multi_agent.sh +41 -0
- package/core/dev/scripts/sync_task_queue.ps1 +505 -0
- package/core/dev/scripts/sync_task_queue.sh +392 -0
- package/core/dev/scripts/task1961/RUNBOOK.md +300 -0
- package/core/dev/scripts/task1961/fixtures/never-listens.server.js +54 -0
- package/core/dev/scripts/task1961/fixtures/slow-serve.server.js +134 -0
- package/core/dev/scripts/task1961/run-fixture.js +659 -0
- package/core/dev/scripts/task1961/selftest.js +247 -0
- package/core/dev/scripts/test-pty-ws-tunnel.js +229 -0
- package/core/dev/scripts/validate_pipeline.js +197 -0
- package/core/dev/scripts/verify-isbar-capture.js +100 -0
- package/core/dev/scripts/verify-target-dir.js +69 -0
- package/core/dev/scripts/verify-task-1839.js +141 -0
- package/core/dev/specs/agent-connect/PROTOCOL.md +177 -0
- package/core/dev/specs/agent-connect/SDK_GUIDE.md +915 -0
- package/core/dev/specs/agent-connect/examples/minimal-site/README.md +137 -0
- package/core/dev/specs/agent-connect/examples/minimal-site/package.json +12 -0
- package/core/dev/specs/agent-connect/examples/minimal-site/public/index.html +116 -0
- package/core/dev/specs/agent-connect/examples/minimal-site/public/install-redirect.js +73 -0
- package/core/dev/specs/agent-connect/examples/minimal-site/server.js +516 -0
- package/core/dev/specs/agent-connect/examples/minimal-site/test/smoke.test.mjs +263 -0
- package/core/dev/specs/agent-connect/history/DEFECT_REPORT_kenaz-agent-hub_2026-09-09_v0.4-empty-prompt-no-first-turn.md +77 -0
- package/core/dev/specs/agent-connect/history/DEFECT_REPORT_kenaz-agent-hub_2026-09-09_v0.4-prompt-mojibake.md +90 -0
- package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-07.md +61 -0
- package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-08_relay-v1-conformance.md +76 -0
- package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-09_v0.4-session-channel.md +87 -0
- package/core/dev/specs/agent-connect/history/FLOWPIX_REPLY_agent-hub_2026-09-08_relay-v1-answers.md +68 -0
- package/core/dev/specs/agent-connect/history/FLOWPIX_bridge_CONTRACT.md +642 -0
- package/core/dev/specs/agent-connect/history/FLOWPIX_spikes_relay_spike_relay.mjs +244 -0
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-07.md +77 -0
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_direction-change-v0.3.md +44 -0
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_relay-v1-answers-ack.md +37 -0
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_relay-v1-conformance.md +56 -0
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_annotations-install-coldstart.md +44 -0
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_empty-prompt-first-turn.md +56 -0
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_prompt-mojibake-fixed.md +48 -0
- package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_session-channel.md +57 -0
- package/core/dev/specs/agent-connect/history/PROTOCOL_v0.3_snapshot.md +379 -0
- package/core/dev/specs/agent-connect/history/README.md +47 -0
- package/core/dev/specs/peer/CODEX_INTERACTIVE_PUSH.md +65 -0
- package/core/dev/specs/peer/CODEX_PEER_PULL_SPIKE.md +54 -0
- package/core/dev/specs/peer/MODS_SPIKE.md +133 -0
- package/core/dev/specs/peer/PER_PROJECT_ADDRESSING.md +143 -0
- package/core/dev/specs/peer/SWARM_PROTOCOLS.md +256 -0
- package/core/dev/specs/peer/codex-hook-shim-peer.test.js +101 -0
- package/core/dev/specs/peer/codex-push-launcher.test.js +142 -0
- package/core/dev/specs/peer/setup-codex-hooks.test.js +22 -0
- package/core/dev/specs/peer-ansuz/DELIVERY_SPIKE.md +397 -0
- package/core/dev/specs/peer-ansuz/DESIGN.md +109 -0
- package/core/dev/specs/peer-ansuz/spike/claude_poke.js +129 -0
- package/core/dev/specs/peer-ansuz/spike/claude_session_start_hook.js +37 -0
- package/core/dev/specs/peer-ansuz/spike/claude_settings_hook.json +14 -0
- package/core/dev/specs/peer-ansuz/spike/codex_appserver_client.js +105 -0
- package/core/dev/specs/peer-ansuz/spike/codex_appserver_query.js +29 -0
- package/core/dev/specs/peer-ansuz/spike/extract_timeline.js +26 -0
- package/core/dev/specs/synapse/SYMBOL_IDENTITY.md +305 -0
- package/core/dev/spikes/A4-cypher-varlen.md +176 -0
- package/core/dev/spikes/bloat-rounds.sh +25 -0
- package/core/dev/spikes/mods/clean-claude.js +9 -0
- package/core/dev/spikes/mods/drive-probe.js +29 -0
- package/core/dev/spikes/mods/e2e-peer.js +71 -0
- package/core/dev/spikes/mods/evidence/e2e-peer-control.json +17 -0
- package/core/dev/spikes/mods/evidence/e2e-peer-mod.json +17 -0
- package/core/dev/spikes/mods/evidence/probe-006a6e65-d807-4bc1-b648-fd7d1edfe0b4.jsonl +4 -0
- package/core/dev/spikes/mods/evidence/probe-cebdf1f7-f9c4-47a8-83cd-7c0786177404.jsonl +12 -0
- package/core/dev/spikes/mods/evidence/probe-eb21147d-10ce-4c32-93ed-37ca37d88d5a.jsonl +11 -0
- package/core/dev/spikes/mods/evidence/stream-cebdf1f7.jsonl +18 -0
- package/core/dev/spikes/mods/kenaz-mod-probe/.claude-plugin/plugin.json +1 -0
- package/core/dev/spikes/mods/kenaz-mod-probe/hooks/hooks.json +1 -0
- package/core/dev/spikes/mods/kenaz-mod-probe/hooks/register.ts +65 -0
- package/core/dev/spikes/mods/kenaz-mod-probe/tsconfig.json +3 -0
- package/core/k-cli/README.md +423 -0
- package/core/k-cli/package.json +21 -0
- package/core/k-cli/templates/k-cli.md +91 -0
- package/core/k-cli/test/TEST_SPEC.md +134 -0
- package/core/k-cli/test/run.sh +469 -0
- package/core/plugins/kenaz/.claude-plugin/plugin.json +1 -0
- package/core/plugins/kenaz/.mcp.json +5 -0
- package/core/plugins/kenaz/INVENTORY.md +48 -0
- package/core/plugins/kenaz/README.md +55 -0
- package/core/plugins/kenaz/commands/Amelia.md +5 -0
- package/core/plugins/kenaz/commands/Ansuz.md +38 -0
- package/core/plugins/kenaz/commands/architect.md +24 -0
- package/core/plugins/kenaz/commands/incident.md +15 -0
- package/core/plugins/kenaz/commands/kenaz.md +12 -0
- package/core/plugins/kenaz/commands/review.md +14 -0
- package/core/plugins/kenaz/commands/security.md +15 -0
- package/core/plugins/kenaz/commands/spec.md +22 -0
- package/core/plugins/kenaz/commands/strategy.md +141 -0
- package/core/plugins/kenaz/commands//347/224/242/345/223/201.md +15 -0
- package/core/plugins/kenaz/commands//350/250/255/350/250/210.md +14 -0
- package/core/plugins/kenaz/commands//350/251/225/344/274/260.md +16 -0
- package/core/plugins/kenaz/guidance.md +5 -0
- package/core/plugins/kenaz/hooks/core-resolve.js +230 -0
- package/core/plugins/kenaz/hooks/hooks.json +31 -0
- package/core/plugins/kenaz/hooks/kenaz-hook.js +112 -0
- package/core/plugins/kenaz/hooks/mode.js +39 -0
- package/core/plugins/kenaz/scripts/kenaz-mode.js +46 -0
- package/core/plugins/kenaz/scripts/kenaz.test.js +123 -0
- package/core/plugins/kenaz/scripts/sync.js +45 -0
- package/core/plugins/kenaz/scripts/ygg.js +157 -0
- package/core/plugins/kenaz/skills/adapt/SKILL.md +199 -0
- package/core/plugins/kenaz/skills/animate/SKILL.md +190 -0
- package/core/plugins/kenaz/skills/architect_agent/SKILL.md +408 -0
- package/core/plugins/kenaz/skills/assessment_agent/SKILL.md +289 -0
- package/core/plugins/kenaz/skills/audit/SKILL.md +129 -0
- package/core/plugins/kenaz/skills/backend_agent/SKILL.md +407 -0
- package/core/plugins/kenaz/skills/backend_engineer/SKILL.md +788 -0
- package/core/plugins/kenaz/skills/bolder/SKILL.md +132 -0
- package/core/plugins/kenaz/skills/clarify/SKILL.md +180 -0
- package/core/plugins/kenaz/skills/code_reviewer/SKILL.md +305 -0
- package/core/plugins/kenaz/skills/code_reviewer/patterns.yaml +85 -0
- package/core/plugins/kenaz/skills/colorize/SKILL.md +158 -0
- package/core/plugins/kenaz/skills/critique/SKILL.md +118 -0
- package/core/plugins/kenaz/skills/delight/SKILL.md +317 -0
- package/core/plugins/kenaz/skills/designer/SKILL.md +845 -0
- package/core/plugins/kenaz/skills/dev_agent/SKILL.md +503 -0
- package/core/plugins/kenaz/skills/developer/SKILL.md +792 -0
- package/core/plugins/kenaz/skills/distill/SKILL.md +137 -0
- package/core/plugins/kenaz/skills/extract/SKILL.md +95 -0
- package/core/plugins/kenaz/skills/feature_agent/SKILL.md +303 -0
- package/core/plugins/kenaz/skills/frontend-design/SKILL.md +127 -0
- package/core/plugins/kenaz/skills/frontend-design/reference/color-and-contrast.md +132 -0
- package/core/plugins/kenaz/skills/frontend-design/reference/interaction-design.md +123 -0
- package/core/plugins/kenaz/skills/frontend-design/reference/motion-design.md +99 -0
- package/core/plugins/kenaz/skills/frontend-design/reference/responsive-design.md +114 -0
- package/core/plugins/kenaz/skills/frontend-design/reference/spatial-design.md +100 -0
- package/core/plugins/kenaz/skills/frontend-design/reference/typography.md +131 -0
- package/core/plugins/kenaz/skills/frontend-design/reference/ux-writing.md +107 -0
- package/core/plugins/kenaz/skills/frontend_agent/SKILL.md +327 -0
- package/core/plugins/kenaz/skills/harden/SKILL.md +358 -0
- package/core/plugins/kenaz/skills/incident_response/SKILL.md +315 -0
- package/core/plugins/kenaz/skills/normalize/SKILL.md +67 -0
- package/core/plugins/kenaz/skills/onboard/SKILL.md +243 -0
- package/core/plugins/kenaz/skills/optimize/SKILL.md +269 -0
- package/core/plugins/kenaz/skills/polish/SKILL.md +202 -0
- package/core/plugins/kenaz/skills/product_manager/SKILL.md +1091 -0
- package/core/plugins/kenaz/skills/qa_engineer/SKILL.md +1269 -0
- package/core/plugins/kenaz/skills/quieter/SKILL.md +118 -0
- package/core/plugins/kenaz/skills/security_agent/SKILL.md +312 -0
- package/core/plugins/kenaz/skills/spec_optimizer/SKILL.md +299 -0
- package/core/plugins/kenaz/skills/sre_agent/SKILL.md +1347 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/SKILL.md +377 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/charts.csv +26 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/colors.csv +97 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/icons.csv +101 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/landing.csv +31 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/products.csv +97 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/styles.csv +68 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/typography.csv +58 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/scripts/core.py +253 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/scripts/design_system.py +1067 -0
- package/core/plugins/kenaz/skills/ui-ux-pro-max/scripts/search.py +106 -0
- package/core/plugins/kenaz-peer/.claude-plugin/plugin.json +1 -0
- package/core/plugins/kenaz-peer/hooks/hooks.json +1 -0
- package/core/plugins/kenaz-peer/hooks/register.test.ts +62 -0
- package/core/plugins/kenaz-peer/hooks/register.ts +146 -0
- package/core/plugins/kenaz-peer/tsconfig.json +3 -0
- package/lib/cli.js +251 -0
- package/lib/cli.test.js +59 -0
- package/lib/dashboard.js +80 -0
- package/lib/dashboard.test.js +59 -0
- package/package.json +28 -4
- package/vendor/install-kenaz-cli.js +268 -0
- package/README.md +0 -3
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Rune: emberAutonomousDispatch Gate in huginn-loop
|
|
2
|
+
|
|
3
|
+
**type**: decision
|
|
4
|
+
**confidence**: 0.9
|
|
5
|
+
**symbols**: `.formation/tools/loop.js:buildAnsuzPrompt`, `.kenaz/dashboard-models.json:emberAutonomousDispatch`
|
|
6
|
+
|
|
7
|
+
## Insight
|
|
8
|
+
|
|
9
|
+
`loop.js` checks `dashboard-models.json.emberAutonomousDispatch` before including dispatch instructions in the Ansuz prompt.
|
|
10
|
+
|
|
11
|
+
- `emberAutonomousDispatch = true` → Ansuz creates tasks AND dispatches them + monitors completion (original behavior)
|
|
12
|
+
- `emberAutonomousDispatch = false` (current default) → Ansuz creates tasks in **backlog only**, no dispatch, exits immediately
|
|
13
|
+
|
|
14
|
+
## Why This Matters
|
|
15
|
+
|
|
16
|
+
An agent observing the huginn-loop and seeing no dispatch happen will be confused — the prompt code looks like it should dispatch. The gate is invisible unless you read `dashboard-models.json`. This was introduced intentionally to let users manually review tasks before dispatch (safety valve for autonomous mode).
|
|
17
|
+
|
|
18
|
+
## When It Applies
|
|
19
|
+
|
|
20
|
+
Any session interpreting huginn-loop behavior or debugging why tasks are landing in backlog instead of being dispatched. Check `emberAutonomousDispatch` in `dashboard-models.json` first.
|
|
21
|
+
|
|
22
|
+
## Date
|
|
23
|
+
|
|
24
|
+
2026-05-22 (Auto-Loop iteration 6 observation)
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: insight
|
|
3
|
+
name: post_dispatch_verification_gate
|
|
4
|
+
symbol_id: ansuz.rs::PostDispatchValidation
|
|
5
|
+
confidence: 0.78
|
|
6
|
+
author: agent:Muninn
|
|
7
|
+
created: 2026-05-21T12:06:57.531Z
|
|
8
|
+
related_symbols: [ansuz.rs::DispatchWorkflow, task_api.js::merge_process]
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Post-Dispatch Verification Pattern: Branch Containment Check
|
|
12
|
+
|
|
13
|
+
**Operational Insight**: After dispatching a subagent to a worktree, Ansuz does NOT immediately review code changes. Instead, it first runs `git branch --contains <commit>` to verify the commit actually reached the target branch.
|
|
14
|
+
|
|
15
|
+
**Why This Matters**:
|
|
16
|
+
- Silent merge failures in post-complete handlers can leave commits orphaned (on worktree branch, never merged to main)
|
|
17
|
+
- Code review of a "missing" commit wastes time and may miss the actual failure mode
|
|
18
|
+
- Branch containment check is a fast gate that filters for this failure class before expensive diff review
|
|
19
|
+
|
|
20
|
+
**Pattern Observed** (from snapshot #8):
|
|
21
|
+
```
|
|
22
|
+
1. Subagent completes (worktree isolation)
|
|
23
|
+
2. Ansuz queries: git log --all --oneline --grep=<topic>
|
|
24
|
+
3. Ansuz finds commit hash (e.g., 3803e05d)
|
|
25
|
+
4. Ansuz verifies: git branch --contains 3803e05d
|
|
26
|
+
5. ONLY IF commit is on xyz951610: proceed to git diff review
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
**Related Failure**: This pattern was likely formalized after [[post_complete_merge_stuck_states]] (task merge discrepancy incidents in snapshots #13).
|
|
30
|
+
|
|
31
|
+
**Recommendation**: Encode this as a pre-commit gate in task-api.complete() — always verify branch containment before signing off on merge=true.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: surprise_proxy_prediction_accuracy_mismatch
|
|
3
|
+
description: Surprise score uses recency proxy instead of actual prediction accuracy from curiosity engine
|
|
4
|
+
metadata:
|
|
5
|
+
type: risk
|
|
6
|
+
confidence: 0.79
|
|
7
|
+
author: agent:Muninn
|
|
8
|
+
session_id: ansuz-prompt-1779233477147
|
|
9
|
+
symbol_id: dashboard/src-tauri/src/features/synapse/efe.rs:surprise_score:function
|
|
10
|
+
timestamp: 2026-05-20T00:02:15Z
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
**Hidden constraint**: EFE Surprise component (in `efe.rs` line 1001) uses **recency** as a proxy for `(1 - prediction_accuracy)`, treating recently-modified symbols as "surprising" under the assumption they're harder to predict.
|
|
14
|
+
|
|
15
|
+
**Problem**: This is a weak proxy. The curiosity engine already computes actual **prediction accuracy** (probability that the next symbol to change matches expectations), but the Surprise score ignores it in favor of a time-decay heuristic.
|
|
16
|
+
|
|
17
|
+
**Better approach**: Leverage the co-change model's **prediction accuracy** (already computed in `curiosity.rs`) as a direct measure of surprise. Symbols where the model's prediction failed (low accuracy) are genuinely surprising; symbols that are merely recent might be deterministic and boring.
|
|
18
|
+
|
|
19
|
+
**Trade-off**:
|
|
20
|
+
- Current (recency proxy): Simple, O(1) lookup, but misses actual information value
|
|
21
|
+
- Proposed (prediction accuracy): More accurate, requires cross-module dependency on curiosity engine state
|
|
22
|
+
|
|
23
|
+
**Related components**:
|
|
24
|
+
- `dashboard/src-tauri/src/features/synapse/efe.rs:surprise_score()` (current implementation)
|
|
25
|
+
- `dashboard/src-tauri/src/features/synapse/curiosity.rs` (prediction accuracy source)
|
|
26
|
+
- `dashboard/src-tauri/src/features/synapse/co_change.rs` (co-change model backing)
|
|
27
|
+
|
|
28
|
+
**Risk mitigation**: Cache prediction accuracy in Preamble or use incremental computation to avoid latency spike.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: pattern
|
|
3
|
+
name: worktree_isolated_dispatch_workflow
|
|
4
|
+
symbol_id: ansuz.rs::DispatchWorkflow
|
|
5
|
+
confidence: 0.72
|
|
6
|
+
author: agent:Muninn
|
|
7
|
+
created: 2026-05-21T12:06:57.531Z
|
|
8
|
+
related_symbols: [formation_lead.rs, task_api.js::create, agent.rs::isolation]
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Worktree-Isolated Dispatch Pattern for Multi-Agent Execution
|
|
12
|
+
|
|
13
|
+
**Pattern Identified**: Ansuz uses a consistent workflow for dispatching complex tasks to subagents while maintaining code safety and verification:
|
|
14
|
+
|
|
15
|
+
1. **Task Activation**: Move task to "active" status via kenaz_task_update (task ID published, scope locked)
|
|
16
|
+
2. **Dispatch Setup**: Create wrapper task containing full implementation prompt, model constraints, and scope
|
|
17
|
+
3. **Worktree Isolation**: Launch subagent with `isolation=worktree` flag (creates isolated git worktree branch)
|
|
18
|
+
4. **Subagent Execution**: Agent works independently, makes commits to worktree branch
|
|
19
|
+
5. **Post-Dispatch Verification**:
|
|
20
|
+
- Check if commit reached target branch (`git branch --contains`)
|
|
21
|
+
- Diff review only after branch verification passes
|
|
22
|
+
- Validate against codebase rules
|
|
23
|
+
|
|
24
|
+
**Benefits**:
|
|
25
|
+
- Worktree isolation prevents filesystem conflicts when multiple agents touch same files
|
|
26
|
+
- Clear separation between subagent's work (worktree) and main branch state
|
|
27
|
+
- Verification gate catches merge failures before code review
|
|
28
|
+
|
|
29
|
+
**Related**: This pattern successfully unblocked TASK_1446 (VarFlow) and TASK_1466 (Yggdrasil identity), both complex multi-file changes. See snapshot #7 for initial dispatch, snapshot #8 for post-dispatch verification.
|
|
30
|
+
|
|
31
|
+
**Constraint**: Subagent MUST explicitly commit changes; worktree cleanup deletes uncommitted edits. See [[feedback_worktree_must_commit]].
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: yaml_filter_propagation_desync
|
|
3
|
+
description: YAML filter applied in efe.rs but missing from preamble.rs, causing concept-card pollution in DDx
|
|
4
|
+
metadata:
|
|
5
|
+
type: fix
|
|
6
|
+
confidence: 0.82
|
|
7
|
+
author: agent:Muninn
|
|
8
|
+
session_id: ansuz-prompt-1779233477147
|
|
9
|
+
related_commit: e86f9543
|
|
10
|
+
timestamp: 2026-05-20T00:02:14Z
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
**Root cause**: Commit e86f9543 added `is_yaml_candidate()` filter to `efe.rs` to prevent YAML concept-card keys from polluting EFE scoring, but the same filter was **not propagated** to `preamble.rs::build_ddx_section()`, which still includes YAML keys in DDx warnings.
|
|
14
|
+
|
|
15
|
+
**Symptom**: DDx output contains spurious YAML concept-card warnings (keys like `schema:ansuz_rules:yaml`) mixed with legitimate code symbols.
|
|
16
|
+
|
|
17
|
+
**Fix**: Apply stable_id substring match to both modules:
|
|
18
|
+
- Check if `stable_id` contains `.yaml:` or `.yml:` pattern
|
|
19
|
+
- Skip such entries in both `efe.rs` score calculation AND `preamble.rs` DDx section building
|
|
20
|
+
- ~5 LOC change (string matching on `stable_id` format `{file_path}:{name}:{kind}`)
|
|
21
|
+
|
|
22
|
+
**Symbol boundaries**:
|
|
23
|
+
- `dashboard/src-tauri/src/features/synapse/efe.rs:is_yaml_candidate()` (source of truth)
|
|
24
|
+
- `dashboard/src-tauri/src/features/synapse/preamble.rs:build_ddx_section()` (needs patch)
|
|
25
|
+
|
|
26
|
+
**Verification**: Post-fix, DDx output should exclude all YAML-sourced keys.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: decision
|
|
3
|
+
name: yggdrasil_project_identity_git_remote
|
|
4
|
+
symbol_id: yggdrasil.rs::ProjectIdentity
|
|
5
|
+
confidence: 0.85
|
|
6
|
+
author: agent:Muninn
|
|
7
|
+
created: 2026-05-21T12:06:57.531Z
|
|
8
|
+
related_symbols: [yggdrasil.rs, relay_protocol, project_scoping]
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Yggdrasil Project Identity Design Decision
|
|
12
|
+
|
|
13
|
+
**Decision**: Yggdrasil relay scopes rooms, nodes, and tasks by **git remote URL** instead of folder name for project identity.
|
|
14
|
+
|
|
15
|
+
**Why**:
|
|
16
|
+
- Folder names are local filesystem artifacts; they differ across machines and can be renamed without changing the actual project
|
|
17
|
+
- Git remote URL is a stable, globally unique identifier for the actual repository
|
|
18
|
+
- Decouples project identity from local environment, enabling true multi-machine collaboration
|
|
19
|
+
|
|
20
|
+
**Implementation**: Commit 3803e05d on xyz951610 refactored yggdrasil.rs to extract and use git remote URL from environment or configuration instead of deriving identity from `std::env::current_dir()`.
|
|
21
|
+
|
|
22
|
+
**Implication**: This enables Yggdrasil relay to maintain consistent project scope across desktop client ↔ relay server ↔ multiple CI/agent workers, all with different folder structures.
|
|
23
|
+
|
|
24
|
+
**Test Coverage**: TASK_1466 includes Settings UI changes to allow users to configure project identity source (should default to git remote, with fallback option).
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"task_id": "TASK_1599",
|
|
3
|
+
"session_date": "2026-06-11",
|
|
4
|
+
"progress": [
|
|
5
|
+
{
|
|
6
|
+
"phase": "P1 - task-api.js create command patch",
|
|
7
|
+
"status": "DONE",
|
|
8
|
+
"notes": "Added --args-file transport to create command. camelCase+snake_case dual key resolution via fromFile(). CLI flags override file values. Validation (quality gate, error on missing/invalid file) preserved."
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"phase": "P2 - task-api.js update command patch",
|
|
12
|
+
"status": "DONE",
|
|
13
|
+
"notes": "Added --args-file transport to update command with same pattern. updateFileData/fromUpdateFile resolver. All existing update fields supported via file transport."
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"phase": "P3 - kenaz.rs tool_task_create rewrite",
|
|
17
|
+
"status": "DONE",
|
|
18
|
+
"notes": "Replaced argv vector build with JSON temp file approach. TmpFileGuard Drop struct guarantees cleanup on all exit paths. serde_json::json! macro builds payload from MCP args. Unique temp file: pid + subsec_nanos."
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"phase": "P4 - node --check verification",
|
|
22
|
+
"status": "DONE",
|
|
23
|
+
"notes": "task-api.js syntax OK after both patches."
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"phase": "P5 - functional test 60KB CJK+emoji",
|
|
27
|
+
"status": "DONE",
|
|
28
|
+
"notes": "Created task via --args-file with 61KB payload (22K chars), CJK/emoji/arrows all preserved in YAML. No mojibake. No BOM."
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"phase": "P6 - regression test normal CLI flags",
|
|
32
|
+
"status": "DONE",
|
|
33
|
+
"notes": "Normal flag-based create still works. Quality gate fires correctly."
|
|
34
|
+
}
|
|
35
|
+
],
|
|
36
|
+
"cargo_check": "DEFERRED (onnxruntime.dll lock when dashboard running -- proven constraint documented in ADDENDA)",
|
|
37
|
+
"files_modified": [
|
|
38
|
+
".collaboration/core/task-api.js",
|
|
39
|
+
"dashboard/src-tauri/src/infrastructure/http_server/routes/mcp_tools/kenaz.rs"
|
|
40
|
+
]
|
|
41
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
probe-initial-content
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "驗收訊號鏈六層全部靜默回報通過:runtime verdict 寫進沒人讀的欄位、fix 卡的 FAIL 產不出 FIX 卡、LLM verifier 逾時直接回報 pass",
|
|
3
|
+
"description": "本卡於 2026-07-27 由 Ansuz 依實測改寫。原描述的方向(把 post-complete step 1.5 的 VERIFICATION_FAILED 接上完成關卡)已被測量否定,改寫理由完整保留在 technical_notes,因為那個誤讀本身有教育價值。\n\n【原描述說對的部分,已逐行複查屬實】\n- post-complete.js:2296 的完成判斷只看 isVerifiedMergeSuccess(result.git),完全不參考任何驗收結果\n- post-complete.js:2144 的註解明文寫著 VERIFICATION_FAILED 不擋 merge\n- post-complete.js:2469 的安全網條件是 isVerifiedMergeSuccess(result.git) && !result.taskCompleted,不要求 complete() 曾被嘗試\n\n【原描述沒看到的部分:驗收有兩套實作,原描述指的是沒有作用的那一套】\n(A) .formation/tools/verify-acceptance.js(565 行)— 由 post-complete/git-merge.js:945 在 gitBranchAndMerge 內部呼叫。spawn headless Haiku 讀 git diff 判斷散文條件,結果寫入 result.git.acceptance,被 post-complete.js:2298(寫進 task notes)與 3622(完成摘要)讀取。只在「找不到卡」或「沒有 acceptance_criteria」時 skip,實際覆蓋 1538/1720 張卡。\n(B) .formation/tools/post-complete/verify-acceptance.js(486 行)— 由 post-complete.js:2133 呼叫,HTTP 打 Rust backend :18080。結果寫入 result.acceptanceRuntime,而該欄位在全檔案只有這一個引用,寫入後再也沒有人讀。原描述要改的 VERIFICATION_FAILED 屬於這一套。\n\n【測量結果,判定式照 isToolCallShaped 原樣重寫】\n- 1720 張卡、1538 張有 acceptance_criteria、6713 條條件,其中工具形狀者 7 條(0.10%),涵蓋 7 張卡\n- 控制組(放寬成整份檔案任何位置提到 4 個已知工具名的上界):60/1720 = 3.5%\n- 因此 (B) 的 verdict 在 99.5% 以上的情況必定是 SKIP。把它接上關卡等於做一道永遠不會觸發的閘門。\n- 進一步:全 repo grep acceptance_verdict 在 .kenaz/tasks/ 命中 0 筆,代表 (B) 的 writeVerdictToTask 從未成功寫入過任何一張卡——四個 SKIP early-return(388/393/399/432)都在它之前返回。這套驗證器至今對系統的淨影響是零。\n\n【本卡要修的:整條驗收訊號鏈的每一個降級路徑都回報通過】\n1. verify-acceptance.js:449 — spawn 逾時(120s)直接 return { pass: true, error: 'timeout' }。逾時被當成通過。\n2. verify-acceptance.js:457 — 失敗處理的條件是 !verifyResult.pass && !verifyResult.error,所以只要解析出錯就同時跳過 FIX 卡建立與 saveReport,整個失敗完全不留痕跡。\n3. verify-acceptance.js:462-465 — 原卡若帶 fix tag 則 fixSkipped=true,不建立 FIX 卡。全 repo 517/1720(30.1%)的卡帶 fix tag,而這正是最常驗收失敗的族群。失敗的唯一產物是一行 log 與一則 note。\n4. post-complete.js:2134 — result.acceptanceRuntime 寫入後無人讀取,完成摘要 3622 只印 result.git.acceptance。\n5. 對照:.formation/reports/verify/ 至今只有 16 份失敗報告,而終態卡片約 1686 張。\n\n【已決定的事,不要重新決策】\ndone/ 的語義維持「程式碼已合併」,本卡不改變它。理由有二:其一,post-complete.js:2291-2295 的註解記載這個設計曾經是反過來的(AC 失敗擋住完成),因為造成 active/ 卡片堆積而被刻意反轉;其二,(A) 的 FAIL 是一個 Haiku 讀 diff 的判斷,把 done/ 的生死交給它,正是本卡技術註記所禁止的「拿另一個自我宣告當獨立證據」。\n\n本卡的目標因此是:讓驗收失敗停止靜默——失敗必須可見、必須有歸宿、降級路徑不得偽裝成通過。不是加關卡。",
|
|
4
|
+
"priority": "P2",
|
|
5
|
+
"rigor": "high",
|
|
6
|
+
"complexity": "medium",
|
|
7
|
+
"tags": ["fix", "code", "post-complete", "verification", "silent-failure"],
|
|
8
|
+
"scope_paths": [
|
|
9
|
+
".formation/tools/verify-acceptance.js",
|
|
10
|
+
".formation/tools/post-complete.js",
|
|
11
|
+
".formation/tools/post-complete/verify-acceptance.js",
|
|
12
|
+
".formation/tools/post-complete/git-merge.js"
|
|
13
|
+
],
|
|
14
|
+
"requirements": [
|
|
15
|
+
"非目標,且必須主動維持:不得改變 done/ 的語義。驗收失敗但 merge 成功的卡片仍然進 done/。任何讓卡片因驗收失敗而停在 active/ 或 blocked/ 的改動都超出本卡範圍,會重演 post-complete.js:2291-2295 記載的 pile-up。",
|
|
16
|
+
"verify-acceptance.js:449 的逾時路徑不得回報 pass:true。逾時是「沒有測到」,必須與「測到且通過」在回傳值上可區分,且該區分要一路傳到完成摘要。",
|
|
17
|
+
"verify-acceptance.js:457 的 error 路徑不得同時吞掉 saveReport。解析失敗或 spawn 失敗至少要留下一份報告或一則 note,讓事後可稽核。",
|
|
18
|
+
"verify-acceptance.js:462-465 的 fix-tag 迴圈防護必須保留(不要改成無條件建 FIX 卡,那會產生無限鏈),但失敗必須有替代歸宿:在原卡上留下明確可查詢的失敗標記(notes 或 vitals),使「這張卡驗收沒過但仍進了 done/」可以被一條查詢列出來。歸宿形式自行設計,但必須可被 grep 或 task-api 查到。",
|
|
19
|
+
"result.acceptanceRuntime 必須二選一,不得留第三種模糊狀態:要嘛接上(至少進完成摘要,與 result.git.acceptance 同級待遇),要嘛連同 post-complete.js:2133 的呼叫一起移除。選擇的理由寫進 commit message。考量點:測量顯示它至今從未寫成過一筆 acceptance_verdict。",
|
|
20
|
+
"post-complete.js:2469 的安全網本卡不改行為,但必須在原地補上註解說明其不變量:它不要求 complete() 曾被嘗試,因此任何未來想用「不設 taskCompleted」來擋住卡片的關卡都會被它繞過。這是給下一個人的路標,不是本卡的行為改動。",
|
|
21
|
+
"post-complete.js 標頭約 40-60 行的 step 說明表必須與改動後的實際行為一致。"
|
|
22
|
+
],
|
|
23
|
+
"acceptance_criteria": [
|
|
24
|
+
"驗證一律在拋棄式 repo 或完整快照後進行,不得拿使用者的真實任務卡做第一次實驗;報告中須註明使用的驗證環境",
|
|
25
|
+
"以一張刻意讓驗收失敗、且 tags 含 fix 的測試卡實跑 post-complete:卡片仍進 done/(語義未變),且失敗標記可被實際查詢列出——附上查詢指令與其輸出",
|
|
26
|
+
"以一張刻意讓驗收失敗、tags 不含 fix 的測試卡實跑:仍建立 FIX 卡,行為與修改前一致,以實跑輸出為證",
|
|
27
|
+
"以一張驗收會通過的卡實跑:行為與修改前一致,以實跑輸出為證",
|
|
28
|
+
"逾時路徑實跑驗證:以縮短 timeout 或 stub spawn 觸發,回傳值與完成摘要皆不得呈現為通過,附實跑輸出",
|
|
29
|
+
"result.acceptanceRuntime 的處置以證據收尾:若接上,附一張工具形狀驗收卡的實跑摘要輸出;若移除,附 grep -rn acceptanceRuntime .formation/ 命中 0 的輸出",
|
|
30
|
+
"Rust backend 離線時整條 post-complete 不得卡死或報錯中斷,以實跑輸出為證",
|
|
31
|
+
"post-complete 相關測試全綠:post-complete 27/27、task1536 7/7、task1543 4/4、worktree-rescue 3/3。node:test 格式印的是「ℹ pass N」不是「# pass N」,請讀 N 的數字,不要只讀 exit code",
|
|
32
|
+
"標頭 step 說明表與實際行為一致"
|
|
33
|
+
],
|
|
34
|
+
"technical_notes": [
|
|
35
|
+
"改寫紀錄(保留誤讀以資借鑑):原卡假設 post-complete step 1.5 的 VERIFICATION_FAILED 是該接上關卡的訊號。實測否定——isToolCallShaped 要求 criterion 字面包含 hippocampus_episode_recall / synapse_knowledge_gaps / synapse_health_metrics / synapse_health 其一且含斷言運算子,6713 條驗收條件命中 7 條。原卡自己的驗收條件(「post-complete 27/27」「以實跑輸出為證」)全是 shell 形狀,會被自己的機制 SKIP 掉。",
|
|
36
|
+
"兩套 verify-acceptance 同名但不是重複實作,不要合併:.formation/tools/verify-acceptance.js 是 LLM 判斷(廣覆蓋,被讀取),.formation/tools/post-complete/verify-acceptance.js 是 MCP 工具呼叫(0.10% 覆蓋,不被讀取)。git-merge.js:14 require 的是前者。",
|
|
37
|
+
"post-complete.js:2298 讀的是 result.git.acceptance(前者的產物),不是 2134 寫入的 result.acceptanceRuntime(後者的產物)。這兩個名字近似的欄位是本卡最容易改錯地方。",
|
|
38
|
+
"post-complete.js:2291-2295 的註解記載此設計曾被反轉過一次,原因是 active/ 堆積。不要再反轉回去。",
|
|
39
|
+
"TASK_1536 的 reconciliation(約 2395-2465)已經負責「done/ 但 merge 未落地」的回收。本卡的失敗標記不得與它互相拉扯,特別是不要也去搬動卡片狀態。",
|
|
40
|
+
"feedback_post_complete_false_positive_merge:merged=true 曾經說謊。設計失敗標記時不要把另一個自我宣告當成獨立證據。",
|
|
41
|
+
"本卡屬於 Huginn 那則被反覆驗證的 advisory「silent success across 6+ subsystems」的具體實例:這條鏈上每一個降級路徑都回報通過,沒有任何一個會崩或報錯。"
|
|
42
|
+
]
|
|
43
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "GC 無法判定「工作是否已落地」:合併流程不留痕跡,推論法已證偽,21 個 worktree 裡 19 個乾淨卻永不回收",
|
|
3
|
+
"description": "本卡於 2026-07-27 第二次改寫(第一次是同日修正「13 個裡有 7 個」的錯誤量測)。改寫依據是主線程對現況的完整重新量測,原始範圍陳述已作廢。\n\n【現況實測】\nGC 看得到的 worktree 共 21 個:.kenaz-worktrees/KenazAI 13 個、.formation/worktrees 8 個。分類如下:\n- clean 但 UNMERGED:19 個 —— 這才是絕大多數。它們沒有任何髒檔,純粹因為分支 tip 不是 HEAD 的祖先而被保留\n- merged 且各有 1 個髒檔:2 個 —— 這是本卡原本唯一涵蓋的族群\n\n磁碟:.formation/worktrees 2.0 GB + .kenaz-worktrees 970 MB = 約 3.0 GB(另有第三家族見下)。\n\n【推論法已被證偽,這是本卡的核心】\n主線程在 2026-07-27 親手以 file-scoped checkout 合併了 ansuz-wt-68ed9c57-12936(TASK_1825),逐檔比對確認內容與 main 完全一致,並跑過四套測試。即便如此:\n- git cherry main ansuz-wt-68ed9c57-12936 仍判定它有 1 個 commit 在 main 找不到等價 patch\n- 它的分支 tip 也不是 HEAD 的祖先\n這是一個已知答案的控制組:工作確實落地了,而兩種推論法都答錯。原因是 file-scoped checkout 加另開新 commit 會產生不同的 parent 脈絡,patch-id 因此不同;ancestry 更是從一開始就不成立。\n\n結論:GC 不可能靠 ancestry 或 patch 等價去推論「工作是否已落地」。這不是實作沒寫好,是資訊在合併當下就沒有被保存下來。\n\n【本卡的方向:不推論,由落地的人記錄】\n合併成功的那一刻,執行合併者知道事實。讓它寫下來,GC 只負責讀。這同時解掉 19 個既有目錄與未來的持續累積,而不需要任何啟發式猜測。\n\n必須覆蓋兩條合併路徑,只做一條等於沒做:\n(a) 自動路徑:post-complete/git-merge.js 的 gitBranchAndMerge 合併成功後\n(b) 人工路徑:Ansuz 主線程的 file-scoped checkout 合併(目前沒有任何程式碼,是主線程手動操作)—— 因此必須提供一個可被人工呼叫的子指令或 CLI\n\n【次要範圍:daemon 髒檔辨識】\n那 2 個 merged 但被髒檔卡住的 worktree 仍要處理,但實測推翻了原本的分類假設:\n\n| worktree | 唯一髒檔 | git status | 性質 |\n|---|---|---|---|\n| wt-595952d1-22448 | .kenaz/specialist/ansuz_project_pins.json | ?? 未追蹤 | daemon 狀態,可再生 |\n| wt-cfc76e4c-70088 | .formation/TASK_1739_HANDOFF.md | ?? 未追蹤 | agent 產出的 handoff 文件,不是 daemon 掉落物 |\n\n原卡把第二個描述成「單一 daemon 狀態檔」,實測不成立。兩者都是未追蹤檔,所以「已追蹤原始碼才算真實工作」這條二分法對這兩個標本都不適用 —— 真正需要的是在未追蹤檔之內做出區別。\n\n【明確排除在本卡之外】\n第三個 worktree 家族 .claude/worktrees/agent-*:21 個目錄、1.7 GB、git 有註冊,但 GC 的兩個 base dir 都不包含它,因此完全在視野外。實測其 mtime 全部落在 2026-07-24 至 07-25、26 小時以上未動,且昨日整場 dispatch 完全沒有新增 —— TASK_1586 的 redirect hook 已經堵住源頭。這是凍結的歷史遺留,屬一次性稽核清理,不是 GC 設計問題。本卡不得把 GC 擴張到該目錄(harness 擁有,誤刪會殺掉活著的 agent)。",
|
|
4
|
+
"priority": "P2",
|
|
5
|
+
"rigor": "high",
|
|
6
|
+
"complexity": "medium",
|
|
7
|
+
"tags": ["fix", "code", "worktree", "gc", "disk", "silent-failure"],
|
|
8
|
+
"scope_paths": [
|
|
9
|
+
".claude/hooks/worktree-create.js",
|
|
10
|
+
".formation/tools/post-complete/git-merge.js",
|
|
11
|
+
".kenaz/specialist/daemon-manifest.yaml"
|
|
12
|
+
],
|
|
13
|
+
"requirements": [
|
|
14
|
+
"核心:合併成功時寫下 landed 註記,GC 改為讀取該註記,不再以 ancestry 或 patch 等價推論落地與否。兩條合併路徑都要覆蓋:post-complete/git-merge.js 的自動合併,以及主線程 file-scoped 手動合併所需的可呼叫子指令或 CLI。只做自動路徑等於沒做,因為目前絕大多數合併是人工路徑。",
|
|
15
|
+
"註記格式必須是可稽核、人可讀、可手動檢視與撤銷的持久化形式(純文字 / JSON / git ref 皆可)。不得只存在於記憶體或需要啟動 dashboard 才能讀取。選擇的理由寫進筆記。",
|
|
16
|
+
"GC 的回收條件必須是合取:有 landed 註記 AND 無已追蹤原始碼的未提交修改 AND 目錄 mtime 超過 GC_MIN_AGE_MS AND 不是 keepPath。缺少 landed 註記時一律保留,不得有任何繞過。",
|
|
17
|
+
"次要範圍:未追蹤檔的 daemon 噪音辨識。兩個標本的髒檔都是 ?? 未追蹤(ansuz_project_pins.json 與 TASK_1739_HANDOFF.md),所以 tracked/untracked 二分無法區別它們,必須明確定義未追蹤檔案中何者屬於可丟棄的 daemon 噪音,並說明為何不採用其他候選方案。",
|
|
18
|
+
"不得直接拿現行 daemon-manifest.yaml 當白名單就了事 —— 已查證它漏掉 .claude/settings.json、.kenaz/channel_heartbeats.jsonl、.synapse/prediction_resolution_log.jsonl、.kenaz/specialist/ansuz_project_pins.json 四個實際會變髒的檔案。若選擇靠 manifest,必須同時補齊,並確認不影響 TASK_1818 已拆分的兩個區段語意。",
|
|
19
|
+
"任何情況下,位於已追蹤原始碼的未提交修改都必須視為真實工作而保留。",
|
|
20
|
+
"保留某個 worktree 時必須輸出可觀察的診斷行,指名是哪個條件、哪個檔案造成保留。目前完全無聲,使用者無從得知為何清不掉。",
|
|
21
|
+
"保持 keepPath 排除與 GC_MIN_AGE_MS=2h 兩項現行條件不變;GC_MIN_AGE_MS 絕對不可調短。",
|
|
22
|
+
"不得把 GC 的掃描範圍擴張到 .claude/worktrees/ —— 該目錄由 harness 擁有,誤刪會殺掉執行中的 agent。那 21 個目錄的清理另案處理。"
|
|
23
|
+
],
|
|
24
|
+
"acceptance_criteria": [
|
|
25
|
+
"全部驗證在拋棄式 repo 進行,不得對本專案現存的任何 worktree 執行實際刪除;報告中須註明驗證環境",
|
|
26
|
+
"拋棄式 repo 實跑:有 landed 註記 + 髒檔僅含 daemon 噪音 + 已過 2h → 被回收,以實跑輸出為證",
|
|
27
|
+
"拋棄式 repo 實跑:有 landed 註記 + 存在已追蹤原始碼的未提交修改 → 保留,且診斷行指名該檔案,以實跑輸出為證",
|
|
28
|
+
"拋棄式 repo 實跑:無 landed 註記(且刻意讓分支 tip 不是 HEAD 祖先,重現本卡的控制組情境)→ 保留,以實跑輸出為證",
|
|
29
|
+
"拋棄式 repo 實跑:目錄 mtime 未滿 2h → 完全不碰,以實跑輸出為證",
|
|
30
|
+
"人工合併路徑:以子指令或 CLI 手動寫入 landed 註記後,同一個 worktree 從「保留」轉為「可回收」,以前後兩次實跑輸出對照為證",
|
|
31
|
+
"自動合併路徑:post-complete 合併成功後確實寫入 landed 註記,以實跑輸出或既有測試覆蓋為證",
|
|
32
|
+
"回歸:post-complete 27/27、task1536 7/7、task1543 4/4、worktree-rescue 3/3 全綠(node:test 印「ℹ pass N」,讀 N 不要只讀 exit code)",
|
|
33
|
+
"對本 repo 現況執行唯讀 dry-run,輸出 21 個 GC 可見 worktree 的分類表(可回收 / 保留+原因),附完整輸出。不得實際刪除任何一個。"
|
|
34
|
+
],
|
|
35
|
+
"technical_notes": [
|
|
36
|
+
"控制組證據,這是本卡方向的依據:ansuz-wt-68ed9c57-12936 由主線程於 2026-07-27 以 file-scoped checkout 合併(commit ee897397),逐檔驗證內容與 main 一致且四套測試全綠。即便如此 git cherry 仍報它有 1 個 commit 無等價 patch,且 tip 不是 HEAD 祖先。已知答案的案例上兩種推論法都答錯 —— 不要再嘗試改良推論,資訊必須在合併當下被記錄。",
|
|
37
|
+
"GC 現況在 .claude/hooks/worktree-create.js 的 gcStaleWorktrees():只掃兩個 base dir(<repoParent>/.kenaz-worktrees/<repoName> 與 <repo>/.formation/worktrees),且檔名須以 wt- 或 task_ 開頭。TASK_1826 剛修過 task_ 命名不在視野內與 husk rev-parse 拋錯兩個問題。",
|
|
38
|
+
"TASK_1826 的教訓,量測時務必先確認:沒有自己 .git 的 husk,git -C <husk> status --porcelain 會向上解析到主 repo,回報的是主 repo 的狀態。五個 husk 曾因此全部量到同一個 dirty=76。",
|
|
39
|
+
"本卡不改變 post-complete 的完成語義,也不搬動任何任務卡狀態。",
|
|
40
|
+
"現況磁碟:.formation/worktrees 2.0 GB、.claude/worktrees 1.7 GB、.kenaz-worktrees 970 MB,合計約 4.7 GB。",
|
|
41
|
+
"原 requirement 6 的「以現存 13 個 worktree 驗證該回收 7 個、該保留 6 個」已作廢:實測 GC 可見者為 21 個,其中僅 2 個 merged。"
|
|
42
|
+
]
|
|
43
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "handoff 讀回端全部指向 M3 已廢棄的單數檔:Rust 回傳三個空欄位,relay 通知摘要靜默退化成泛用字串",
|
|
3
|
+
"description": "本卡於 2026-07-27 依實測補正。原描述的核心診斷正確,但漏了一個真實消費者、錯記了一個不 stale 的檔案,且「哪個位置才對」其實程式碼裡已有答案,不需要再決策。\n\n【已在程式碼中確定的事實:不必再決策】\nansuz-handoff-snapshot.js 第 452-458 行的註解寫明 TASK_1760 M3 遷移:per-session slot 在 handoffs/<sessionId>.json,單數的 ansuz_session_handoff.json「read-only after this migration; new writes go to per-session slot」。AGENTS.override.md 第 599 與 653 行也已寫明「boot readers check handoffs/ first, fall back to legacy slot」。\n\n因此 handoffs/<sessionId>.json 是正確位置,單數檔是 legacy。本卡不需要再重新選一次,只需要讓所有讀回端跟上這個已經做過的決定。\n\n附帶事實:core 的 .kenaz/specialist/ 底下根本沒有 ansuz_session_handoff.json,所以每一個依賴它的讀取都是 existsSync=false 的無聲失敗。\n\n【五個讀回端 / 引用,逐一實測】\n1. kenaz.rs:1327 — tool_ansuz_handoff_snapshot 只讀單數檔來填 handoff_path / session_id / generated_at。本 session 已連續複現四次,三個欄位每次都是空字串,只有 cli_output 與 isbar_summary 帶著腳本 stdout 原文。呼叫端無法從結構化回傳得知檔案寫到哪。\n2. post-complete.js:2843 — 原卡未提及,這是使用者看得見的那條。它讀單數檔取 isbar.situation.current_topic 作為 relay task_completed 通知的摘要。檔案不存在 → existsSync false → 永遠退回泛用的「[TASK_XXX] task completed」。M3 遷移之後每一則跨節點完成通知都失去了當時的 session 主題。\n3. git-merge.js:30 PRESERVE_WORKING_TREE — TASK_1627 專門為單數檔加了保護,註解寫「live-doc: updated each session turn」。它保護的是一個不存在的檔案,而這份保護的存在又讓後來的人相信它存在。\n4. elixir.yaml:28 — HANDOFF LIVE DOC mandate 明文要求 Ansuz「Update ansuz_session_handoff.json」。這條指示本身是錯的,會讓每一個 session 的 Ansuz 相信自己在維護一個單數 live-doc。\n5. AGENTS.override.md — 原卡列它為 stale,實測不成立。599 與 653 兩行已經正確描述 handoffs/ 優先、legacy 僅 fallback 的語意;只有 588 行的行文仍用單數檔名指稱 ISBAR 這個概念。不要為了「修好它」而改動已經正確的語意。\n\n另外 ansuz-handoff-snapshot.js:458 宣告了 legacyHandoffPath 之後全檔未再使用,是遷移留下的死變數。\n\n【命名分歧】\nhandoffs/ 目錄下兩套命名並存:ansuz-prompt-<timestamp>.json 與 <conversation-uuid>.json,來自不同呼叫端對 sessionId 的推導方式。數量會隨歸檔浮動(開卡時 4+12,本 session 稍後為 1+5),所以不要以數量作為驗收依據,要以「命名規則是否收斂」為準。\n\n【這是什麼類別的缺陷】\n沒有任何一處會崩、會警告。空字串看起來像「這個工具本來就不回傳那些欄位」,泛用摘要看起來像「摘要本來就長這樣」。這與本 session 另外兩張卡(1825 的驗收降級路徑、1827 的 GC 靜默保留)屬同一類。",
|
|
4
|
+
"priority": "P2",
|
|
5
|
+
"rigor": "medium",
|
|
6
|
+
"complexity": "medium",
|
|
7
|
+
"tags": ["fix", "code", "handoff", "silent-failure", "drift"],
|
|
8
|
+
"scope_paths": [
|
|
9
|
+
"dashboard/src-tauri/src/infrastructure/http_server/routes/mcp_tools/kenaz.rs",
|
|
10
|
+
".specialist/Ansuz/tools/ansuz-handoff-snapshot.js",
|
|
11
|
+
".formation/tools/post-complete.js",
|
|
12
|
+
".formation/tools/post-complete/git-merge.js",
|
|
13
|
+
".specialist/Ansuz/elixir.yaml"
|
|
14
|
+
],
|
|
15
|
+
"requirements": [
|
|
16
|
+
"⚠️ 建置禁令,違反會破壞使用者環境:dashboard backend 目前在 18080 活著(實測 http 200),且 tauri dev 的 watcher 會對 *.rs 觸發重建。你在隔離 worktree 中「只改程式碼、不執行任何 cargo build / cargo check / npm build」。Rust 的實際重建與活體驗證由主線程負責。改完 commit 後直接回報。",
|
|
17
|
+
"kenaz.rs 的讀回路徑改為以 handoffs/<sessionId>.json 為主、單數檔僅作 back-compat fallback,使回傳的 handoff_path / session_id / generated_at 真的有值。sessionId 的來源必須明確:若 Rust 端無從得知腳本用了哪個 sessionId,則改為解析腳本 stdout 或取 handoffs/ 中最新者,並在註解說明取捨。",
|
|
18
|
+
"post-complete.js:2843 的 relay 摘要讀取改為同一套解析(handoffs/ 優先、legacy fallback),讓跨節點完成通知重新帶上 session 主題。這是本卡使用者可感知的部分,不可略過。",
|
|
19
|
+
"git-merge.js:30 的 PRESERVE_WORKING_TREE 條目要處理:若單數檔確定不再被寫入,保護它就沒有意義。移除或改為保護 handoffs/ 目錄,二選一,理由寫進註解。注意該陣列上方的註解明文要求「不要為了其他 daemon 檔擴張這個陣列」,請遵守其原意。",
|
|
20
|
+
"elixir.yaml:28 的 HANDOFF LIVE DOC mandate 必須改為指向 handoffs/<sessionId>.json,不得繼續指示 Ansuz 維護一個不存在的單數檔。這是行為指示,錯了會讓每一個 session 都照錯的做。",
|
|
21
|
+
"ansuz-handoff-snapshot.js:458 的死變數 legacyHandoffPath:移除,或若讀回端需要它就明確使用它。不得留著宣告而不用。",
|
|
22
|
+
"AGENTS.override.md 不在 scope 內,不要改它 —— 599/653 兩行的語意已經正確。原卡把它列為 stale 是誤判。",
|
|
23
|
+
"兩套 sessionId 命名(ansuz-prompt-<ts> 與 <conversation-uuid>)必須收斂成一套,或在筆記中明確記錄為何兩者都必須存在、以及讀回端如何在兩者並存時正確選擇。",
|
|
24
|
+
"不得處理另一個 session 回報的「子專案 handoff 落到 core」—— 那條需要先釐清 kenaz-core binary 版本差異,不屬本卡。"
|
|
25
|
+
],
|
|
26
|
+
"acceptance_criteria": [
|
|
27
|
+
"【agent 可自驗】以 node 直接呼叫 ansuz-handoff-snapshot.js 產生一份 handoff,再以 node 執行你新寫的讀回解析邏輯,證明它取得非空的 path / session_id / generated_at,附實跑輸出",
|
|
28
|
+
"【agent 可自驗】post-complete.js 的 relay 摘要路徑:以一份 isbar.situation.current_topic 有值的 handoff 實測,證明摘要不再退回泛用字串,附實跑輸出",
|
|
29
|
+
"【agent 可自驗】兩套命名並存時讀回端選中的是哪一個,以實跑輸出證明選擇邏輯確定且可預期(例如同時放入 ansuz-prompt-<ts> 與 <uuid> 兩份,看它選誰)",
|
|
30
|
+
"【agent 可自驗】Rust 側只做語法層面自我檢查(讀周邊程式碼、比對既有 serde/path 用法),並在報告中明確寫出「未執行任何建置」",
|
|
31
|
+
"【agent 可自驗】既有 JS 測試不退步:post-complete 27/27、task1536 7/7、task1543 4/4、worktree-rescue 3/3(node:test 印「ℹ pass N」,讀 N 不要只讀 exit code)",
|
|
32
|
+
"【主線程驗證,agent 不必也不得執行】合併後由主線程觸發活體重建,實呼叫一次 ansuz_handoff_snapshot,確認 handoff_path / session_id / generated_at 三個欄位皆非空且 handoff_path 逐字對應磁碟上實際存在的檔案",
|
|
33
|
+
"全 repo 不再有任何「寫入端寫 A、讀回端讀 B」的殘留:附上 grep -rn ansuz_session_handoff 的結果,每一處命中都要能說明它為何仍該存在(back-compat fallback 或純註解)"
|
|
34
|
+
],
|
|
35
|
+
"technical_notes": [
|
|
36
|
+
"dashboard backend 在 18080 活著(實測 http 200)。rune_tauri_dev_selective_watcher:tauri dev 的 watcher 對 *.rs 觸發重建與重啟,對 JS/TS 不觸發。你在 worktree 中編輯不會驚動主樹的 watcher,但主樹一旦合併就會重建 —— 這正是主線程負責活體驗證的原因。",
|
|
37
|
+
"worktree 內的 cargo 驗證在本專案是假信心:build.rs 與 vendor CMake 的 MAX_PATH 問題會讓它失敗或誤導(reference_worktree_rust_verify_recipe)。不要嘗試繞過建置禁令。",
|
|
38
|
+
"M3 遷移的權威來源是 ansuz-handoff-snapshot.js 452-458 行的註解與 AGENTS.override.md 599/653。讀它們,不要自己重新發明位置規則。",
|
|
39
|
+
"kenaz.rs 的讀回在 1327 行附近;tool_ansuz_handoff_snapshot 約 1285 行起。",
|
|
40
|
+
"handoffs/ 目錄的檔案數會被歸檔機制與 archiveHandoffToHippocampus 改變(本 session 從 17 降到 6),所以任何以「目錄下有 N 個檔」為前提的驗證都不可靠。",
|
|
41
|
+
"本卡與 TASK_1825、TASK_1827 屬同一缺陷類別:降級路徑靜默回報正常值。空字串與泛用摘要都不會觸發任何告警。"
|
|
42
|
+
]
|
|
43
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "consolidation_scores 投影層吃掉 consolidated/key_facts 欄位,製造 1222 個 episode 的永久假積壓",
|
|
3
|
+
"description": "Huginn advisory(2026-07-24)回報「20 closed episodes overdue for consolidation(~94 天)」。實際查證後這是假警報,且成因是兩個可修的缺陷。(1) 投影層欄位遺失:episode ep_69e66c5f0377 在 .synapse/db/memory.db 裡 consolidated='warm'、key_facts 長度 1649 字元,但 hippocampus_consolidation_scores 對外回傳 consolidated:\"\" 與 key_facts:\"\"。消費者因此完全無法分辨「尚未整併」與「已在 warm 層整併」。這與 search.rs 漏投影 symbol_id 是同一類缺陷(rune_4920686de6484cb68b5ead49943ea44d):內部有值、投影沒帶出去、序列化乾淨、型別無錯,除非追 DB→query→投影→消費者四段否則發現不了。(2) 候選過濾語意過寬:consolidation_scores 的 WHERE 是 e.consolidated NOT IN ('archived','cool-merged'),所以 consolidated='warm' 的 1222 個 episode 全部留在候選池。實測分布:warm 1222 / archived 369 / 空字串 67(closed 共 1658)。synapse_maintain 把這個池標成 'queued for consolidation review',數字永遠不會下降,Huginn 於是週期性產生無法被解決的 advisory。實測佐證:hippocampus_consolidate 掃了 500 個 episode,compressed=0 / cool_merged=0 / archived=0 —— 因為真的沒東西要做,是報表在說謊。",
|
|
4
|
+
"priority": "P2",
|
|
5
|
+
"role": "developer",
|
|
6
|
+
"rigor": "low",
|
|
7
|
+
"complexity": "low",
|
|
8
|
+
"tags": ["fix", "code", "test"],
|
|
9
|
+
"scope_paths": [
|
|
10
|
+
"dashboard/src-tauri/src/features/synapse/memory/episode.rs",
|
|
11
|
+
"dashboard/src-tauri/src/infrastructure/http_server/routes/mcp_tools/hippocampus.rs"
|
|
12
|
+
],
|
|
13
|
+
"estimated_hours": 2,
|
|
14
|
+
"requirements": [
|
|
15
|
+
"修正 consolidation_scores 的欄位投影:consolidated 與 key_facts 在 DB 有值時必須如實回傳。先確認遺失發生在哪一層 —— SQL SELECT 沒選這兩欄、Rust struct 沒有對應欄位、或 MCP 的 json!{} 投影沒帶出去 —— 再對症修,不要三層都亂改。",
|
|
16
|
+
"釐清並修正候選語意。consolidated='warm' 的 episode 已完成 warm 層壓縮,只是仍可能符合 cool-merge 條件(需 3+ 共同 touched_symbols,多數永遠不會符合)。把「所有非 archived/cool-merged」一律當成待辦是錯的語意。建議做法:候選池區分 pending_warm(consolidated='' 且超過 min_age_days)與 eligible_for_cool(consolidated='warm' 且真的有 3+ 共同 symbols 的同伴),回傳中分開表達。",
|
|
17
|
+
"synapse_maintain 的 overdue_episodes 區塊改為只計入真正可行動的項目(pending_warm + 真正可 cool-merge 者),且 diagnosis 文字要能反映實情。目前的 '20 closed episodes are queued for consolidation review' 在 compressed=0 的情況下是誤導。",
|
|
18
|
+
"count 欄位不要只回 top_n 截斷後的數量 —— 若總候選有 1289 個而只顯示 3 個,必須讓消費者知道總數與被截斷的事實(no silent truncation)。",
|
|
19
|
+
"不要為了讓指標歸零而放寬或收緊門檻 —— 判準是「回報的數字等於實際可執行的工作量」。若修正後 pending_warm 真的是 67,那就誠實回報 67。"
|
|
20
|
+
],
|
|
21
|
+
"acceptance_criteria": [
|
|
22
|
+
"新增單元測試驗證投影完整性:以 fixture episode(consolidated='warm'、key_facts 非空)呼叫 consolidation_scores,斷言回傳的 consolidated 與 key_facts 與寫入值相符(不是空字串)。這條測試是本卡的核心,必須存在。",
|
|
23
|
+
"新增單元測試驗證候選分類:consolidated='' 且夠老 → pending_warm;consolidated='warm' 且無共同 symbol 同伴 → 不計入待辦;consolidated='archived' → 兩者皆不計入。",
|
|
24
|
+
"手動複驗並貼出證據:呼叫 hippocampus_consolidation_scores 後,ep_69e66c5f0377 的 consolidated 應為 'warm'、key_facts 應為長度 1649 左右的 JSON 陣列字串(現況兩者皆為 \"\")。",
|
|
25
|
+
"呼叫 synapse_maintain 後,overdue_episodes.count 應等於實際可執行的整併工作量,且與 hippocampus_consolidate 的 compressed+cool_merged 輸出不再矛盾(現況:maintain 說 20 個待辦,consolidate 說 0 個可做)。",
|
|
26
|
+
"`CARGO_TARGET_DIR=$(node <worktree>/dev/scripts/verify-target-dir.js) cargo check --lib -p kenaz-dashboard` 乾淨通過(exit 0),測試以 `node <worktree>/dev/scripts/run-rust-tests.js <filter>` 全數通過(腳本自動套用正典 CARGO_TARGET_DIR)。",
|
|
27
|
+
"既有 episode 相關測試全數通過,且不得修改 memory.db 的 schema 或既有資料。"
|
|
28
|
+
],
|
|
29
|
+
"technical_notes": [
|
|
30
|
+
"已查證的事實(Ansuz 實測,可複驗,不需重新調查):episodes 表中 status='closed' 的 consolidated 分布為 warm 1222 / archived 369 / 空字串 67。ep_69e66c5f0377:consolidated='warm'、length(key_facts)=1649、entry_count=6、recall_count=2、age 95 天。hippocampus_consolidate 實跑結果:scored=500、compressed=0、cool_merged=0、archived=0、zero_activity_cleared=0。",
|
|
31
|
+
"已排除的假設(不要重走):warm 壓縮沒有失敗。我一開始懷疑 compress_warm_episodes 的 created_at CASE(TASK_1641 修過 epoch-Z 格式)漏接第三種格式導致靜默落選,實測否定 —— '1776708033Z' 經 CASE 正確解析為 1776708033,且那些 episode 的 consolidated 早已是 'warm'。compress_warm_episodes 回 0 是正確行為。",
|
|
32
|
+
"關鍵程式位置:consolidation_scores 的 SQL 在 features/synapse/memory/episode.rs 第 247 行起,候選過濾條件在第 267 行(`AND e.consolidated NOT IN ('archived', 'cool-merged')`)。consolidate 的三層流程在 mcp_tools/hippocampus.rs 第 590-663 行。",
|
|
33
|
+
"同類前例:search.rs 的 json!{} 投影層曾靜默漏掉 symbol_id(rune_4920686de6484cb68b5ead49943ea44d),修法是補齊全部 5 個投影點,並確認 response_compression.rs 的白名單沒有把新欄位濾掉。本卡修投影時請比照檢查有沒有第二個投影點。",
|
|
34
|
+
"這張卡的價值不在 2 小時的程式碼,而在它關掉一個會週期性消耗注意力的假訊號 —— Huginn 已經為此產生 advisory,Ansuz 已經為此花了一個 session 的查證。假警報的成本是複利的。",
|
|
35
|
+
"驗證環境:正典共用 CARGO_TARGET_DIR(來源 dev/scripts/verify-target-dir.js,Windows 為 C:/t/kenaz-verify)避開 vendor/kuzu 的 Windows MAX_PATH,不要自創新目錄(TASK_1879);並行驗證被 cargo 檔案鎖串行化,'Blocking waiting for file lock' + CPU 近 0 是正常等待不是 hang;不可共用主工作樹 target/(被 live tauri dev 佔用);不要用 cargo test --lib(STATUS_ENTRYPOINT_NOT_FOUND,TASK_1619),用 dev/scripts/run-rust-tests.js。",
|
|
36
|
+
"memory.db 是 158MB 且被 live dashboard 開著 —— 唯讀查詢用 node:sqlite readOnly 模式,不要寫入。"
|
|
37
|
+
]
|
|
38
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Synapse C# Phase 1:符號抽取核心 — 836 個 .cs 檔目前抽出 0 符號(靜默)",
|
|
3
|
+
"description": "Unity/C# 專案(D:\\Projects\\Ashfall)的 .cs 檔有進 File 表(836 筆)但 Symbol 表完全沒有 csharp 這一列,`MATCH (f:File)-[:DEFINES]->(s:Symbol) WHERE f.extension='cs' RETURN count(s)` 回傳 0。根因已定位:scanner.rs 的 detect_symbol_language() 不認 'cs' 副檔名(回 None),導致 scanner.rs 第 764 行整段符號抽取被跳過,沒有任何 warning。本卡實作 C# 的符號層抽取(class/struct/interface/enum/record/method/property/field/namespace),讓 synapse_search / synapse_pulse / synapse_context 在 C# 專案上可用。關係層(CALLS/IMPLEMENTS/EXTENDS/IMPORTS)由後續卡處理,本卡不做。",
|
|
4
|
+
"priority": "P1",
|
|
5
|
+
"role": "developer",
|
|
6
|
+
"rigor": "medium",
|
|
7
|
+
"complexity": "medium",
|
|
8
|
+
"tags": ["code", "fix", "test"],
|
|
9
|
+
"scope_paths": [
|
|
10
|
+
"dashboard/src-tauri/Cargo.toml",
|
|
11
|
+
"dashboard/src-tauri/src/features/synapse/symbols.rs",
|
|
12
|
+
"dashboard/src-tauri/src/features/synapse/scanner.rs",
|
|
13
|
+
"dashboard/src-tauri/src/features/synapse/preamble.rs"
|
|
14
|
+
],
|
|
15
|
+
"estimated_hours": 4,
|
|
16
|
+
"requirements": [
|
|
17
|
+
"Cargo.toml 加入 tree-sitter-c-sharp = \"0.23.5\"(與現用 tree-sitter-rust 0.23.2 / tree-sitter-go 0.23.4 同世代 ABI,搭配 tree-sitter 0.26.6)。",
|
|
18
|
+
"scanner.rs detect_symbol_language():新增 \"cs\" => Some(\"csharp\")。不要動既有 7 個副檔名的行為。",
|
|
19
|
+
"symbols.rs extract_symbols():新增 \"csharp\" => extract_csharp_symbols(source, file_path) 分支。",
|
|
20
|
+
"實作 extract_csharp_symbols:抽取 class / struct / interface / enum / record / delegate 為型別符號;method_declaration / constructor_declaration / property_declaration / field_declaration 為成員符號。成員必須帶上所屬型別名,讓 scanner 的 find_class_symbol_id 能建立 MEMBER_OF 關係(比照既有 extract_python_class / extract_typescript_symbols 的做法)。",
|
|
21
|
+
"namespace 處理:C# 的 namespace 有 block 形式與 file-scoped 形式(`namespace Foo;`)兩種,兩種都要能穿透到內層型別,不可只支援 block 形式(Unity 專案兩種都常見)。",
|
|
22
|
+
"簽章(signature)比照既有語言:取宣告首行(含修飾詞、泛型參數、參數列、回傳型別),不含 body。可參考 extract_rust_first_line / extract_go_first_line 的做法新增 extract_csharp_first_line。",
|
|
23
|
+
"ERROR node recovery:比照既有語言(recover_symbols_from_error_python 等)處理部分解析失敗的檔案,避免編輯中的檔案整個掉光。",
|
|
24
|
+
"symbols.rs 的 parse_to_tree() 與 parse_incremental() 兩處 language→tree_sitter::Language 對照表(約 2445 行與 2467 行)都要補 \"csharp\" 分支,否則增量解析路徑對 C# 無效。",
|
|
25
|
+
"preamble.rs 約 2118 行的 language→副檔名對照表補 \"csharp\" => &[\".cs\"]。"
|
|
26
|
+
],
|
|
27
|
+
"acceptance_criteria": [
|
|
28
|
+
"新增 Rust 單元測試(放在 symbols.rs 既有 #[cfg(test)] 區塊,比照既有語言的測試風格),以內嵌 C# fixture 字串驗證:(1) block namespace 內的 public class 被抽出且 kind 正確;(2) file-scoped namespace(`namespace Foo;`)內的 class 同樣被抽出;(3) class 內的 method 與 property 被抽出且能關聯到所屬 class 名;(4) interface / enum / struct / record 各自被抽出且 kind 正確;(5) 含語法錯誤的 C# 片段仍能抽出前面合法的符號(ERROR recovery)。",
|
|
29
|
+
"測試以 `node <worktree>/dev/scripts/run-rust-tests.js csharp` 執行並全數通過(腳本自動套用正典 CARGO_TARGET_DIR,來源 dev/scripts/verify-target-dir.js),log 貼進完成報告(不要用裸 cargo test --lib,會 STATUS_ENTRYPOINT_NOT_FOUND,見技術註記)。",
|
|
30
|
+
"`CARGO_TARGET_DIR=$(node <worktree>/dev/scripts/verify-target-dir.js) cargo check --lib -p kenaz-dashboard` 乾淨通過(exit 0,讀 ${PIPESTATUS[0]} 不要讀 pipe 尾端)。",
|
|
31
|
+
"detect_symbol_language 對既有 7 個副檔名的回傳值完全不變(加一條回歸測試斷言 py/ts/tsx/js/jsx/rs/go/md/yaml 的既有映射)。",
|
|
32
|
+
"不得修改 calls.rs / implements.rs / imports.rs / exports.rs / dataflows.rs / varflows.rs — 關係層是下一張卡的範圍,越界會與平行 agent 衝突。"
|
|
33
|
+
],
|
|
34
|
+
"technical_notes": [
|
|
35
|
+
"驗證環境(強制照做,否則會撞 Windows MAX_PATH 與 SxS manifest 兩個已知坑):worktree 內的 Rust 驗證必須用正典共用 CARGO_TARGET_DIR(來源 dev/scripts/verify-target-dir.js,Windows 為 C:/t/kenaz-verify),否則 vendor/kuzu 的 CMake 路徑超過 MAX_PATH 直接失敗。不要自創新目錄(TASK_1879);並行驗證被 cargo 檔案鎖串行化,'Blocking waiting for file lock' + CPU 近 0 是正常等待不是 hang。",
|
|
36
|
+
"cargo test --lib 會編得過但執行時 STATUS_ENTRYPOINT_NOT_FOUND (0xc0000139) — 這是 TASK_1619 記錄的 Common-Controls v6 manifest 問題(rfd crate 靜態 import comctl32!TaskDialogIndirect)。唯一可行路徑是 `node dev/scripts/run-rust-tests.js <filter>`,它會 --no-run 建置、複製 exe、旁邊放外部 manifest 再執行。",
|
|
37
|
+
"若 build.rs 因 tauri.conf.json 的 resources glob 驗證而 panic(訊息形如 `resource path resources\\onnx\\arctic-embed-xs doesn't exist`),從主工作樹複製 `dashboard/src-tauri/resources/onnx/` 進 worktree 並設 SKIP_SIDECAR_STAGING=1。先裸跑一次,失敗再補這步。",
|
|
38
|
+
"主工作樹的 target/ 正被 live tauri dev(backend 18080)佔用,絕對不要共用主樹的 target 目錄。",
|
|
39
|
+
"本卡驗收刻意只到單元測試層級 — 使用者明確要求不重建 dashboard、不對 D:\\Projects\\Ashfall 重新索引。真實 Unity 專案的端到端驗證是後續獨立步驟,不要在本卡宣稱已端到端驗證。",
|
|
40
|
+
"參考實作:extract_go_symbols(結構最接近,Go 也是 type + method 分離的語言)與 extract_typescript_symbols(class 成員 MEMBER_OF 的處理方式)。",
|
|
41
|
+
"C# 特有陷阱:partial class(同名型別散在多檔,各自產生符號是可接受的)、泛型型別名(`Foo<T>` 的符號名建議只取 `Foo`,泛型參數留在 signature 裡,與既有語言一致)、attribute(`[SerializeField]` 等,不應被誤判為符號,但應併入被修飾符號的 start_line 或 signature,比照 Python decorated_definition 的處理)。",
|
|
42
|
+
"來源報告:C:\\Users\\user\\Desktop\\SYNAPSE_CSHARP_INDEXING_REPORT.md(缺陷 1)。"
|
|
43
|
+
]
|
|
44
|
+
}
|