kenaz 0.3.21 → 0.3.23

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.
Files changed (481) hide show
  1. package/core/.claude/commands/Ansuz.md +2 -0
  2. package/core/.claude/hooks/__tests__/peer-session-fill.test.js +37 -0
  3. package/core/.claude/hooks/_ansuz-conversation.js +32 -1
  4. package/core/.claude/hooks/_user-scope.js +1 -1
  5. package/core/.claude/hooks/core-resolve.js +1 -1
  6. package/core/.claude/hooks/peer-optin.test.js +74 -0
  7. package/core/.claude/hooks/peer-session-fill.js +38 -0
  8. package/core/.claude/hooks/turn-context.js +5 -4
  9. package/core/.claude/hooks/worktree-create.js +6 -6
  10. package/core/.claude/hooks/worktree-remove.js +4 -4
  11. package/core/.claude/settings.json +9 -0
  12. package/core/.collaboration/core/reconcile.js +16 -1
  13. package/core/.collaboration/core/task-2467-lifecycle.test.js +63 -0
  14. package/core/.collaboration/core/task-api.js +37 -7
  15. package/core/.formation/bifrost/launch.js +1 -1
  16. package/core/.formation/bifrost/openai/codex-hook-shim.js +21 -4
  17. package/core/.formation/bifrost/openai/codex-peer-pull.test.js +42 -0
  18. package/core/.formation/bifrost/provider-launch.js +2 -1
  19. package/core/.formation/tools/kenaz-stats.js +1 -1
  20. package/core/.formation/tools/post-complete/git-merge.js +1 -1
  21. package/core/.formation/tools/prompt.js +1 -1
  22. package/core/.kenaz/specialist/ansuz_rules.yaml +7 -51
  23. package/core/.kenaz/specialist/ansuz_session_handoff.schema.json +2 -6
  24. package/core/.rule/general/project-self-containment.yaml +2 -2
  25. package/core/.specialist/Amelia/README.md +1 -1
  26. package/core/.specialist/Amelia/rule.yaml +1 -1
  27. package/core/.specialist/Ansuz/RULES.md +1 -1
  28. package/core/.specialist/Ansuz/concepts/commitment_layer.yaml +1 -1
  29. package/core/.specialist/Ansuz/concepts/evolvable_guardrails.yaml +1 -1
  30. package/core/.specialist/Ansuz/knowledge.yaml +1 -3
  31. package/core/.specialist/tools/__tests__/task-2409-lessons.test.js +10 -0
  32. package/core/.specialist/tools/__tests__/task-2427-harvest.test.js +25 -0
  33. package/core/.specialist/tools/ansuz-boot-fast.js +1 -1
  34. package/core/.specialist/tools/failure-detector.js +4 -4
  35. package/core/.specialist/tools/handoff-doc.js +1 -1
  36. package/core/.specialist/tools/lessons.js +2 -2
  37. package/core/CLAUDE.md +5 -5
  38. package/core/KENAZ_CORE_VERSION +1 -1
  39. package/core/dashboard/scripts/install-kenaz-cli.js +471 -0
  40. package/core/dev/scripts/check-file-size.js +1 -1
  41. package/core/dev/scripts/ci-feedback.js +1 -1
  42. package/core/dev/scripts/gc-agent-worktrees.js +11 -11
  43. package/core/dev/scripts/kenaz-session.js +3 -3
  44. package/core/dev/scripts/peer-identity-e2e.js +3 -3
  45. package/core/dev/scripts/run-rust-tests.js +2 -2
  46. package/core/dev/scripts/skill-routing-replay.js +3 -3
  47. package/core/dev/scripts/task1961/selftest.js +2 -2
  48. package/core/dev/scripts/windows-hide-guard.test.js +97 -0
  49. package/core/plugins/kenaz/commands/Ansuz.md +2 -0
  50. package/core/plugins/kenaz/guidance.md +2 -0
  51. package/core/plugins/kenaz/hooks/core-resolve.js +1 -1
  52. package/core/plugins/kenaz/hooks/hooks.json +9 -0
  53. package/core/plugins/kenaz/hooks/kenaz-hook.js +53 -4
  54. package/core/plugins/kenaz/scripts/kenaz.test.js +72 -5
  55. package/core/plugins/kenaz/scripts/ygg.js +40 -4
  56. package/core/plugins/kenaz/scripts/ygg.test.js +63 -3
  57. package/core/plugins/kenaz-peer/hooks/register.test.ts +59 -2
  58. package/core/plugins/kenaz-peer/hooks/register.ts +24 -1
  59. package/lib/cli.js +9 -5
  60. package/package.json +6 -6
  61. package/vendor/install-kenaz-cli.js +21 -6
  62. package/core/.kenaz/designs/METAPLASTICITY_CONFIDENCE_DESIGN.md +0 -537
  63. package/core/.kenaz/designs/REFLEX_INITIATOR_DESIGN.md +0 -501
  64. package/core/.kenaz/designs/TASK_1385_handoff_mcp_design.md +0 -426
  65. package/core/.kenaz/designs/TASK_932_hippocampus_consolidation.md +0 -103
  66. package/core/.kenaz/designs/TASK_934_efe_signal_engine.md +0 -97
  67. package/core/.kenaz/designs/TASK_935_self_evolution_framework.md +0 -154
  68. package/core/.kenaz/designs/VISION_cognitive_architecture_roadmap.md +0 -159
  69. package/core/.kenaz/designs/metaplasticity_simulation_results.json +0 -696
  70. package/core/.kenaz/main-memory/README.md +0 -230
  71. package/core/.kenaz/main-memory/kenaz/cortex/001_cortex_overview.md +0 -168
  72. package/core/.kenaz/main-memory/kenaz/cortex/001_rag_engine_overview.md +0 -30
  73. package/core/.kenaz/main-memory/kenaz/memory-system/001_three_tier_architecture.md +0 -361
  74. package/core/.kenaz/main-memory/kenaz/pipeline/001_task_execution_flow.md +0 -117
  75. package/core/.kenaz/main-memory/kenaz/pipeline/001_task_granularity.md +0 -154
  76. package/core/.kenaz/main-memory/kenaz/pipeline/002_team_priority.md +0 -51
  77. package/core/.kenaz/main-memory/kenaz/pipeline/003_feature_id_system.md +0 -46
  78. package/core/.kenaz/main-memory/kenaz/rules/001_gen_007_self_containment.md +0 -108
  79. package/core/.kenaz/main-memory/kenaz/rules/001_rule_priority_system.md +0 -121
  80. package/core/.kenaz/main-memory/kenaz/rules/002_agt_006_pre_check.md +0 -0
  81. package/core/.kenaz/main-memory/kenaz/rules/003_ppl_002_task_archival.md +0 -48
  82. package/core/.kenaz/main-memory/kenaz/system/001_dual_track_task_system.md +0 -197
  83. package/core/.kenaz/main-memory/knowledge/patterns/001_json_bom_issue.md +0 -78
  84. package/core/.kenaz/main-memory/knowledge/patterns/001_leader_worker_pattern.md +0 -0
  85. package/core/.kenaz/main-memory/knowledge/patterns/002_scope_path_conflict.md +0 -115
  86. package/core/.kenaz/main-memory/knowledge/patterns/002_task_dependency_resolution.md +0 -223
  87. package/core/.kenaz/main-memory/knowledge/patterns/003_question_protocol.md +0 -242
  88. package/core/.kenaz/main-memory/knowledge/patterns/004_user_insight_value.md +0 -111
  89. package/core/.kenaz/main-memory/knowledge/patterns/005_file_lock_pattern.md +0 -274
  90. package/core/.kenaz/main-memory/knowledge/references/001_ppl_rules.md +0 -28
  91. package/core/.kenaz/main-memory/knowledge/solutions/001_json_bom_issue.md +0 -137
  92. package/core/.kenaz/main-memory/knowledge/solutions/001_team_invocation.md +0 -0
  93. package/core/.kenaz/main-memory/knowledge/solutions/002_passive_monitoring.md +0 -0
  94. package/core/.kenaz/main-memory/knowledge/solutions/003_windows_file_race_condition.md +0 -239
  95. package/core/.kenaz/main-memory/registry.json +0 -326
  96. package/core/.kenaz/main-memory/version.yaml +0 -58
  97. package/core/.kenaz/specialist/memory_guard_fired.json +0 -1
  98. package/core/.kenaz/specialist/memory_guard_trigger_cache.json +0 -1
  99. package/core/.kenaz/specialist/memory_source_priority.yaml +0 -260
  100. package/core/.kenaz/specialist/prompt_1775.txt +0 -317
  101. package/core/.kenaz/specialist/prompt_1776.txt +0 -326
  102. package/core/.kenaz/specialist/prompt_1791.txt +0 -320
  103. package/core/.kenaz/specialist/prompt_1792.txt +0 -320
  104. package/core/.kenaz/specialist/prompt_1795.txt +0 -281
  105. package/core/.kenaz/specialist/prompt_1813.txt +0 -332
  106. package/core/.kenaz/specialist/prompt_1814.txt +0 -401
  107. package/core/.kenaz/specialist/prompt_1815.txt +0 -394
  108. package/core/.kenaz/specialist/prompt_1816.txt +0 -437
  109. package/core/.kenaz/specialist/prompt_1818.txt +0 -361
  110. package/core/.kenaz/specialist/prompt_1819.txt +0 -421
  111. package/core/.kenaz/specialist/prompt_1821.txt +0 -345
  112. package/core/.kenaz/specialist/prompt_1822.txt +0 -313
  113. package/core/.kenaz/specialist/prompt_1824.txt +0 -348
  114. package/core/.kenaz/specialist/prompt_1826.txt +0 -388
  115. package/core/.kenaz/specialist/rune_efe_salience_gap.md +0 -21
  116. package/core/.kenaz/specialist/task1825_update.json +0 -43
  117. package/core/.kenaz/specialist/taskgen/consolidation_i.json +0 -38
  118. package/core/.kenaz/specialist/taskgen/csharp_a.json +0 -44
  119. package/core/.kenaz/specialist/taskgen/csharp_b.json +0 -40
  120. package/core/.kenaz/specialist/taskgen/embedding_e.json +0 -34
  121. package/core/.kenaz/specialist/taskgen/hygiene_fg.json +0 -39
  122. package/core/.kenaz/specialist/taskgen/pathology_h.json +0 -36
  123. package/core/.kenaz/specialist/taskgen/unity_noise_d.json +0 -38
  124. package/core/.kenaz/specialist/taskgen/visibility_c.json +0 -38
  125. package/core/.specialist/Ansuz/decisions/ADR-requirement-graph-layer.md +0 -390
  126. package/core/.specialist/Ansuz/self_model_seed.backup.json +0 -100
  127. package/core/.specialist/ansuz_session_handoff.json +0 -96
  128. package/core/dev/ALAYA_FIELD_FEEDBACK_DESIGN.md +0 -126
  129. package/core/dev/ANSUZ_SCAFFOLD_DIET_2026-09-20.md +0 -231
  130. package/core/dev/ANSUZ_STARTUP_INJECTION_REVIEW.md +0 -355
  131. package/core/dev/ANSUZ_WORKFLOW_MODERNIZATION.md +0 -143
  132. package/core/dev/CORTEX_META_GRAPH_ASSESSMENT.md +0 -99
  133. package/core/dev/FREYA_DOWNSTREAM_BUGS_2026-09-19.md +0 -44
  134. package/core/dev/GLOBAL_MEMORY_IDENTITY_CONSOLIDATION.md +0 -263
  135. package/core/dev/GUARD_EFFECTIVENESS_DESIGN.md +0 -180
  136. package/core/dev/HEALTH_GATE_VARIANCE_ASSESSMENT.md +0 -271
  137. package/core/dev/HOOK_DIET_2026-09-21.md +0 -126
  138. package/core/dev/JEV_INTEGRATION_PLAN.md +0 -189
  139. package/core/dev/KENAZ_AGENT_CONNECT_v1_SPEC.md +0 -139
  140. package/core/dev/MOBILE_DESIGN_SPEC.md +0 -569
  141. package/core/dev/MULTI_ANSUZ_SPEC.md +0 -136
  142. package/core/dev/MUNINN_RETIREMENT.md +0 -115
  143. package/core/dev/PHASE3_ATTRIBUTION_POPULATION_DIAGNOSIS.md +0 -211
  144. package/core/dev/PHASE3_P3-2B_TASKLEVEL_PROBE.md +0 -83
  145. package/core/dev/PHASE3_P3-2_POPULATION_DISJOINTNESS.md +0 -83
  146. package/core/dev/PHASE3_P3-2_REMEASURE_REPORT.md +0 -231
  147. package/core/dev/PREDICTION_GROUNDING_DESIGN.md +0 -376
  148. package/core/dev/PRODUCT_SPEC.md +0 -317
  149. package/core/dev/PROJECT_REGISTRY_DUPLICATE_ASSESSMENT.md +0 -86
  150. package/core/dev/STARTUP_TIMELINE_TASK_1995.md +0 -181
  151. package/core/dev/SYNAPSE_WORKER_PER_PROJECT.md +0 -881
  152. package/core/dev/TASK_1680_P3-3_DISPATCH_SPEC.md +0 -96
  153. package/core/dev/TASK_1684_CALIBRATION_IMPACT_ANALYSIS.md +0 -170
  154. package/core/dev/TASK_1684_FORK_A_GOODHART_DESIGN.md +0 -171
  155. package/core/dev/TASK_1684_P3_2_REMEASURE_VALIDATION.md +0 -262
  156. package/core/dev/TASK_1903_SIGNAL_AUC_MEASUREMENT.md +0 -207
  157. package/core/dev/TASK_1904_BRANCH_INTEGRITY_AUDIT.md +0 -146
  158. package/core/dev/ansuz-eval/README.md +0 -38
  159. package/core/dev/ansuz-eval/build-fixtures.js +0 -87
  160. package/core/dev/ansuz-eval/grade.js +0 -96
  161. package/core/dev/ansuz-eval/grader.test.js +0 -117
  162. package/core/dev/ansuz-eval/tasks.md +0 -32
  163. package/core/dev/archive/ansuz/BOOT_FULL.md +0 -141
  164. package/core/dev/archive/ansuz/agents/ansuz-boot.md +0 -176
  165. package/core/dev/archive/ansuz/designs/alaya-passive-surfacing.md +0 -84
  166. package/core/dev/archive/ansuz/designs/cc_memory_indexing.md +0 -307
  167. package/core/dev/archive/ansuz/designs/check_guard.md +0 -322
  168. package/core/dev/archive/ansuz/designs/consequence_loop.md +0 -227
  169. package/core/dev/archive/ansuz/designs/mcp_kuzudb_lock_architecture.md +0 -312
  170. package/core/dev/archive/ansuz/designs/phase0_git_enrichment.md +0 -278
  171. package/core/dev/archive/ansuz/designs/refactor_mcp_tools_synapse.md +0 -490
  172. package/core/dev/archive/ansuz/designs/semantic_markdown_extraction.md +0 -167
  173. package/core/dev/archive/ansuz/designs/task_1372_prompt_injects_into.md +0 -193
  174. package/core/dev/archive/ansuz/designs/thought_stack.md +0 -286
  175. package/core/dev/archive/ansuz/investigations/reachability_unified_api_2026-04-11.md +0 -330
  176. package/core/dev/archive/ansuz/investigations/synapse_orphans_indexing_bug_2026-04-11.md +0 -352
  177. package/core/dev/archive/ansuz/investigations/synapse_orphans_reindex_verification_2026-04-11.md +0 -48
  178. package/core/dev/archive/ansuz/investigations/synapse_orphans_verification_2026-04-11.md +0 -170
  179. package/core/dev/archive/ansuz/legacy/kernel.yaml +0 -399
  180. package/core/dev/archive/ansuz/legacy/phases/phase_0.yaml +0 -418
  181. package/core/dev/archive/ansuz/legacy/phases/phase_1.yaml +0 -376
  182. package/core/dev/archive/ansuz/legacy/phases/phase_10.yaml +0 -35
  183. package/core/dev/archive/ansuz/legacy/phases/phase_11.yaml +0 -582
  184. package/core/dev/archive/ansuz/legacy/phases/phase_2.yaml +0 -94
  185. package/core/dev/archive/ansuz/legacy/phases/phase_3.yaml +0 -274
  186. package/core/dev/archive/ansuz/legacy/phases/phase_4.yaml +0 -67
  187. package/core/dev/archive/ansuz/legacy/phases/phase_5.yaml +0 -32
  188. package/core/dev/archive/ansuz/legacy/phases/phase_6.yaml +0 -91
  189. package/core/dev/archive/ansuz/legacy/phases/phase_7.yaml +0 -58
  190. package/core/dev/archive/ansuz/legacy/phases/phase_8.yaml +0 -146
  191. package/core/dev/archive/ansuz/legacy/phases/phase_9.yaml +0 -424
  192. package/core/dev/archive/ansuz/specs/INDEX_bifrost_hook_parity.yaml +0 -92
  193. package/core/dev/archive/ansuz/specs/active-inference-formation.yaml +0 -453
  194. package/core/dev/archive/ansuz/specs/brief_TASK_1228_userpromptsubmit.yaml +0 -191
  195. package/core/dev/archive/ansuz/specs/brief_TASK_1229_pretooluse_posttooluse.yaml +0 -250
  196. package/core/dev/archive/ansuz/specs/brief_TASK_1230_sessionstart_stop.yaml +0 -301
  197. package/core/dev/archive/ansuz/specs/brief_TASK_1231_verification.yaml +0 -272
  198. package/core/dev/archive/skills/feature_agent/SKILL.md +0 -289
  199. package/core/dev/design/PHASE4_DESIGN.md +0 -559
  200. package/core/dev/design/dashboard_docs_integration_PLAN.md +0 -388
  201. package/core/dev/design/matrix_format_ABBREVIATIONS.md +0 -655
  202. package/core/dev/design/matrix_format_DESIGN_SPEC.md +0 -601
  203. package/core/dev/design/matrix_format_DISCUSSION_SUMMARY.md +0 -484
  204. package/core/dev/design/matrix_format_EXAMPLE_memory.matrix +0 -13
  205. package/core/dev/design/matrix_format_EXAMPLE_project_status.matrix +0 -9
  206. package/core/dev/design/matrix_format_EXAMPLE_tasks.matrix +0 -14
  207. package/core/dev/design/matrix_format_SYNTAX_BNF.md +0 -754
  208. package/core/dev/design/matrix_format_TOKEN_COMPARISON.md +0 -484
  209. package/core/dev/design/matrix_v2_COGNITIVE_DESIGN.md +0 -503
  210. package/core/dev/design/matrix_v2_DISCUSSION_SUMMARY.md +0 -414
  211. package/core/dev/design/matrix_v2_EXAMPLE.matrix +0 -67
  212. package/core/dev/designs/EXPANDABLE_CARD_DESIGN_SPEC.md +0 -509
  213. package/core/dev/jev-eval/ACTIVE_CORRECTION.md +0 -52
  214. package/core/dev/jev-eval/ANNOTATION_GUIDE.md +0 -68
  215. package/core/dev/jev-eval/BASELINE_COMPARISON.md +0 -45
  216. package/core/dev/jev-eval/CONTEXT_REVIEW.md +0 -31
  217. package/core/dev/jev-eval/EVALUATION_STATUS.md +0 -39
  218. package/core/dev/jev-eval/HISTORICAL_CORPUS.md +0 -33
  219. package/core/dev/jev-eval/PACKAGING_VERIFICATION.md +0 -42
  220. package/core/dev/jev-eval/README.md +0 -101
  221. package/core/dev/jev-eval/THALAMUS_RANKING.md +0 -58
  222. package/core/dev/jev-eval/VALIDATION_PROGRESS.md +0 -54
  223. package/core/dev/jev-eval/cli.mjs +0 -50
  224. package/core/dev/jev-eval/context.mjs +0 -183
  225. package/core/dev/jev-eval/corpus.mjs +0 -186
  226. package/core/dev/jev-eval/fixtures/conversation-review.seed.jsonl +0 -6
  227. package/core/dev/jev-eval/fixtures/synthetic.jsonl +0 -11
  228. package/core/dev/jev-eval/metrics.mjs +0 -67
  229. package/core/dev/jev-eval/muninn-baseline.mjs +0 -119
  230. package/core/dev/jev-eval/providers.mjs +0 -95
  231. package/core/dev/jev-eval/reports/annotation-pilot-2026-09-20.json +0 -32
  232. package/core/dev/jev-eval/reports/context-review-2026-09-20.json +0 -48
  233. package/core/dev/jev-eval/reports/conversation-review.pending.json +0 -151
  234. package/core/dev/jev-eval/reports/history-corpus-2026-09-20.json +0 -52
  235. package/core/dev/jev-eval/reports/length-probe-2026-09-20.json +0 -133
  236. package/core/dev/jev-eval/reports/live-smoke-2026-09-20.json +0 -616
  237. package/core/dev/jev-eval/reports/muninn-baseline-2026-09-20.json +0 -52
  238. package/core/dev/jev-eval/reports/resilience-2026-09-20.json +0 -520
  239. package/core/dev/jev-eval/reports/rules-baseline.json +0 -197
  240. package/core/dev/jev-eval/reports/synthetic-review.pending.json +0 -357
  241. package/core/dev/jev-eval/resilience.mjs +0 -71
  242. package/core/dev/jev-eval/review.mjs +0 -78
  243. package/core/dev/jev-eval/schema.mjs +0 -87
  244. package/core/dev/jev-eval/test/context.test.mjs +0 -95
  245. package/core/dev/jev-eval/test/corpus.test.mjs +0 -102
  246. package/core/dev/jev-eval/test/eval.test.mjs +0 -146
  247. package/core/dev/jev-eval/test/muninn-baseline.test.mjs +0 -71
  248. package/core/dev/jev-eval/test/resilience.test.mjs +0 -72
  249. package/core/dev/jev-eval/test/review.test.mjs +0 -61
  250. package/core/dev/pipeline/PHASE3_PLANNING_SUMMARY.md +0 -338
  251. package/core/dev/pipeline/PROGRESS.md +0 -113
  252. package/core/dev/pipeline/PROGRESS_template.md +0 -860
  253. package/core/dev/pipeline/QA_REPORT_F008.md +0 -431
  254. package/core/dev/pipeline/QA_REPORT_LOCAL_CLAUDE_DIAGNOSIS.md +0 -583
  255. package/core/dev/pipeline/README.md +0 -210
  256. package/core/dev/pipeline/WORKFLOW_GUIDE.md +0 -824
  257. package/core/dev/pipeline/archived/TASK_015_tauri_init.yaml +0 -53
  258. package/core/dev/pipeline/archived/TASK_016_tauri_commands.yaml +0 -54
  259. package/core/dev/pipeline/archived/TASK_017_rust_pty.yaml +0 -54
  260. package/core/dev/pipeline/archived/TASK_018_tauri_bundle.yaml +0 -53
  261. package/core/dev/pipeline/archived/TASK_019_release_workflow.yaml +0 -56
  262. package/core/dev/pipeline/archived/TASK_020_update_ui.yaml +0 -54
  263. package/core/dev/pipeline/archived/TASK_021_update_notification_ui.yaml +0 -55
  264. package/core/dev/pipeline/archived/TASK_022_remove_node_pty.yaml +0 -65
  265. package/core/dev/pipeline/archived/TASK_023_api_routes_migration.yaml +0 -86
  266. package/core/dev/pipeline/archived/TASK_024_feature_id_system.yaml +0 -51
  267. package/core/dev/pipeline/archived/TASK_025_executable_acceptance.yaml +0 -66
  268. package/core/dev/pipeline/archived/TASK_026_spec_versioning.yaml +0 -56
  269. package/core/dev/pipeline/archived/TASK_027_drift_detection.yaml +0 -60
  270. package/core/dev/pipeline/archived/TASK_028_tauri_pty_manager.yaml +0 -60
  271. package/core/dev/pipeline/archived/TASK_029_tauri_pty_commands.yaml +0 -62
  272. package/core/dev/pipeline/archived/TASK_030_frontend_session_adapter.yaml +0 -54
  273. package/core/dev/pipeline/archived/TASK_031_terminal_tauri_events.yaml +0 -56
  274. package/core/dev/pipeline/archived/TASK_041_scheduler_data_models.yaml +0 -54
  275. package/core/dev/pipeline/archived/TASK_042_path_lock_manager.yaml +0 -53
  276. package/core/dev/pipeline/archived/TASK_043_process_manager.yaml +0 -57
  277. package/core/dev/pipeline/archived/TASK_044_git_integration.yaml +0 -85
  278. package/core/dev/pipeline/archived/TASK_045_task_queue_manager.yaml +0 -54
  279. package/core/dev/pipeline/archived/TASK_046_scheduler_dispatcher.yaml +0 -60
  280. package/core/dev/pipeline/archived/TASK_047_tauri_scheduler_commands.yaml +0 -55
  281. package/core/dev/pipeline/archived/TASK_048_realtime_status_push.yaml +0 -92
  282. package/core/dev/pipeline/archived/TASK_049_frontend_scheduler_integration.yaml +0 -58
  283. package/core/dev/pipeline/archived/TASK_050_error_recovery.yaml +0 -56
  284. package/core/dev/pipeline/archived/TASK_051_optimization_proposals_backend.yaml +0 -53
  285. package/core/dev/pipeline/archived/TASK_052_optimization_proposals_ui.yaml +0 -58
  286. package/core/dev/pipeline/archived/TASK_053_optimization_proposals_diff_view.yaml +0 -54
  287. package/core/dev/pipeline/archived/TASK_054_multi_project_scheduler_state.yaml +0 -76
  288. package/core/dev/pipeline/archived/TASK_055_scheduler_api_project_scope.yaml +0 -64
  289. package/core/dev/pipeline/archived/TASK_056_frontend_scheduler_project_scope.yaml +0 -62
  290. package/core/dev/pipeline/archived/TASK_057_scheduler_module_structure.yaml +0 -54
  291. package/core/dev/pipeline/archived/TASK_058_scheduler_models_extract.yaml +0 -51
  292. package/core/dev/pipeline/archived/TASK_059_scheduler_core_extract.yaml +0 -51
  293. package/core/dev/pipeline/archived/TASK_060_scheduler_commands_extract.yaml +0 -51
  294. package/core/dev/pipeline/archived/TASK_061_scheduler_specialized_commands.yaml +0 -53
  295. package/core/dev/pipeline/archived/TASK_062_process_manager_module_structure.yaml +0 -56
  296. package/core/dev/pipeline/archived/TASK_063_process_manager_core_extract.yaml +0 -56
  297. package/core/dev/pipeline/archived/TASK_064_recovery_module_structure.yaml +0 -57
  298. package/core/dev/pipeline/archived/TASK_065_recovery_core_extract.yaml +0 -56
  299. package/core/dev/pipeline/archived/TASK_066_self_enhancement_scheduler_models.yaml +0 -60
  300. package/core/dev/pipeline/archived/TASK_067_agents_section_quick_actions.yaml +0 -53
  301. package/core/dev/pipeline/archived/TASK_067_self_enhancement_scheduler_core.yaml +0 -65
  302. package/core/dev/pipeline/archived/TASK_068_agent_workflow_rule_enhancement.yaml +0 -46
  303. package/core/dev/pipeline/archived/TASK_068_self_enhancement_tauri_commands.yaml +0 -61
  304. package/core/dev/pipeline/archived/TASK_069_agent_wizard_responsive.yaml +0 -46
  305. package/core/dev/pipeline/archived/TASK_069_self_enhancement_ui.yaml +0 -62
  306. package/core/dev/pipeline/archived/TASK_070_preview_panel_redesign.yaml +0 -62
  307. package/core/dev/pipeline/archived/TASK_070_self_enhancement_integration.yaml +0 -57
  308. package/core/dev/pipeline/archived/TASK_071_preview_panel_qa.yaml +0 -98
  309. package/core/dev/pipeline/archived/TASK_071_single_agent_config.yaml +0 -57
  310. package/core/dev/pipeline/archived/TASK_072_preview_modal_esc_fix.yaml +0 -71
  311. package/core/dev/pipeline/archived/TASK_072_product_review_module.yaml +0 -57
  312. package/core/dev/pipeline/archived/TASK_073_agents_page_component_refactor.yaml +0 -68
  313. package/core/dev/pipeline/archived/TASK_073_rename_single_agent.yaml +0 -64
  314. package/core/dev/pipeline/archived/TASK_074_preview_mode_ui_diagnosis.yaml +0 -71
  315. package/core/dev/pipeline/archived/TASK_074_single_agent_ui_toggle.yaml +0 -56
  316. package/core/dev/pipeline/archived/TASK_075_agents_page_component_refactor.yaml +0 -69
  317. package/core/dev/pipeline/archived/TASK_075_single_agent_integration_test.yaml +0 -75
  318. package/core/dev/pipeline/archived/TASK_076_preview_mode_ui_diagnosis.yaml +0 -70
  319. package/core/dev/pipeline/archived/TASK_076_single_agent_continuous_mode.yaml +0 -65
  320. package/core/dev/pipeline/archived/TASK_077_failure_directory_structure.yaml +0 -51
  321. package/core/dev/pipeline/archived/TASK_077_single_agent_typescript_types.yaml +0 -59
  322. package/core/dev/pipeline/archived/TASK_078_fail_001_agent_no_output.yaml +0 -53
  323. package/core/dev/pipeline/archived/TASK_078_single_agent_ui_simplify.yaml +0 -74
  324. package/core/dev/pipeline/archived/TASK_079_dashboard_rwd_responsive.yaml +0 -63
  325. package/core/dev/pipeline/archived/TASK_079_fail_002_json_bom.yaml +0 -56
  326. package/core/dev/pipeline/archived/TASK_080_fail_003_queue_pollution.yaml +0 -56
  327. package/core/dev/pipeline/archived/TASK_080_http_server_module.yaml +0 -55
  328. package/core/dev/pipeline/archived/TASK_081_failure_logging_tools.yaml +0 -57
  329. package/core/dev/pipeline/archived/TASK_081_http_api_routes.yaml +0 -62
  330. package/core/dev/pipeline/archived/TASK_082_frontend_api_adapter.yaml +0 -51
  331. package/core/dev/pipeline/archived/TASK_082_integrate_failure_to_workflow.yaml +0 -60
  332. package/core/dev/pipeline/archived/TASK_083_cleanup_nextjs_api.yaml +0 -48
  333. package/core/dev/pipeline/archived/TASK_083_task_queue_cleanup.yaml +0 -67
  334. package/core/dev/pipeline/archived/TASK_084_rust_dead_code_cleanup.yaml +0 -66
  335. package/core/dev/pipeline/archived/TASK_084_scheduler_sync_logic_fix.yaml +0 -68
  336. package/core/dev/pipeline/archived/TASK_085_http_api_web_mode_fixes.yaml +0 -46
  337. package/core/dev/pipeline/archived/TASK_085_memory_consolidation_0204_0205.yaml +0 -98
  338. package/core/dev/pipeline/archived/TASK_086_collapsible_preview_panel.yaml +0 -161
  339. package/core/dev/pipeline/archived/TASK_086_web_mode_feature_parity.yaml +0 -62
  340. package/core/dev/pipeline/archived/TASK_087_manual_memory_archival.yaml +0 -163
  341. package/core/dev/pipeline/archived/TASK_087_mobile_http_control.yaml +0 -68
  342. package/core/dev/pipeline/archived/TASK_088_fail_003_to_ppl_002_rule.yaml +0 -63
  343. package/core/dev/pipeline/archived/TASK_088_mobile_http_qa.yaml +0 -121
  344. package/core/dev/pipeline/archived/TASK_089_agent_collaboration_topic.yaml +0 -60
  345. package/core/dev/pipeline/archived/TASK_089_web_mode_monitor_fix.yaml +0 -58
  346. package/core/dev/pipeline/archived/TASK_090_cli_detection_fix.yaml +0 -61
  347. package/core/dev/pipeline/archived/TASK_090_ui_ux_lessons_topic.yaml +0 -63
  348. package/core/dev/pipeline/archived/TASK_091_expandable_card_design.yaml +0 -56
  349. package/core/dev/pipeline/archived/TASK_091_move_agent_section_components.yaml +0 -65
  350. package/core/dev/pipeline/archived/TASK_092_expandable_card_component.yaml +0 -60
  351. package/core/dev/pipeline/archived/TASK_092_refactor_agent_create_wizard.yaml +0 -84
  352. package/core/dev/pipeline/archived/TASK_093_taskcard_detail_integration.yaml +0 -57
  353. package/core/dev/pipeline/archived/TASK_093_update_barrel_exports_test.yaml +0 -84
  354. package/core/dev/pipeline/archived/TASK_094_ai_agent_generation_enhancement.yaml +0 -115
  355. package/core/dev/pipeline/archived/TASK_094_proposalcard_detail_integration.yaml +0 -55
  356. package/core/dev/pipeline/archived/TASK_095_preview_fixes.yaml +0 -129
  357. package/core/dev/pipeline/archived/TASK_095_single_agent_task_selector.yaml +0 -60
  358. package/core/dev/pipeline/archived/TASK_096_agents_page_ux_improvements.yaml +0 -163
  359. package/core/dev/pipeline/archived/TASK_096_single_agent_status_sync.yaml +0 -60
  360. package/core/dev/pipeline/archived/TASK_097_local_claude_error_logging.yaml +0 -59
  361. package/core/dev/pipeline/archived/TASK_097_single_agent_monitor_events.yaml +0 -59
  362. package/core/dev/pipeline/archived/TASK_098_product_manager_team_phase2.yaml +0 -60
  363. package/core/dev/pipeline/archived/TASK_098_single_agent_refactor_test.yaml +0 -58
  364. package/core/dev/pipeline/archived/TASK_099_backend_team_creation.yaml +0 -258
  365. package/core/dev/pipeline/archived/TASK_100_frontend_team_creation.yaml +0 -61
  366. package/core/dev/pipeline/archived/TASK_101_orchestrator_system.yaml +0 -403
  367. package/core/dev/pipeline/archived/TASK_102_designer_sre_teams.yaml +0 -90
  368. package/core/dev/pipeline/archived/TASK_103_integration_testing.yaml +0 -86
  369. package/core/dev/pipeline/archived/TASK_128_integration_testing.yaml +0 -83
  370. package/core/dev/pipeline/archived/TASK_134_cortex_v2_phase3_file_watcher.yaml +0 -65
  371. package/core/dev/pipeline/archived/TASK_134_team_http_api.yaml +0 -96
  372. package/core/dev/pipeline/archived/TASK_135_cortex_v2_phase3_git_monitor.yaml +0 -63
  373. package/core/dev/pipeline/archived/TASK_136_cortex_v2_phase3_change_analyzer.yaml +0 -69
  374. package/core/dev/pipeline/archived/TASK_137_cortex_v2_phase3_cache_invalidator.yaml +0 -67
  375. package/core/dev/pipeline/archived/TASK_137_team_orchestrator_integration.yaml +0 -93
  376. package/core/dev/pipeline/archived/TASK_138_cortex_v2_phase3_distributed_cache.yaml +0 -68
  377. package/core/dev/pipeline/archived/TASK_138_matrix_folder_structure.yaml +0 -61
  378. package/core/dev/pipeline/archived/TASK_139_cortex_v2_phase3_cache_prewarming.yaml +0 -65
  379. package/core/dev/pipeline/archived/TASK_146_unified_documentation.yaml +0 -141
  380. package/core/dev/pipeline/archived/TASK_147_pipeline_execution_rules.yaml +0 -76
  381. package/core/dev/pipeline/archived/TASK_148_update_claude_md.yaml +0 -77
  382. package/core/dev/pipeline/archived/TASK_149_fix_nextjs_mdx_serialization.yaml +0 -63
  383. package/core/dev/pipeline/archived/TASK_149_update_team_docs.yaml +0 -77
  384. package/core/dev/pipeline/archived/TASK_150_pipeline_workflow_guide.yaml +0 -82
  385. package/core/dev/pipeline/archived/TASK_164_fix_smart_context_switch.yaml +0 -49
  386. package/core/dev/pipeline/archived/TASK_165_ctags_symbol_index.yaml +0 -53
  387. package/core/dev/pipeline/archived/TASK_166_symbol_search_mcp_tool.yaml +0 -48
  388. package/core/dev/pipeline/archived/TASK_167_llm_module_summary.yaml +0 -55
  389. package/core/dev/pipeline/archived/TASK_168_map_reduce_context.yaml +0 -51
  390. package/core/dev/pipeline/archived/TASK_169_v2_integration_testing.yaml +0 -52
  391. package/core/dev/pipeline/backups/archive_2026-02-04T22-07-22/TASK_QUEUE_backup.json +0 -95
  392. package/core/dev/pipeline/docs/multi-agent-coordination.md +0 -446
  393. package/core/dev/pipeline/docs/overview.md +0 -406
  394. package/core/dev/pipeline/docs/task-management.md +0 -412
  395. package/core/dev/pipeline/docs/workflows.md +0 -32
  396. package/core/dev/pipeline/orchestrator/schemas/task_queue_schema.json +0 -58
  397. package/core/dev/pipeline/orchestrator/schemas/task_schema.json +0 -139
  398. package/core/dev/pipeline/plans/PLAN_task_cli_refactor.md +0 -281
  399. package/core/dev/pipeline/test_results/TASK_TEST_PARALLEL_002_result.txt +0 -27
  400. package/core/dev/plans/ANSUZ_SLIM_PLAN.md +0 -68
  401. package/core/dev/plans/CLI_FIRST_INSTALL_FLOW.md +0 -120
  402. package/core/dev/plans/FORMATION_RETIREMENT_PLAN.md +0 -313
  403. package/core/dev/plans/KUZU_REPLACEMENT_PLAN.md +0 -126
  404. package/core/dev/scripts/CRASH_DIAGNOSIS.md +0 -47
  405. package/core/dev/scripts/README.md +0 -142
  406. package/core/dev/scripts/RUN_ONCE.bat +0 -40
  407. package/core/dev/scripts/START_DEV_AGENT.bat +0 -63
  408. package/core/dev/scripts/START_MULTI_AGENT.bat +0 -80
  409. package/core/dev/scripts/dev_agent_scheduler.ps1 +0 -536
  410. package/core/dev/scripts/init_git.ps1 +0 -396
  411. package/core/dev/scripts/init_git.sh +0 -337
  412. package/core/dev/scripts/init_project.ps1 +0 -851
  413. package/core/dev/scripts/init_project.sh +0 -477
  414. package/core/dev/scripts/multi_agent_scheduler.ps1 +0 -2021
  415. package/core/dev/scripts/multi_agent_scheduler.sh +0 -1344
  416. package/core/dev/scripts/run_once.sh +0 -47
  417. package/core/dev/scripts/setup_rag.ps1 +0 -304
  418. package/core/dev/scripts/setup_rag.sh +0 -230
  419. package/core/dev/scripts/start_dev_agent.sh +0 -137
  420. package/core/dev/scripts/start_multi_agent.sh +0 -41
  421. package/core/dev/scripts/sync_task_queue.ps1 +0 -505
  422. package/core/dev/scripts/sync_task_queue.sh +0 -392
  423. package/core/dev/specs/agent-connect/PROTOCOL.md +0 -177
  424. package/core/dev/specs/agent-connect/SDK_GUIDE.md +0 -915
  425. package/core/dev/specs/agent-connect/examples/minimal-site/README.md +0 -137
  426. package/core/dev/specs/agent-connect/examples/minimal-site/package.json +0 -12
  427. package/core/dev/specs/agent-connect/examples/minimal-site/public/index.html +0 -116
  428. package/core/dev/specs/agent-connect/examples/minimal-site/public/install-redirect.js +0 -73
  429. package/core/dev/specs/agent-connect/examples/minimal-site/server.js +0 -516
  430. package/core/dev/specs/agent-connect/examples/minimal-site/test/smoke.test.mjs +0 -263
  431. package/core/dev/specs/agent-connect/history/DEFECT_REPORT_kenaz-agent-hub_2026-09-09_v0.4-empty-prompt-no-first-turn.md +0 -77
  432. package/core/dev/specs/agent-connect/history/DEFECT_REPORT_kenaz-agent-hub_2026-09-09_v0.4-prompt-mojibake.md +0 -90
  433. package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-07.md +0 -61
  434. package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-08_relay-v1-conformance.md +0 -76
  435. package/core/dev/specs/agent-connect/history/FEATURE_REQUEST_kenaz-agent-hub_2026-09-09_v0.4-session-channel.md +0 -87
  436. package/core/dev/specs/agent-connect/history/FLOWPIX_REPLY_agent-hub_2026-09-08_relay-v1-answers.md +0 -68
  437. package/core/dev/specs/agent-connect/history/FLOWPIX_bridge_CONTRACT.md +0 -642
  438. package/core/dev/specs/agent-connect/history/FLOWPIX_spikes_relay_spike_relay.mjs +0 -244
  439. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-07.md +0 -77
  440. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_direction-change-v0.3.md +0 -44
  441. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_relay-v1-answers-ack.md +0 -37
  442. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-08_relay-v1-conformance.md +0 -56
  443. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_annotations-install-coldstart.md +0 -44
  444. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_empty-prompt-first-turn.md +0 -56
  445. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_prompt-mojibake-fixed.md +0 -48
  446. package/core/dev/specs/agent-connect/history/KENAZ_RESPONSE_agent-hub_2026-09-09_session-channel.md +0 -57
  447. package/core/dev/specs/agent-connect/history/PROTOCOL_v0.3_snapshot.md +0 -379
  448. package/core/dev/specs/agent-connect/history/README.md +0 -47
  449. package/core/dev/specs/peer/CODEX_INTERACTIVE_PUSH.md +0 -65
  450. package/core/dev/specs/peer/CODEX_MANAGED_DAEMON.md +0 -54
  451. package/core/dev/specs/peer/CODEX_PEER_PULL_SPIKE.md +0 -54
  452. package/core/dev/specs/peer/MODS_SPIKE.md +0 -133
  453. package/core/dev/specs/peer/PER_PROJECT_ADDRESSING.md +0 -143
  454. package/core/dev/specs/peer/SWARM_PROTOCOLS.md +0 -256
  455. package/core/dev/specs/peer/codex-hook-shim-peer.test.js +0 -113
  456. package/core/dev/specs/peer/codex-push-launcher.test.js +0 -142
  457. package/core/dev/specs/peer/setup-codex-hooks.test.js +0 -60
  458. package/core/dev/specs/peer-ansuz/DELIVERY_SPIKE.md +0 -397
  459. package/core/dev/specs/peer-ansuz/DESIGN.md +0 -109
  460. package/core/dev/specs/peer-ansuz/spike/claude_poke.js +0 -129
  461. package/core/dev/specs/peer-ansuz/spike/claude_session_start_hook.js +0 -37
  462. package/core/dev/specs/peer-ansuz/spike/claude_settings_hook.json +0 -14
  463. package/core/dev/specs/peer-ansuz/spike/codex_appserver_client.js +0 -105
  464. package/core/dev/specs/peer-ansuz/spike/codex_appserver_query.js +0 -29
  465. package/core/dev/specs/peer-ansuz/spike/extract_timeline.js +0 -26
  466. package/core/dev/specs/synapse/SYMBOL_IDENTITY.md +0 -305
  467. package/core/dev/spikes/A4-cypher-varlen.md +0 -176
  468. package/core/dev/spikes/bloat-rounds.sh +0 -25
  469. package/core/dev/spikes/mods/clean-claude.js +0 -9
  470. package/core/dev/spikes/mods/drive-probe.js +0 -29
  471. package/core/dev/spikes/mods/e2e-peer.js +0 -71
  472. package/core/dev/spikes/mods/evidence/e2e-peer-control.json +0 -17
  473. package/core/dev/spikes/mods/evidence/e2e-peer-mod.json +0 -17
  474. package/core/dev/spikes/mods/evidence/probe-006a6e65-d807-4bc1-b648-fd7d1edfe0b4.jsonl +0 -4
  475. package/core/dev/spikes/mods/evidence/probe-cebdf1f7-f9c4-47a8-83cd-7c0786177404.jsonl +0 -12
  476. package/core/dev/spikes/mods/evidence/probe-eb21147d-10ce-4c32-93ed-37ca37d88d5a.jsonl +0 -11
  477. package/core/dev/spikes/mods/evidence/stream-cebdf1f7.jsonl +0 -18
  478. package/core/dev/spikes/mods/kenaz-mod-probe/.claude-plugin/plugin.json +0 -1
  479. package/core/dev/spikes/mods/kenaz-mod-probe/hooks/hooks.json +0 -1
  480. package/core/dev/spikes/mods/kenaz-mod-probe/hooks/register.ts +0 -65
  481. package/core/dev/spikes/mods/kenaz-mod-probe/tsconfig.json +0 -3
@@ -1,509 +0,0 @@
1
- # 可展開卡片設計規範 (Expandable Card Design Spec)
2
-
3
- > **版本**: 1.0.0
4
- > **日期**: 2026-02-06
5
- > **作者**: Designer Agent
6
- > **關聯功能**: F-001(任務狀態牆)、F-003(優化提案區)
7
- > **關聯任務**: TASK_091、TASK_092、TASK_093、TASK_094
8
-
9
- ---
10
-
11
- ## 1. 設計概念與目標
12
-
13
- ### 設計理念
14
-
15
- 將 Dashboard 卡片從靜態展示升級為可交互的展開/折疊組件,讓用戶在保持概覽視角的同時,能按需查看任務或提案的完整詳情。遵循 **漸進式揭露(Progressive Disclosure)** 原則——默認呈現關鍵摘要,展開後顯示完整內容。
16
-
17
- ### 設計目標
18
-
19
- 1. **信息密度平衡**:折疊態精簡、展開態豐富
20
- 2. **一致性**:所有卡片類型共用相同的展開交互模式
21
- 3. **HUD 風格延續**:保持賽博朋克/終端機美學(Cyan 發光、深色背景)
22
- 4. **無障礙性**:支援鍵盤操作和 Screen Reader
23
-
24
- ---
25
-
26
- ## 2. 交互設計
27
-
28
- ### 2.1 觸發方式
29
-
30
- | 操作 | 行為 | 說明 |
31
- |------|------|------|
32
- | **點擊卡片任意位置** | 展開/折疊切換 | 整個卡片為可點擊區域 |
33
- | **點擊展開圖標** | 展開/折疊切換 | 明確的交互提示 |
34
- | **鍵盤 Enter/Space** | 展開/折疊切換 | 焦點在卡片時觸發 |
35
- | **鍵盤 Escape** | 折疊 | 僅在展開態生效 |
36
- | **Hover** | 顯示展開提示 | 圖標旋轉微動畫 |
37
-
38
- ### 2.2 狀態定義
39
-
40
- ```
41
- ┌─────────────────────────────────────┐
42
- │ [折疊態 - Collapsed] │
43
- │ │
44
- │ 摘要信息 + 展開圖標 (▼) │
45
- │ 用戶看到:標題、優先級、Agent 標籤 │
46
- └─────────────────────────────────────┘
47
- │ click / Enter
48
- ▼
49
- ┌─────────────────────────────────────┐
50
- │ [展開態 - Expanded] │
51
- │ │
52
- │ 摘要信息 + 折疊圖標 (▲) │
53
- │ ───────────────────── │
54
- │ 詳細內容區域 │
55
- │ (依賴關係、描述、文件列表等) │
56
- └─────────────────────────────────────┘
57
- ```
58
-
59
- ### 2.3 行為規則
60
-
61
- - **單卡獨立展開**:多張卡片可同時展開,不互斥
62
- - **狀態不持久化**:頁面刷新後恢復折疊態
63
- - **列表滾動**:展開不會導致頁面跳轉,僅在卡片所在容器內擴展
64
-
65
- ---
66
-
67
- ## 3. 視覺設計
68
-
69
- ### 3.1 折疊態(Collapsed)
70
-
71
- 延續現有卡片樣式,無破壞性變更。
72
-
73
- **TaskCard 折疊態:**
74
- ```
75
- ┌──────────────────────────────────────┐
76
- │ ┌─┐ │
77
- │ │ │ TASK_091 ▼ │
78
- │ └─┘ 可展開卡片 UI 設計規範 │
79
- │ P1 │ designer │ 🔒 2 paths │
80
- └──────────────────────────────────────┘
81
- ```
82
-
83
- **ProposalCard 折疊態:**
84
- ```
85
- ┌──────────────────────────────────────┐
86
- │ ▌ 💡 Performance Optimization ▼ │
87
- │ ▌ Reduce bundle size by... │
88
- │ ▌ P1 │ 2 files │ ~3h │
89
- └──────────────────────────────────────┘
90
- ```
91
-
92
- ### 3.2 展開態(Expanded)
93
-
94
- 展開後在卡片底部增加詳細內容區域,以分隔線區分。
95
-
96
- **TaskCard 展開態:**
97
- ```
98
- ┌──────────────────────────────────────┐
99
- │ ┌─┐ │
100
- │ │ │ TASK_091 ▲ │
101
- │ └─┘ 可展開卡片 UI 設計規範 │
102
- │ P1 │ designer │ 🔒 2 paths │
103
- │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │
104
- │ 📋 Description │
105
- │ 設計 Dashboard 卡片展開/折疊的 │
106
- │ UI 規範和交互模式... │
107
- │ │
108
- │ 🔗 Dependencies │
109
- │ └─ TASK_090 ✅ │
110
- │ └─ TASK_089 ✅ │
111
- │ │
112
- │ 📁 Scope Paths │
113
- │ └─ dashboard/src/components/ui/ │
114
- │ └─ dev/designs/ │
115
- │ │
116
- │ ✅ Acceptance Criteria │
117
- │ └─ 產出設計規範文件 │
118
- │ └─ 包含展開/折疊狀態的視覺示意 │
119
- └──────────────────────────────────────┘
120
- ```
121
-
122
- **ProposalCard 展開態:**
123
- ```
124
- ┌──────────────────────────────────────┐
125
- │ ▌ 💡 Performance Optimization ▲ │
126
- │ ▌ Reduce bundle size by... │
127
- │ ▌ P1 │ 2 files │ ~3h │
128
- │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │
129
- │ 📝 Reason │
130
- │ The current bundle includes unused │
131
- │ lodash methods that increase load │
132
- │ time by 200ms... │
133
- │ │
134
- │ 📁 Affected Files │
135
- │ └─ src/utils/helpers.ts │
136
- │ └─ src/lib/api.ts │
137
- │ └─ package.json │
138
- │ │
139
- │ 🔧 Suggested Changes │
140
- │ [View Diff] │
141
- │ │
142
- │ ┌──────────┐ ┌──────────┐ │
143
- │ │ ✅ Accept │ │ ❌ Ignore │ │
144
- │ └──────────┘ └──────────┘ │
145
- └──────────────────────────────────────┘
146
- ```
147
-
148
- ### 3.3 展開圖標
149
-
150
- 使用 `lucide-react` 的 `ChevronDown` 圖標:
151
-
152
- | 狀態 | 圖標 | 旋轉角度 |
153
- |------|------|----------|
154
- | 折疊 | `ChevronDown` | 0deg |
155
- | 展開 | `ChevronDown` | 180deg(通過 CSS rotate) |
156
- | Hover | `ChevronDown` | 微移 2px(translateY) |
157
-
158
- ```css
159
- /* 展開圖標容器 */
160
- .expand-icon {
161
- transition: transform 200ms ease-out;
162
- }
163
-
164
- .expand-icon[data-expanded="true"] {
165
- transform: rotate(180deg);
166
- }
167
- ```
168
-
169
- ### 3.4 分隔線
170
-
171
- 展開態的摘要與詳情之間使用虛線分隔:
172
-
173
- ```css
174
- .expand-separator {
175
- border-top: 1px dashed rgba(0, 255, 255, 0.2);
176
- margin: 8px 0;
177
- }
178
- ```
179
-
180
- ---
181
-
182
- ## 4. 動畫規範
183
-
184
- ### 4.1 展開動畫
185
-
186
- 使用 CSS `grid-template-rows` 技巧實現平滑高度動畫(比 `max-height` 更精確):
187
-
188
- ```css
189
- /* 容器 */
190
- .expandable-content {
191
- display: grid;
192
- grid-template-rows: 0fr;
193
- transition: grid-template-rows 250ms ease-out;
194
- }
195
-
196
- .expandable-content[data-expanded="true"] {
197
- grid-template-rows: 1fr;
198
- }
199
-
200
- /* 內容包裹 */
201
- .expandable-content > .inner {
202
- overflow: hidden;
203
- }
204
- ```
205
-
206
- ### 4.2 內容淡入
207
-
208
- 展開時內容從透明淡入:
209
-
210
- ```css
211
- .expandable-content .inner {
212
- opacity: 0;
213
- transition: opacity 200ms ease-out 50ms; /* 50ms delay */
214
- }
215
-
216
- .expandable-content[data-expanded="true"] .inner {
217
- opacity: 1;
218
- }
219
- ```
220
-
221
- ### 4.3 動畫參數表
222
-
223
- | 屬性 | 值 | 說明 |
224
- |------|-----|------|
225
- | **展開時長** | 250ms | grid-template-rows transition |
226
- | **折疊時長** | 200ms | 略快於展開(感覺更靈敏) |
227
- | **緩動函數** | ease-out | 自然減速效果 |
228
- | **內容淡入延遲** | 50ms | 等容器開始展開後再淡入 |
229
- | **內容淡入時長** | 200ms | 與展開同步完成 |
230
- | **圖標旋轉** | 200ms ease-out | 與內容展開同步 |
231
-
232
- ### 4.4 Tailwind CSS 類映射
233
-
234
- ```
235
- 展開容器: grid transition-[grid-template-rows] duration-250 ease-out
236
- 折疊態: grid-rows-[0fr]
237
- 展開態: grid-rows-[1fr]
238
- 內容包裹: overflow-hidden
239
- 內容淡入: opacity-0 transition-opacity duration-200 delay-50
240
- 內容顯示: opacity-100
241
- 圖標旋轉: transition-transform duration-200 ease-out
242
- 圖標展開: rotate-180
243
- ```
244
-
245
- ---
246
-
247
- ## 5. 佈局規範
248
-
249
- ### 5.1 展開內容區域結構
250
-
251
- ```tsx
252
- <div className="expandable-detail">
253
- {/* Section: 帶圖標的區塊標題 */}
254
- <div className="detail-section">
255
- <div className="detail-section-header">
256
- <Icon size={14} />
257
- <span>Section Title</span>
258
- </div>
259
- <div className="detail-section-content">
260
- {/* 具體內容 */}
261
- </div>
262
- </div>
263
- </div>
264
- ```
265
-
266
- ### 5.2 間距規範
267
-
268
- | 元素 | 間距 | Tailwind 類 |
269
- |------|------|-------------|
270
- | 分隔線上下 | 8px | `my-2` |
271
- | 區塊之間 | 12px | `space-y-3` |
272
- | 區塊標題與內容 | 4px | `mt-1` |
273
- | 區塊內左縮排 | 16px | `pl-4` |
274
- | 詳情區域 padding | 12px 上方 | `pt-3` |
275
-
276
- ### 5.3 文字規範
277
-
278
- | 元素 | 大小 | 顏色 | Tailwind 類 |
279
- |------|------|------|-------------|
280
- | 區塊標題 | 12px | Cyan 60% | `text-xs text-cyan-400/60` |
281
- | 內容文字 | 13px | Slate 300 | `text-[13px] text-slate-300` |
282
- | 列表項目 | 12px | Slate 400 | `text-xs text-slate-400` |
283
- | 文件路徑 | 12px | Cyan 300 mono | `text-xs text-cyan-300 font-mono` |
284
- | 狀態標記 | 12px | 依狀態定色 | `text-xs` |
285
-
286
- ---
287
-
288
- ## 6. 響應式行為
289
-
290
- ### 6.1 桌面(>= 1024px)
291
-
292
- - 卡片寬度跟隨容器
293
- - 展開內容完整顯示
294
- - 多列佈局中展開不影響其他列
295
-
296
- ### 6.2 平板(768px - 1023px)
297
-
298
- - 卡片全寬
299
- - 展開內容完整顯示
300
- - 可能需要水平滾動查看長文件路徑
301
-
302
- ### 6.3 手機(< 768px)
303
-
304
- - 卡片全寬
305
- - 展開內容使用較小字體(text-[11px])
306
- - 文件路徑截斷顯示(truncate)
307
- - Accept/Ignore 按鈕改為全寬堆疊
308
-
309
- ---
310
-
311
- ## 7. 無障礙性 (Accessibility)
312
-
313
- ### 7.1 ARIA 屬性
314
-
315
- ```tsx
316
- <div
317
- role="button"
318
- tabIndex={0}
319
- aria-expanded={isExpanded}
320
- aria-controls={`detail-${id}`}
321
- onKeyDown={handleKeyDown}
322
- >
323
- {/* 摘要內容 */}
324
- <ChevronDown aria-hidden="true" />
325
- </div>
326
-
327
- <div
328
- id={`detail-${id}`}
329
- role="region"
330
- aria-labelledby={`header-${id}`}
331
- hidden={!isExpanded}
332
- >
333
- {/* 展開內容 */}
334
- </div>
335
- ```
336
-
337
- ### 7.2 鍵盤操作
338
-
339
- | 按鍵 | 行為 |
340
- |------|------|
341
- | `Enter` | 展開/折疊切換 |
342
- | `Space` | 展開/折疊切換 |
343
- | `Escape` | 折疊(僅展開態) |
344
- | `Tab` | 移動到下一個可聚焦元素 |
345
-
346
- ### 7.3 Screen Reader
347
-
348
- - 折疊態播報:「TASK_091,可展開卡片 UI 設計規範,P1,已折疊,按 Enter 展開」
349
- - 展開態播報:「TASK_091,可展開卡片 UI 設計規範,P1,已展開」
350
-
351
- ---
352
-
353
- ## 8. 組件 API 設計
354
-
355
- ### 8.1 ExpandableCard(通用組件)
356
-
357
- ```tsx
358
- interface ExpandableCardProps {
359
- /** 唯一 ID,用於 ARIA 和 key */
360
- id: string;
361
- /** 是否默認展開 */
362
- defaultExpanded?: boolean;
363
- /** 受控模式:展開狀態 */
364
- expanded?: boolean;
365
- /** 展開狀態變化回調 */
366
- onExpandedChange?: (expanded: boolean) => void;
367
- /** 卡片摘要區域(始終可見) */
368
- children: React.ReactNode;
369
- /** 展開後顯示的詳細內容 */
370
- detail?: React.ReactNode;
371
- /** 額外 className */
372
- className?: string;
373
- /** 是否使用 HUD 樣式 */
374
- variant?: 'hud' | 'bordered';
375
- }
376
- ```
377
-
378
- ### 8.2 使用範例
379
-
380
- ```tsx
381
- {/* TaskCard 用法 */}
382
- <ExpandableCard
383
- id={`task-${task.id}`}
384
- variant="hud"
385
- detail={<TaskDetailContent task={task} />}
386
- >
387
- <TaskCardSummary task={task} />
388
- </ExpandableCard>
389
-
390
- {/* ProposalCard 用法 */}
391
- <ExpandableCard
392
- id={`proposal-${proposal.id}`}
393
- variant="bordered"
394
- detail={<ProposalDetailContent proposal={proposal} />}
395
- >
396
- <ProposalCardSummary proposal={proposal} />
397
- </ExpandableCard>
398
- ```
399
-
400
- ---
401
-
402
- ## 9. CSS 新增類定義
403
-
404
- 以下 CSS 類需添加至 `globals.css`:
405
-
406
- ```css
407
- /* ===== Expandable Card ===== */
408
-
409
- /* 展開容器 - 使用 grid 技巧實現平滑高度動畫 */
410
- .expandable-content {
411
- display: grid;
412
- grid-template-rows: 0fr;
413
- transition: grid-template-rows 250ms ease-out;
414
- }
415
-
416
- .expandable-content[data-state="open"] {
417
- grid-template-rows: 1fr;
418
- }
419
-
420
- /* 折疊方向加速 */
421
- .expandable-content[data-state="closed"] {
422
- transition-duration: 200ms;
423
- }
424
-
425
- /* 內容包裹 */
426
- .expandable-content > .expandable-inner {
427
- overflow: hidden;
428
- }
429
-
430
- /* 內容淡入 */
431
- .expandable-inner > .expandable-detail {
432
- opacity: 0;
433
- transition: opacity 200ms ease-out 50ms;
434
- }
435
-
436
- .expandable-content[data-state="open"] > .expandable-inner > .expandable-detail {
437
- opacity: 1;
438
- }
439
-
440
- /* 分隔線 */
441
- .expand-separator {
442
- border-top: 1px dashed rgba(0, 255, 255, 0.2);
443
- }
444
-
445
- /* 展開圖標旋轉 */
446
- .expand-chevron {
447
- transition: transform 200ms ease-out;
448
- }
449
-
450
- .expand-chevron[data-state="open"] {
451
- transform: rotate(180deg);
452
- }
453
-
454
- /* 展開態卡片發光增強 */
455
- .hud-card[data-expanded="true"] {
456
- border-color: rgba(0, 255, 255, 0.5);
457
- box-shadow: 0 0 15px rgba(0, 255, 255, 0.15);
458
- }
459
-
460
- /* 詳情區塊標題 */
461
- .detail-section-header {
462
- display: flex;
463
- align-items: center;
464
- gap: 6px;
465
- font-size: 12px;
466
- color: rgba(0, 255, 255, 0.6);
467
- text-transform: uppercase;
468
- letter-spacing: 0.5px;
469
- }
470
-
471
- /* 詳情區塊內容 */
472
- .detail-section-content {
473
- margin-top: 4px;
474
- padding-left: 16px;
475
- font-size: 13px;
476
- color: #cbd5e1; /* slate-300 */
477
- }
478
- ```
479
-
480
- ---
481
-
482
- ## 10. 實作優先級與依賴
483
-
484
- ```
485
- TASK_091 (本設計規範) ✅
486
- └── TASK_092 (通用 ExpandableCard 組件)
487
- ├── TASK_093 (TaskCard 詳細內容整合)
488
- └── TASK_094 (ProposalCard 詳細內容整合)
489
- ```
490
-
491
- ### TASK_092 實作要點
492
- 1. 建立 `dashboard/src/components/ui/expandable-card/ExpandableCard.tsx`
493
- 2. 添加 CSS 類至 `globals.css`
494
- 3. 使用 Radix UI 的 `Collapsible` 原語或自建(推薦自建以保持輕量)
495
- 4. 支援 `variant="hud"` 和 `variant="bordered"` 兩種視覺樣式
496
-
497
- ### TASK_093 實作要點
498
- 1. 拆分 TaskCard 為 Summary + Detail
499
- 2. TaskDetailContent 顯示:描述、依賴、Scope Paths、驗收標準
500
- 3. 保持現有 TaskCard 的外觀完全不變(折疊態 = 當前樣式)
501
-
502
- ### TASK_094 實作要點
503
- 1. 拆分 ProposalCard 為 Summary + Detail
504
- 2. ProposalDetailContent 顯示:完整理由、所有受影響文件、Diff 按鈕、操作按鈕
505
- 3. 保持現有 ProposalCard 的外觀完全不變(折疊態 = 當前樣式)
506
-
507
- ---
508
-
509
- *Generated by Designer Agent | 2026-02-06*
@@ -1,52 +0,0 @@
1
- # Active Jev correction experiment
2
-
3
- Local implementation and verification: 2026-09-20. This is a user-authorized opt-in experiment, not a claim of validated model quality or an installer release.
4
-
5
- ## Enable and disable
6
-
7
- In **Default Models**, use the single **Jev-assisted judgments** switch for the current project (TASK_1970). It controls correction detection and Thalamus context ranking together, defaults to OFF, and saves both `jevCorrectionEnabled` and `jevThalamusEnabled` in one atomic settings request. The runtime keeps these project-local fields for compatibility; it does not inherit them from the Kenaz core project. Partial legacy settings are displayed as mixed, and the next check enables both.
8
-
9
- Provide your own `TYPESAFE_API_KEY` in the environment used to launch Kenaz, then restart Kenaz and its workers after changing that environment. The UI reports key presence, not a successful authentication check. There is no key input or key storage in these settings. On Windows, TASK_1971 startup reads the saved user environment key from HKCU only when the process variable is absent, so an older parent terminal does not prevent loading it. An explicitly present process value always wins; existing workers still need relaunching to inherit changes. Users without a key retain the existing workflow, even if the enabled preference was saved.
10
-
11
- ON makes valid Jev results authoritative for correction classification on the selected messages: positives add correction and make it the primary signal; negatives remove correction. Other label values, their relative order, and existing translation text are preserved. Existing consumers that process only the primary signal consequently follow correction instead of another primary label on positive results. Jev is not a text-generation model and does not replace the Ansuz or dispatch model selection.
12
-
13
- OFF restores the existing workflow for **future** judgments. It does not erase or undo previously accumulated user-profile signals, expertise changes, or feedback. In-flight results are discarded if the flag is OFF when they return.
14
-
15
- The shared extraction function is called by ordinary Muninn observations, the incremental Muninn watcher, and manual `backfill-user-model.js` runs. Consequently, running a manual historical backfill with this project flag and a valid key can also send eligible historical messages to Jev. No such backfill was performed for this implementation. The flag is project-local, while the existing profile writer stores results in the cross-project `~/.kenaz/user_profile.json`. Jev correction classification is not currently connected to Thalamus stimulation or context ranking.
16
-
17
- ## Execution and fallback
18
-
19
- The existing synchronous Muninn/Haiku translation and classification still runs first. Jev then overlays correction decisions using fixed model `jev-1.13.0` and experimental probability threshold **0.5**, which is not calibrated on human-reviewed historical cases. This integration does not establish a whole-workflow speedup.
20
-
21
- Each batch selects at most eight eligible recent user messages from a bounded scan. Each request contains only its target message and up to four preceding visible conversation entries; no later message is shared with earlier targets. Known credential patterns and generated instruction blocks are filtered before transmission. The combined worker input is capped at 32 KiB. Opting in sends this limited conversation context to TypeSafe.
22
-
23
- A hidden Node worker sends isolated requests concurrently, with a shared 800 ms network deadline including response bodies and a 1,500 ms outer process timeout. There are no retries or configurable endpoint redirects. Any selected request failure or invalid response retains the complete original classification. Missing configuration, OFF, or a missing/invalid key makes no Jev request. If Haiku fails but Jev succeeds, positive correction-only signals can be emitted without inventing a translation.
24
-
25
- ## Local feedback
26
-
27
- - `<project>/.kenaz/jev/decisions.jsonl`: best-effort, size-limited decision metadata, including hashed message IDs, probabilities, original correction flags, changed flags, latency, and fallback reasons. It excludes message text, keys, headers, and provider error bodies.
28
- - `<project>/.kenaz/jev/feedback.jsonl`: up to 200 **Helpful / Incorrect judgment** feedback events, with timestamp, model, enabled preference, verdict, and feature scope. The unified control records `feature: all`; historical correction/Thalamus classifications are preserved, and missing historical feature means correction. These describe overall experience, not adjudicated labels for individual cases.
29
-
30
- These new records are not automatically uploaded. They do not change the pre-existing user-profile storage behavior. General feedback and disagreement with the baseline cannot be interpreted as accuracy measurements without case-level review.
31
-
32
- Settings requests validate the expected project. Writes preserve omitted fields, serialize concurrent updates, and replace files atomically. The frontend only displays acknowledged changes, discards old project responses, imposes a five-second request/body deadline, and does not automatically retry mutations whose acknowledgement may have been lost.
33
-
34
- ## Verification and remaining limits
35
-
36
- Verified locally:
37
-
38
- - 16 runtime tests, including real `extractUserSignals` to `updateUserModel` integration against an isolated temporary profile; positive, negative, OFF, timeout, privacy, and fallback cases.
39
- - 54 existing research tests; combined Node run: **70/70**.
40
- - 13 frontend controller/SSR tests; full Dashboard TypeScript check passed.
41
- - 8 Rust settings tests, including actual temporary-file persistence, concurrent partial updates, explicit false, project/stale-write rejection, and feedback retention.
42
- - ESLint completed with zero errors and 31 style warnings; diff whitespace checks passed.
43
- - A real isolated Node worker without a key returned `missing_key` without network access.
44
- - Local HTTP rejection probes: status GET with a wrong project returned `409 project_mismatch`; models POST with a wrong project returned 409; invalid feedback verdict returned 422. These probes did not enable the feature or save feedback.
45
-
46
- No real historical messages were submitted to Jev during this implementation. The production adapter has not undergone a live model-quality evaluation, browser DOM interaction acceptance, or installed-build validation. Previous synthetic latency results are evidence for the earlier smoke requests, not a latency guarantee for this integrated workflow.
47
-
48
- Changes remain local and uncommitted; no installer was built or released. The packaging script `dashboard/scripts/kenaz-core-staging.js` stages Git-tracked files only. New runtime files must be included in the tracked release changes before packaging, or the optional adapter will be absent and Muninn will retain the baseline.
49
-
50
- Follow-up [packaging verification](PACKAGING_VERIFICATION.md) exercised the real staging function in an isolated candidate and passed staged-worker no-key and mocked decision checks. The real index still omits the untracked helper; this verification does not remove that release prerequisite or establish installed-build acceptance.
51
-
52
- See [evaluation status](EVALUATION_STATUS.md) for the unchanged quality evidence and historical-corpus limitations.
@@ -1,68 +0,0 @@
1
- # Jev 評測資料與標註規則
2
-
3
- 狀態:研究資料契約。內附合成案例由代理提出,未經獨立人工驗證,不能用來宣稱 Jev 在 Kenaz 的準確率或達成正式上線門檻。
4
-
5
- ## 資料來源與審閱狀態
6
-
7
- `provenance.source` 為 `synthetic` 或 `real`;`provenance.annotation` 為 `agent_proposed` 或 `human_verified`。兩者是獨立維度:人檢查過的合成案例仍然是 synthetic,從真實對話取得但由模型標註的資料仍然是 agent_proposed。
8
-
9
- human_verified 必須有可追蹤的非空 reviewer 和 ISO reviewed_at。這些欄位只記錄審閱宣告,程式不能證明人真的審閱過。正式評測需要保存 review 記錄,不能批次改欄位來「通過」。
10
-
11
- 原始資料保持在本地;評測集只放完成判斷所需的去識別片段。不要輸入帳號、金鑰、個資、未授權外送的商務內容或完整 private transcript。這個工具不自動抓取 live session,也不自動上傳現有 Synapse。
12
-
13
- ## Correction:判斷是否修正目前理解
14
-
15
- 正例:最新訊息明確更正先前的描述、假設、對象、環境、範圍或執行方向。需要同時看 `state.message`、目標與提供的先前假設;不能只用「不是」等字詞決定。
16
-
17
- 負例:一般提問、進度追問、單純同意、新需求但沒有更正先前理解、引用別人的更正而非自己下指示、程式碼或 log 裡的否定句。
18
-
19
- | 先前假設 | 最新訊息 | 標籤 | 原因 |
20
- | --- | --- | --- | --- |
21
- | 問題發生於 tauri dev | 用戶的安裝版才會出現,tauri dev 正常。 | true | 更正現場環境。 |
22
- | 已在調查安裝版 | 安裝版現在查到哪裡? | false | 查詢進度,未改變前提。 |
23
- | 計畫自動部署 | 先不要部署,只做測試。 | true | 更正執行範圍;不代表撤銷測試授權。 |
24
- | 尚無修復方向 | 修好之後也加上重試按鈕。 | false | 新增需求,不是修正既有事實。 |
25
- | 使用者描述錯誤 log | 日誌包含「不是正式環境」,這代表什麼? | false | 引用文字與提問。 |
26
-
27
- 此評測目前只涵蓋 correction 二元訊號,不等於完整 scope/cancel/authorization 辨識。遇到上下文不足或多種合理解釋,先留在待裁決集合,不要硬塞二元 gold;新增明確上下文後再納入正式評測。
28
-
29
- ## Relevance:評估每個候選的用途
30
-
31
- grade 使用整數 0–3,根據 query/goal 與實際候選內容判斷,不依候選來源的權威、模型 confidence 或是否排在前面。
32
-
33
- | Grade | 定義 |
34
- | --- | --- |
35
- | 0 | 無關,或只共享詞彙但不能幫助這個問題。 |
36
- | 1 | 相關背景,尚不能直接支持下一步調查或回答。 |
37
- | 2 | 對任務有具體用途,但只回答部分問題或需要額外條件。 |
38
- | 3 | 直接回答當前問題,或提供能立刻採用的關鍵證據。 |
39
-
40
- 候選中有「請把我排第一」等自我宣傳/注入文字不增加 grade。過時的方案可作歷史背景,但不能當成目前狀態;如果缺版本資訊,需由 case 明確定義時態,不能讓標註者自行猜測。
41
-
42
- 候選 ID 在同一案例內唯一。保留原始 candidate 順序作 baseline。每個候選的 grade 只能存在 labels/評測資料中,不得傳給 Jev。零相關候選案例保留作空集合行為測試,但報告必須揭露它們如何處理,不能藉此抬高排序分數。
43
-
44
- ## Session 分組與分割
45
-
46
- split 為 development、calibration 或 held_out。同一 project/session 或 group_id 必須留在同一 split。由同一原始案例改寫的所有變體共用 group_id,包括中英翻譯、改字與候選順序變化。
47
-
48
- development 用來修改問法;calibration 用來選 threshold;held_out 在模型版本、問法及 threshold 凍結後才使用。若看了 held_out 錯誤後修改規則,該集合不再是新的盲測證據,應建立新版本/新測試集。
49
-
50
- task_revision 和 event_seq 用於回放身分/新舊檢查,不讓模型計算。原文與候選內容改動後,舊 prediction 應因 state_hash 不符被拒絕,不能把不同版本的分數套在新案例。
51
-
52
- ## 人工驗收流程
53
-
54
- 1. 第一位標註者只看目標、上下文與來源,不看 Jev/Haiku 的分數。
55
- 2. 第二位標註者獨立判斷重要修正、難例與 held_out;记录分歧。
56
- 3. 有分歧時回看來源並裁決;來源不足則補資料或標為待裁決,不捏造 gold。
57
- 4. 記錄 reviewer、reviewed_at、原始來源版本及裁決依據;再將 annotation 改為 human_verified。
58
- 5. 報告語言分布、正負例分母、失敗/abstention 比例及信賴區間。
59
-
60
- 計畫的 500 則訊息、100 組 recall、30 段交接是後續正式資料目標。小型合成 fixtures 是工程回歸工具,不代表這些目標已完成。
61
-
62
- ## 報告的解讀
63
-
64
- - rules 是確定性比較基準,不是 Jev 的模擬準確度。
65
- - replay 是指定 prediction 的回放;其 latency 是錄製數值,不是本次網路測量。
66
- - live 才能產生本次供應商延遲;需標示模型實際版本、輸入長度、錯誤與冷熱連線。
67
- - accuracy/precision/recall 在成功回答子集上的數字必須搭配 coverage;不得隱藏未回答樣本。
68
- - `promotion_eligible` 在本原型固定為 false。正式升級必須另外審閱 held_out 與端到端任務結果。
@@ -1,45 +0,0 @@
1
- # Muninn 與 Jev 比較紀錄
2
-
3
- 範圍:TASK_34 新增隔離的研究量測工具,不修改 production Muninn,也不執行記憶觀察、符號刺激或 user-model 更新。
4
-
5
- ## 比較對象
6
-
7
- 現行 `.formation/tools/muninn.js:translateAndClassifyMessages` 把訊息編號後,一次要求 Haiku 輸出 translated 欄位與七種標籤:correction、question、delegation、evidence_seeking、challenge、length_too_long、length_too_short。註解預期英文翻譯,但實際 PROMPT_HEADER 沒有明說目標語言;不能只憑欄位非空就判定符合英文契約。它不接收本評測集的 goal 或 assumptions。
8
-
9
- 既有 Jev provider 每個案例以 goal、assumptions、message 提問,correction 是一個 Noul,其他用途是候選 Score。之前的 Jev 實測因此不能直接作為這個 Haiku 批次的同功能速度比。
10
-
11
- 研究工具從現有 Muninn 檔案讀取函式,在 stubbed 模組環境擷取真實提示及解析流程,保留 source 與 prompt SHA-256。離線預設不呼叫 Claude;live 只接受 synthetic 資料,用明確指定的 CLI 執行檔,固定安全模式、無工具、無 session persistence、無自訂 hooks/MCP。不把來源函式原本的權限略過參數帶入測量。
12
-
13
- 這保留了應用提示與解析邏輯,卻不包含正式環境的 hooks、啟動設定或記憶副作用,所以名稱為「隔離的 Muninn prompt 基準」,不是完整 production 延遲。
14
-
15
- ## 驗收與度量
16
-
17
- - live 前先檢查資料來源;任何 real 案例使請求被拒絕,避免研究工具意外外送待審片段。
18
- - 檢查回傳的每個 idx 唯一、完整且順序正確;翻譯非空、標籤屬於已知集合。先檢查 raw 結構,不能靠現有解析器過濾未知標籤後假裝正常。
19
- - 記錄整批 wall time,不把整批時間除以筆數後叫作單筆 p50/p95。
20
- - 翻譯非空只代表欄位存在,並不代表翻譯正確。
21
- - 更正 confusion 只對目前 synthetic/agent_proposed 的暫定標籤計算,不當作獨立真人品質評估。
22
- - model metadata 以 CLI 實際回傳為準;若未提供,只能記錄請求的 haiku alias,不能自行宣稱確切模型版本。
23
-
24
- ## 本機資料來源盤點
25
-
26
- 這次只盤點專案 `.kenaz/transcripts`:找到一份 failed 任務 JSONL,1,070,252 bytes、897 筆可解析記錄,其中 22 筆具有 user role。沒有輸出原始內容、沒有外送。這不足以達成 500 則跨 session 資料,也不應把工具/系統注入訊息當成真實用戶意圖。
27
-
28
- 擴充資料仍需確認多 session 來源、過濾系統注入與重複內容、去識別及人工覆核。未取得來源選擇前,維持已準備的 6 筆真實待審片段與 11 筆合成回歸案例。
29
-
30
- ## 執行結果
31
-
32
- 主代理獨立重跑完整套件,33/33 通過(新增 7 項);離線預設成功擷取 8 筆合成訊息的原始提示與 parser 契約,metrics 為 null。另以真實待審 seed 執行 live CLI,確認在 subprocess 前以 synthetic_only 拒絕。
33
-
34
- 兩次合成批次呼叫及一次最小診斷呼叫皆未取得有效回答。CLI exit=1、is_error=true,訊息為週額度已用完、重設時間顯示 4pm (Asia/Taipei),已停止重試。CLI subtype 雖顯示 success,不能覆蓋 exit/is_error 的失敗事實。第一次約 1708ms 是失敗的整批流程耗時,不是 Haiku 模型推論延遲。
35
-
36
- 因此 Haiku confusion、正確率、成功推論延遲均未計算;沒有 Jev/Haiku 加速倍數。詳見 [原始摘要](reports/muninn-baseline-2026-09-20.json)。
37
-
38
- 可重跑命令(live 需要本機 Claude 登入與可用額度):
39
-
40
- ```powershell
41
- node dev/jev-eval/muninn-baseline.mjs
42
- node dev/jev-eval/muninn-baseline.mjs --live --claude-cli <本機Claude執行檔絕對路徑>
43
- ```
44
-
45
- CLI 產生報告即可能 exit=0,即使 report.status 是 invalid_or_failed_subprocess;消費者必須同時檢查 status,不能只看程序成功。沒有輸出 raw prompt、回答或金鑰。promotion_eligible 維持 false,沒有 production 整合或安裝包驗收。額度恢復與多 session 來源確認後,才能繼續補齊這部分實測。