@proflandrigan/shards 1.1.0
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/README.md +475 -0
- package/package.json +37 -0
- package/src/agents/academic.md +276 -0
- package/src/agents/ai-engineer.md +377 -0
- package/src/agents/analytics-engineer.md +364 -0
- package/src/agents/applied-ml-scientist.md +410 -0
- package/src/agents/backend-engineer.md +255 -0
- package/src/agents/bi-engineer.md +333 -0
- package/src/agents/data-analyst.md +343 -0
- package/src/agents/data-engineer.md +260 -0
- package/src/agents/data-modeller.md +386 -0
- package/src/agents/data-scientist.md +366 -0
- package/src/agents/deep-learning-engineer.md +389 -0
- package/src/agents/ml-engineer.md +424 -0
- package/src/agents/mlops-engineer.md +339 -0
- package/src/agents/researcher.md +187 -0
- package/src/agents/specific_instructions/academic/critical_review.md +263 -0
- package/src/agents/specific_instructions/academic/report.md +113 -0
- package/src/agents/specific_instructions/ai_engineer/advise.md +162 -0
- package/src/agents/specific_instructions/ai_engineer/bi_engineer_handoff.md +86 -0
- package/src/agents/specific_instructions/ai_engineer/experiment.md +471 -0
- package/src/agents/specific_instructions/ai_engineer/experiment_ui_mode.md +44 -0
- package/src/agents/specific_instructions/ai_engineer/phases/index.md +45 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-1.md +55 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-2.md +86 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-3.md +96 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-4.md +138 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-5.md +157 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-6.md +196 -0
- package/src/agents/specific_instructions/ai_engineer/phases/phase-7.md +313 -0
- package/src/agents/specific_instructions/ai_engineer/phases.md +1011 -0
- package/src/agents/specific_instructions/ai_engineer/prompt_lab.md +161 -0
- package/src/agents/specific_instructions/ai_engineer/prompt_lab_ui_mode.md +28 -0
- package/src/agents/specific_instructions/ai_engineer/research.md +393 -0
- package/src/agents/specific_instructions/ai_engineer/research_ui_mode.md +66 -0
- package/src/agents/specific_instructions/ai_engineer/review.md +159 -0
- package/src/agents/specific_instructions/ai_engineer/validation_checklist.md +182 -0
- package/src/agents/specific_instructions/analytics_engineer/advise.md +155 -0
- package/src/agents/specific_instructions/analytics_engineer/bi_engineer_handoff.md +91 -0
- package/src/agents/specific_instructions/analytics_engineer/data_analyst_handoff.md +84 -0
- package/src/agents/specific_instructions/analytics_engineer/deep_phases.md +818 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/index.md +24 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-1.md +77 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-2.md +106 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-3.md +93 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-4.md +79 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-5.md +61 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-6.md +45 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-7.md +235 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_deep/phase-8.md +221 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_quick/index.md +19 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_quick/phase-1.md +47 -0
- package/src/agents/specific_instructions/analytics_engineer/phases_quick/phase-2.md +78 -0
- package/src/agents/specific_instructions/analytics_engineer/quick_phases.md +112 -0
- package/src/agents/specific_instructions/analytics_engineer/review.md +167 -0
- package/src/agents/specific_instructions/analytics_engineer/service_mode.md +369 -0
- package/src/agents/specific_instructions/analytics_engineer/ui_mode.md +45 -0
- package/src/agents/specific_instructions/analytics_engineer/update.md +162 -0
- package/src/agents/specific_instructions/analytics_engineer/validation_checklist.md +121 -0
- package/src/agents/specific_instructions/applied_ml_scientist/advise.md +143 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/index.md +21 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/phase-1.md +51 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/phase-2.md +66 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/phase-3.md +113 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/phase-4.md +104 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases/phase-5.md +156 -0
- package/src/agents/specific_instructions/applied_ml_scientist/phases.md +428 -0
- package/src/agents/specific_instructions/applied_ml_scientist/research.md +379 -0
- package/src/agents/specific_instructions/applied_ml_scientist/review.md +142 -0
- package/src/agents/specific_instructions/applied_ml_scientist/validation_checklist.md +136 -0
- package/src/agents/specific_instructions/backend_engineer/clean.md +149 -0
- package/src/agents/specific_instructions/backend_engineer/review.md +91 -0
- package/src/agents/specific_instructions/backend_engineer/review_checklist.md +54 -0
- package/src/agents/specific_instructions/backend_engineer/service_mode.md +67 -0
- package/src/agents/specific_instructions/bi_engineer/advise.md +137 -0
- package/src/agents/specific_instructions/bi_engineer/data_analyst_handoff.md +77 -0
- package/src/agents/specific_instructions/bi_engineer/incoming_handoff.md +45 -0
- package/src/agents/specific_instructions/bi_engineer/phases/index.md +20 -0
- package/src/agents/specific_instructions/bi_engineer/phases/phase-1.md +164 -0
- package/src/agents/specific_instructions/bi_engineer/phases/phase-2.md +92 -0
- package/src/agents/specific_instructions/bi_engineer/phases/phase-3.md +121 -0
- package/src/agents/specific_instructions/bi_engineer/phases/phase-4.md +106 -0
- package/src/agents/specific_instructions/bi_engineer/phases.md +451 -0
- package/src/agents/specific_instructions/bi_engineer/review.md +166 -0
- package/src/agents/specific_instructions/bi_engineer/update.md +147 -0
- package/src/agents/specific_instructions/bi_engineer/validation_checklist.md +124 -0
- package/src/agents/specific_instructions/data_analyst/advise.md +138 -0
- package/src/agents/specific_instructions/data_analyst/explain.md +221 -0
- package/src/agents/specific_instructions/data_analyst/incoming_handoff.md +40 -0
- package/src/agents/specific_instructions/data_analyst/phases/index.md +20 -0
- package/src/agents/specific_instructions/data_analyst/phases/phase-1.md +159 -0
- package/src/agents/specific_instructions/data_analyst/phases/phase-2.md +112 -0
- package/src/agents/specific_instructions/data_analyst/phases/phase-3.md +265 -0
- package/src/agents/specific_instructions/data_analyst/phases/phase-4.md +100 -0
- package/src/agents/specific_instructions/data_analyst/phases.md +501 -0
- package/src/agents/specific_instructions/data_analyst/review.md +138 -0
- package/src/agents/specific_instructions/data_analyst/ui_mode.md +26 -0
- package/src/agents/specific_instructions/data_analyst/update.md +144 -0
- package/src/agents/specific_instructions/data_analyst/validation_checklist.md +95 -0
- package/src/agents/specific_instructions/data_engineer/advise.md +137 -0
- package/src/agents/specific_instructions/data_engineer/phases.md +466 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/index.md +23 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-1.md +49 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-2.md +93 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-3.md +55 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-4.md +48 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-5.md +40 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-6.md +102 -0
- package/src/agents/specific_instructions/data_engineer/phases_deep/phase-7.md +87 -0
- package/src/agents/specific_instructions/data_engineer/phases_quick/index.md +19 -0
- package/src/agents/specific_instructions/data_engineer/phases_quick/phase-1.md +45 -0
- package/src/agents/specific_instructions/data_engineer/phases_quick/phase-2.md +54 -0
- package/src/agents/specific_instructions/data_engineer/review.md +135 -0
- package/src/agents/specific_instructions/data_engineer/validation_checklist.md +136 -0
- package/src/agents/specific_instructions/data_modeller/advise.md +137 -0
- package/src/agents/specific_instructions/data_modeller/phases.md +581 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/index.md +23 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-1.md +52 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-2.md +113 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-3.md +47 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-4.md +51 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-5.md +45 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-6.md +105 -0
- package/src/agents/specific_instructions/data_modeller/phases_deep/phase-7.md +136 -0
- package/src/agents/specific_instructions/data_modeller/phases_quick/index.md +19 -0
- package/src/agents/specific_instructions/data_modeller/phases_quick/phase-1.md +47 -0
- package/src/agents/specific_instructions/data_modeller/phases_quick/phase-2.md +65 -0
- package/src/agents/specific_instructions/data_modeller/review.md +141 -0
- package/src/agents/specific_instructions/data_modeller/service_mode.md +218 -0
- package/src/agents/specific_instructions/data_modeller/validation_checklist.md +125 -0
- package/src/agents/specific_instructions/data_scientist/advise.md +158 -0
- package/src/agents/specific_instructions/data_scientist/bi_engineer_handoff.md +63 -0
- package/src/agents/specific_instructions/data_scientist/experiment.md +482 -0
- package/src/agents/specific_instructions/data_scientist/experiment_ui_mode.md +44 -0
- package/src/agents/specific_instructions/data_scientist/explain.md +247 -0
- package/src/agents/specific_instructions/data_scientist/greenfield_data.md +35 -0
- package/src/agents/specific_instructions/data_scientist/ml_engineer_handoff.md +52 -0
- package/src/agents/specific_instructions/data_scientist/notebook_walkthrough.md +76 -0
- package/src/agents/specific_instructions/data_scientist/phases/index.md +24 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-1.md +45 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-2.md +67 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-3.md +89 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-4.md +143 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-5.md +71 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-6.md +239 -0
- package/src/agents/specific_instructions/data_scientist/phases/phase-7.md +207 -0
- package/src/agents/specific_instructions/data_scientist/phases.md +651 -0
- package/src/agents/specific_instructions/data_scientist/research.md +345 -0
- package/src/agents/specific_instructions/data_scientist/research_ui_mode.md +52 -0
- package/src/agents/specific_instructions/data_scientist/review.md +136 -0
- package/src/agents/specific_instructions/data_scientist/service_mode.md +247 -0
- package/src/agents/specific_instructions/data_scientist/validation_checklist.md +183 -0
- package/src/agents/specific_instructions/deep_learning_engineer/advise.md +145 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/index.md +21 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/phase-1.md +74 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/phase-2.md +98 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/phase-3.md +76 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/phase-4.md +128 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases/phase-5.md +292 -0
- package/src/agents/specific_instructions/deep_learning_engineer/phases.md +567 -0
- package/src/agents/specific_instructions/deep_learning_engineer/research.md +389 -0
- package/src/agents/specific_instructions/deep_learning_engineer/review.md +155 -0
- package/src/agents/specific_instructions/deep_learning_engineer/validation_checklist.md +147 -0
- package/src/agents/specific_instructions/ml_engineer/advise.md +174 -0
- package/src/agents/specific_instructions/ml_engineer/bi_engineer_handoff.md +71 -0
- package/src/agents/specific_instructions/ml_engineer/experiment.md +474 -0
- package/src/agents/specific_instructions/ml_engineer/experiment_ui_mode.md +44 -0
- package/src/agents/specific_instructions/ml_engineer/notebook_walkthrough.md +75 -0
- package/src/agents/specific_instructions/ml_engineer/phases/index.md +25 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-1.md +49 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-2.md +75 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-3.md +124 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-4.md +279 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-5.md +160 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-6-5.md +170 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-6.md +295 -0
- package/src/agents/specific_instructions/ml_engineer/phases/phase-7.md +337 -0
- package/src/agents/specific_instructions/ml_engineer/phases.md +1068 -0
- package/src/agents/specific_instructions/ml_engineer/research.md +437 -0
- package/src/agents/specific_instructions/ml_engineer/research_ui_mode.md +71 -0
- package/src/agents/specific_instructions/ml_engineer/review.md +187 -0
- package/src/agents/specific_instructions/ml_engineer/service_mode.md +273 -0
- package/src/agents/specific_instructions/ml_engineer/validation_checklist.md +185 -0
- package/src/agents/specific_instructions/mlops_engineer/advise.md +139 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/index.md +23 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-1.md +52 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-2.md +86 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-3.md +105 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-4.md +128 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-5.md +106 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-6.md +128 -0
- package/src/agents/specific_instructions/mlops_engineer/phases/phase-7.md +144 -0
- package/src/agents/specific_instructions/mlops_engineer/phases.md +671 -0
- package/src/agents/specific_instructions/mlops_engineer/review.md +164 -0
- package/src/agents/specific_instructions/mlops_engineer/service_mode.md +81 -0
- package/src/agents/specific_instructions/mlops_engineer/validation_checklist.md +151 -0
- package/src/agents/specific_instructions/researcher/critical_review.md +292 -0
- package/src/agents/specific_instructions/researcher/review_checklist.md +67 -0
- package/src/agents/specific_instructions/researcher/service_mode.md +224 -0
- package/src/agents/specific_instructions/shared/auto_verify_mode.md +141 -0
- package/src/agents/specific_instructions/shared/autonomous_research.md +1289 -0
- package/src/agents/specific_instructions/shared/behavioral_rules.md +36 -0
- package/src/agents/specific_instructions/shared/diverge_protocol.md +387 -0
- package/src/agents/specific_instructions/shared/engineering_guidelines.md +136 -0
- package/src/agents/specific_instructions/shared/experiment_versioning.md +184 -0
- package/src/agents/specific_instructions/shared/goal_mode.md +187 -0
- package/src/agents/specific_instructions/shared/incremental_testing.md +139 -0
- package/src/agents/specific_instructions/shared/intent_discovery.md +223 -0
- package/src/agents/specific_instructions/shared/join_path_protocol.md +168 -0
- package/src/agents/specific_instructions/shared/knowledge_checkpoint.md +83 -0
- package/src/agents/specific_instructions/shared/knowledge_harvest.md +220 -0
- package/src/agents/specific_instructions/shared/knowledge_retrieval.md +100 -0
- package/src/agents/specific_instructions/shared/notebook_walkthrough_protocol.md +367 -0
- package/src/agents/specific_instructions/shared/reviewer_verdict_protocol.md +74 -0
- package/src/agents/specific_instructions/shared/swarm_protocol.md +97 -0
- package/src/agents/specific_instructions/shared/validation_protocol.md +139 -0
- package/src/agents/specific_instructions/syn/arbiter.md +140 -0
- package/src/agents/specific_instructions/syn/brainstorm.md +550 -0
- package/src/agents/specific_instructions/syn/code_review.md +232 -0
- package/src/agents/specific_instructions/syn/diff.md +239 -0
- package/src/agents/specific_instructions/syn/final_review.md +65 -0
- package/src/agents/specific_instructions/syn/fixer.md +240 -0
- package/src/agents/specific_instructions/syn/free_form.md +130 -0
- package/src/agents/specific_instructions/syn/knowledge.md +468 -0
- package/src/agents/specific_instructions/syn/notebook_walkthrough.md +78 -0
- package/src/agents/specific_instructions/syn/panel_review.md +634 -0
- package/src/agents/specific_instructions/syn/pm.md +453 -0
- package/src/agents/specific_instructions/syn/pr_review.md +255 -0
- package/src/agents/specific_instructions/syn/slides.md +417 -0
- package/src/agents/syn.md +729 -0
- package/src/commands/academic.md +41 -0
- package/src/commands/ai-engineer.md +45 -0
- package/src/commands/analytics-engineer.md +48 -0
- package/src/commands/applied-ml-scientist.md +45 -0
- package/src/commands/backend-engineer.md +35 -0
- package/src/commands/bi-engineer.md +40 -0
- package/src/commands/brainstorm.md +24 -0
- package/src/commands/data-analyst.md +38 -0
- package/src/commands/data-engineer.md +37 -0
- package/src/commands/data-modeller.md +38 -0
- package/src/commands/data-scientist.md +38 -0
- package/src/commands/deep-learning-engineer.md +47 -0
- package/src/commands/end.md +49 -0
- package/src/commands/knowledge.md +24 -0
- package/src/commands/ml-engineer.md +42 -0
- package/src/commands/mlops-engineer.md +47 -0
- package/src/commands/notebook-walkthrough.md +58 -0
- package/src/commands/researcher.md +40 -0
- package/src/commands/resume.md +57 -0
- package/src/commands/review-pr.md +26 -0
- package/src/commands/shards-guide.md +41 -0
- package/src/commands/shards-ui.md +32 -0
- package/src/commands/shards.md +41 -0
- package/src/docs/01-getting-started/concepts.md +109 -0
- package/src/docs/01-getting-started/first-session.md +79 -0
- package/src/docs/01-getting-started/install.md +61 -0
- package/src/docs/02-agents/academic.md +71 -0
- package/src/docs/02-agents/ai-engineer.md +78 -0
- package/src/docs/02-agents/analytics-engineer.md +58 -0
- package/src/docs/02-agents/applied-ml-scientist.md +59 -0
- package/src/docs/02-agents/backend-engineer.md +58 -0
- package/src/docs/02-agents/bi-engineer.md +65 -0
- package/src/docs/02-agents/data-analyst.md +67 -0
- package/src/docs/02-agents/data-engineer.md +57 -0
- package/src/docs/02-agents/data-modeller.md +51 -0
- package/src/docs/02-agents/data-scientist.md +78 -0
- package/src/docs/02-agents/deep-learning-engineer.md +64 -0
- package/src/docs/02-agents/ml-engineer.md +80 -0
- package/src/docs/02-agents/mlops-engineer.md +59 -0
- package/src/docs/02-agents/overview.md +62 -0
- package/src/docs/02-agents/researcher.md +73 -0
- package/src/docs/02-agents/syn.md +88 -0
- package/src/docs/03-protocols/auto-verify.md +82 -0
- package/src/docs/03-protocols/autonomous-research.md +59 -0
- package/src/docs/03-protocols/behavioral-rules.md +35 -0
- package/src/docs/03-protocols/diverge.md +50 -0
- package/src/docs/03-protocols/engineering-guidelines.md +56 -0
- package/src/docs/03-protocols/experiment-versioning.md +38 -0
- package/src/docs/03-protocols/gate-pattern.md +65 -0
- package/src/docs/03-protocols/incremental-testing.md +68 -0
- package/src/docs/03-protocols/join-path.md +46 -0
- package/src/docs/03-protocols/knowledge-ledger.md +70 -0
- package/src/docs/03-protocols/reviewer-verdicts.md +39 -0
- package/src/docs/03-protocols/swarm.md +40 -0
- package/src/docs/03-protocols/validation.md +174 -0
- package/src/docs/04-ui/activity-bar.md +70 -0
- package/src/docs/04-ui/chat-pane.md +80 -0
- package/src/docs/04-ui/code-intel.md +62 -0
- package/src/docs/04-ui/file-editing.md +61 -0
- package/src/docs/04-ui/git.md +54 -0
- package/src/docs/04-ui/keybindings.md +79 -0
- package/src/docs/04-ui/knowledge-map.md +76 -0
- package/src/docs/04-ui/overview.md +93 -0
- package/src/docs/04-ui/panels.md +49 -0
- package/src/docs/04-ui/pinboard-selection.md +66 -0
- package/src/docs/04-ui/quick-open-palette.md +56 -0
- package/src/docs/04-ui/sessions.md +81 -0
- package/src/docs/04-ui/settings-permissions.md +56 -0
- package/src/docs/05-commands/reference.md +59 -0
- package/src/docs/06-outputs/directory-map.md +116 -0
- package/src/docs/07-workflows/ai-eval-first.md +57 -0
- package/src/docs/07-workflows/deep-study-to-production.md +76 -0
- package/src/docs/07-workflows/diverge-exploration.md +77 -0
- package/src/docs/07-workflows/quick-analysis.md +45 -0
- package/src/docs/08-integrations/claude-code-auto-mode.md +191 -0
- package/src/docs/08-integrations/google-slides.md +175 -0
- package/src/docs/README.md +30 -0
- package/src/docs/manifest.json +108 -0
- package/src/templates/analysis-template.md +20 -0
- package/src/templates/branch-report.md +46 -0
- package/src/templates/diff-report.md +88 -0
- package/src/templates/knowledge-index.md +7 -0
- package/src/templates/model-card-schema.json +186 -0
- package/src/templates/model-card-schema.md +88 -0
- package/src/templates/model-card.md +124 -0
- package/src/templates/project-plan.md +47 -0
- package/src/templates/project-specs.md +81 -0
- package/src/templates/report-template.md +43 -0
- package/src/templates/study-template.md +25 -0
- package/src/ui/cc-readonly.js +181 -0
- package/src/ui/chat-session.js +466 -0
- package/src/ui/css/base.css +136 -0
- package/src/ui/css/brainstorm.css +525 -0
- package/src/ui/css/chat.css +1405 -0
- package/src/ui/css/editor.css +546 -0
- package/src/ui/css/eval-dashboard.css +157 -0
- package/src/ui/css/experiment.css +237 -0
- package/src/ui/css/guide.css +186 -0
- package/src/ui/css/knowledge-map.css +383 -0
- package/src/ui/css/layout.css +431 -0
- package/src/ui/css/model-card.css +161 -0
- package/src/ui/css/notebook-walkthrough.css +271 -0
- package/src/ui/css/pr-review.css +403 -0
- package/src/ui/css/prompt-lab.css +325 -0
- package/src/ui/css/sessions.css +258 -0
- package/src/ui/css/sidebar.css +661 -0
- package/src/ui/css/terminal.css +113 -0
- package/src/ui/css/theme-light.css +542 -0
- package/src/ui/index.html +389 -0
- package/src/ui/js/agents.js +32 -0
- package/src/ui/js/bookmarks.js +230 -0
- package/src/ui/js/chat.js +1776 -0
- package/src/ui/js/code-intel.js +328 -0
- package/src/ui/js/command-palette.js +142 -0
- package/src/ui/js/events.js +591 -0
- package/src/ui/js/explorer.js +317 -0
- package/src/ui/js/file-view.js +477 -0
- package/src/ui/js/git.js +536 -0
- package/src/ui/js/guide.js +198 -0
- package/src/ui/js/hud.js +75 -0
- package/src/ui/js/init.js +351 -0
- package/src/ui/js/knowledge-map.js +906 -0
- package/src/ui/js/markdown.js +114 -0
- package/src/ui/js/monaco.js +164 -0
- package/src/ui/js/notebook-walkthrough.js +272 -0
- package/src/ui/js/notebook.js +448 -0
- package/src/ui/js/panels.js +2681 -0
- package/src/ui/js/pinboard.js +186 -0
- package/src/ui/js/quick-open.js +164 -0
- package/src/ui/js/selection-context.js +131 -0
- package/src/ui/js/sessions.js +256 -0
- package/src/ui/js/settings.js +476 -0
- package/src/ui/js/split-view.js +82 -0
- package/src/ui/js/state.js +343 -0
- package/src/ui/js/table.js +161 -0
- package/src/ui/js/tabs.js +284 -0
- package/src/ui/js/tabular.js +125 -0
- package/src/ui/js/terminal.js +354 -0
- package/src/ui/js/timeline.js +137 -0
- package/src/ui/js/utils.js +293 -0
- package/src/ui/notebook-kernel.py +790 -0
- package/src/ui/open-browser.js +55 -0
- package/src/ui/permission-pattern.js +42 -0
- package/src/ui/relay.js +513 -0
- package/src/ui/server.js +3072 -0
- package/src/ui/session-index.js +225 -0
- package/src/ui/shards_icon.png +0 -0
- package/src/ui/spawn-server.js +41 -0
- package/src/ui/symbol-index.js +813 -0
- package/src/ui/ui-push.js +177 -0
- package/tools/gate-hook/VALIDATION_SPEC.md +273 -0
- package/tools/gate-hook/__tests__/auto-verify.test.js +343 -0
- package/tools/gate-hook/auto-allowlist.js +179 -0
- package/tools/gate-hook/auto-state.js +68 -0
- package/tools/gate-hook/classify.js +21 -0
- package/tools/gate-hook/log.js +57 -0
- package/tools/gate-hook/parser.js +205 -0
- package/tools/gate-hook/sql-guard.js +230 -0
- package/tools/gate-hook/state.js +170 -0
- package/tools/gate-hook/sweep.js +139 -0
- package/tools/gate-hook/transcript.js +45 -0
- package/tools/gate-hook/validation.js +321 -0
- package/tools/gate-hook.js +475 -0
- package/tools/install.js +914 -0
- package/tools/shards-gates.js +311 -0
- package/tools/shards-sessions.js +261 -0
- package/tools/shards-ui.js +377 -0
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: reviewer-verdict-protocol
|
|
3
|
+
description: Universal three-tier reviewer verdict mapping and escalation script for specialist agents
|
|
4
|
+
type: reference
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
When a consulted reviewer returns a verdict, map it to one of three universal tiers and act accordingly:
|
|
8
|
+
|
|
9
|
+
| Tier | Reviewer verdicts that map here | Action |
|
|
10
|
+
|------|---------------------------------|--------|
|
|
11
|
+
| **Proceed** | Sound · Approved · Aligned | Document verdict in specs. Continue. |
|
|
12
|
+
| **Proceed with caveats** | Concerns · Consider Alternatives | Document the concern verbatim in specs. Tell the user what was flagged. Gate: "Reviewer noted: [X] — documented in specs. Confirm to continue?" Proceed on user confirmation. |
|
|
13
|
+
| **Halt and fix** | Revise | Halt. Document the issue in specs. Fix it. Resubmit to the same reviewer ONCE. If still Halt on resubmission, escalate. |
|
|
14
|
+
|
|
15
|
+
## Reviewer Vocabulary
|
|
16
|
+
|
|
17
|
+
Each reviewer agent returns verdicts in a fixed vocabulary. The table below lists the canonical verdicts per reviewer and their tier mapping. Specialists consulting a reviewer do not need to restate this vocabulary in their phase instructions — they only need to invoke this protocol.
|
|
18
|
+
|
|
19
|
+
| Reviewer (subagent_type) | Verdict vocabulary | Tier mapping |
|
|
20
|
+
|--------------------------|--------------------|--------------|
|
|
21
|
+
| `researcher` | Sound / Consider Alternatives / Revise | Sound → Proceed · Consider Alternatives → Proceed with caveats · Revise → Halt and fix |
|
|
22
|
+
| `applied-ml-scientist` | Sound / Consider Alternatives / Revise | same as above |
|
|
23
|
+
| `data-modeller` (service mode) | Sound / Concerns / Revise | Sound → Proceed · Concerns → Proceed with caveats · Revise → Halt and fix |
|
|
24
|
+
| `analytics-engineer` (service mode) | Sound / Concerns / Revise | same as above |
|
|
25
|
+
| `backend-engineer` (service mode) | Sound / Concerns / Revise | same as above |
|
|
26
|
+
| `data-analyst` (reviewer role) | Aligned / Concerns raised | Aligned → Proceed · Concerns raised → Proceed with caveats |
|
|
27
|
+
| `data-engineer` (reviewer role) | Sound / Concerns | Sound → Proceed · Concerns → Proceed with caveats |
|
|
28
|
+
| `bi-engineer` (reviewer role) | Suitable / Concerns / Redesign | Suitable → Proceed · Concerns → Proceed with caveats · Redesign → Halt and fix |
|
|
29
|
+
| `deep-learning-engineer` (reviewer role) | Approved / Concerns / Redesign needed | Approved → Proceed · Concerns → Proceed with caveats · Redesign needed → Halt and fix |
|
|
30
|
+
| `mlops-engineer` (reviewer role) | Approved / Concerns / Redesign needed | same as above |
|
|
31
|
+
| `ml-engineer` (reviewer role) | DEPLOY / OPTIMIZE / REDESIGN | DEPLOY → Proceed · OPTIMIZE → Proceed with caveats · REDESIGN → Halt and fix |
|
|
32
|
+
| `academic` | Clear / Nuanced / Concerns | Clear → Proceed · Nuanced → Proceed with caveats · Concerns → Halt and fix |
|
|
33
|
+
|
|
34
|
+
If a reviewer returns a verdict not listed here, record it verbatim and default to the tier that most closely matches the semantic meaning (ask the user if ambiguous).
|
|
35
|
+
|
|
36
|
+
**Escalation script (use verbatim when a second Halt verdict is returned):**
|
|
37
|
+
> "[Reviewer] has flagged a concern twice. Here is the conflict:
|
|
38
|
+
> - Reviewer's concern: [verbatim from second review]
|
|
39
|
+
> - Current plan: [one-sentence summary of what exists]
|
|
40
|
+
>
|
|
41
|
+
> How would you like to proceed?
|
|
42
|
+
> (a) Revise further — tell me what to change.
|
|
43
|
+
> (b) Override and proceed — I'll document the disagreement in specs.
|
|
44
|
+
> (c) Stop the project."
|
|
45
|
+
|
|
46
|
+
Document the resolution in specs:
|
|
47
|
+
`**Reviewer resolution:** Approved | Approved on resubmit | User override — <rationale> | Project stopped`
|
|
48
|
+
|
|
49
|
+
**Resubmission cap:** Never resubmit to the same reviewer more than once per phase. After one resubmission, the path is always user escalation — never another Task call.
|
|
50
|
+
|
|
51
|
+
**Multi-reviewer arbitration:** When two reviewers in the same phase return conflicting tier verdicts, do not resolve unilaterally. Present both verdicts verbatim to the user with a one-sentence summary of the conflict. Ask which direction to take before making any changes. Document the user's decision in specs.
|
|
52
|
+
|
|
53
|
+
## Final Review (Syn Sign-Off) — Validation Section Check
|
|
54
|
+
|
|
55
|
+
When a specialist invokes Syn via `Task(subagent_type="syn", ...)` for final sign-off on a validation-eligible phase, Syn's review must explicitly inspect the `## Validation` section in `project-specs.md` per `shared/validation_protocol.md`. This is distinct from the gate hook's structural check — Syn performs the *semantic* check the hook cannot.
|
|
56
|
+
|
|
57
|
+
Syn's validation review looks for:
|
|
58
|
+
|
|
59
|
+
- **Evidence, not assertion.** Does every check row record a measured value, or is the Observed cell filled with prose that could be true of a broken implementation?
|
|
60
|
+
- **Coverage matching Track / Mode.** Did the specialist run the checks its declared `(Track, Mode)` requires, or did it skip checks with `n/a` without real justification?
|
|
61
|
+
- **Downstream impact honest.** Is "verified intact" supported by an actual check, or is it a claim?
|
|
62
|
+
- **Open Issues not hiding failures.** Unresolved `✗` rows and unacceptable residual risks should be surfaced, not quietly deprioritized.
|
|
63
|
+
- **Summary matches evidence.** Does the Summary paragraph describe what actually happened, or does it paper over failed checks?
|
|
64
|
+
|
|
65
|
+
Syn's verdict mapping:
|
|
66
|
+
|
|
67
|
+
| Validation state | Verdict |
|
|
68
|
+
|------------------|---------|
|
|
69
|
+
| Section populated, evidence is real, coverage appropriate, risks surfaced | APPROVED |
|
|
70
|
+
| Section populated but evidence is thin on 1-2 checks, coverage mostly correct | NEEDS REVISION — specific checks called out |
|
|
71
|
+
| Section missing checks from required list, or evidence is theater (assertions masquerading as measurements), or failed checks are hidden | NEEDS REVISION — point the specialist back to the protocol and checklist |
|
|
72
|
+
| Section claims `n/a` on clearly applicable checks with vague justifications | NEEDS REVISION — demand the actual check or a real justification |
|
|
73
|
+
|
|
74
|
+
A structurally-complete but semantically-empty Validation section is the most common failure mode. Syn is the last line of defense against it before a reviewer verdict is issued.
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Swarm Protocol — Decompose Large Work into Parallel Slices
|
|
2
|
+
|
|
3
|
+
This protocol defines Syn's **default behavior for genuinely large tasks**:
|
|
4
|
+
decompose the work into bounded, independently verifiable slices and run them
|
|
5
|
+
as multiple same-type subagents in parallel, then merge the results. It applies
|
|
6
|
+
whenever Syn orchestrates — PM Mode, Free Form, or general routing. It is the
|
|
7
|
+
default, not an opt-in mode. Syn is never limited to one instance of an agent
|
|
8
|
+
per project.
|
|
9
|
+
|
|
10
|
+
## When to swarm
|
|
11
|
+
|
|
12
|
+
Swarm when the task is genuinely large:
|
|
13
|
+
|
|
14
|
+
- The task touches many files, modules, or independent components.
|
|
15
|
+
- It contains several clearly separable sub-problems that can be worked in
|
|
16
|
+
parallel.
|
|
17
|
+
- One subagent would be carrying far more work than a single spawned task
|
|
18
|
+
should.
|
|
19
|
+
- The natural seams (data partitions, file sets, sub-questions, end-to-end
|
|
20
|
+
layers) allow slices to be worked independently.
|
|
21
|
+
|
|
22
|
+
Do NOT swarm when the task is small:
|
|
23
|
+
|
|
24
|
+
- A single SQL query, no matter how involved.
|
|
25
|
+
- A one-file change, small fix, or trivial update.
|
|
26
|
+
- Anything one agent completes cleanly in a single turn's work.
|
|
27
|
+
- Work whose only splits would force the slices to write to the same paths and
|
|
28
|
+
collide.
|
|
29
|
+
|
|
30
|
+
When in doubt, do not swarm. A single agent is the default; a swarm is a
|
|
31
|
+
deliberate response to genuine scale.
|
|
32
|
+
|
|
33
|
+
## Slice heuristics
|
|
34
|
+
|
|
35
|
+
Each slice must be:
|
|
36
|
+
|
|
37
|
+
- **Bounded** — one clearly-scoped sub-task, expressible in a short brief.
|
|
38
|
+
- **Independently verifiable** — it has its own definition of done.
|
|
39
|
+
- **Collision-free** — it writes to its own output paths (e.g.
|
|
40
|
+
`studies/<name>/slice-<n>/`), so parallel slices never overwrite each other.
|
|
41
|
+
- **Mergeable** — its outputs can be read from disk and integrated by Syn.
|
|
42
|
+
|
|
43
|
+
Slice names are short kebab-case slugs. If a slice is still too big after
|
|
44
|
+
slicing, slice it again rather than letting any subagent grind on an oversized
|
|
45
|
+
chunk.
|
|
46
|
+
|
|
47
|
+
## Spawn mechanics
|
|
48
|
+
|
|
49
|
+
Spawn all slices in a single parallel fan-out: one Task call per slice, all in
|
|
50
|
+
the same message. The `subagent_type` repeats across the calls — that is
|
|
51
|
+
expected and correct; same-type instances simply get different slice briefs.
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
Task(
|
|
55
|
+
subagent_type="<specialist>",
|
|
56
|
+
description="Slice: <slice-slug>",
|
|
57
|
+
prompt="""
|
|
58
|
+
SWARM SLICE — You are one of N parallel same-type subagents executing a slice
|
|
59
|
+
of a larger task that Syn orchestrated.
|
|
60
|
+
|
|
61
|
+
**Slice:** <slice-slug>
|
|
62
|
+
**Slice directory:** <path>
|
|
63
|
+
**Scope:** <what this slice specifically builds or analyzes>
|
|
64
|
+
**Inputs:** <what upstream slices or existing systems provide>
|
|
65
|
+
**Outputs:** <what this slice must produce, and where on disk>
|
|
66
|
+
**Definition of done:** <one sentence>
|
|
67
|
+
|
|
68
|
+
Work autonomously. Do not wait for user gates. When a phase file would stop
|
|
69
|
+
and emit a `::GATE::` fence waiting for user confirmation, do NOT stop and do
|
|
70
|
+
NOT emit the fence — document your decision for the merge step and continue to
|
|
71
|
+
the next phase. Skip your activation menu and Phase 0 — Syn has already scoped
|
|
72
|
+
your work. Do not invoke Syn for review. Return a concise report: artifacts
|
|
73
|
+
produced, key decisions, issues, confidence, and anything the merge step needs
|
|
74
|
+
to know.
|
|
75
|
+
"""
|
|
76
|
+
)
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## Review and merge
|
|
80
|
+
|
|
81
|
+
- **Review each slice** as its Task returns, against the slice's definition of
|
|
82
|
+
done: APPROVED / NEEDS REVISION / BLOCKED. Send a slice back for revision
|
|
83
|
+
with specific feedback when needed (same cap as PM Mode revisions).
|
|
84
|
+
- **Merge** after (some or all) slices pass: read each slice's artifacts from
|
|
85
|
+
disk, reconcile interfaces and outputs, write any glue, and produce the
|
|
86
|
+
workstream's single coherent deliverable. Record the merge in
|
|
87
|
+
`project-specs.md` or `project-plan.md` as appropriate.
|
|
88
|
+
- **Re-slice** if you find a slice was mis-sized: split it further and spawn
|
|
89
|
+
again rather than letting one agent grind.
|
|
90
|
+
|
|
91
|
+
## Cross-cutting rules
|
|
92
|
+
|
|
93
|
+
- Announce swarming to the user: how many slices, which types, what paths.
|
|
94
|
+
- Prefer parallel spawns — do not await one slice before dispatching the next.
|
|
95
|
+
- Guard your own context: read slice outputs from disk, not from Task output.
|
|
96
|
+
- Never degrade to a single massive workstream task when the work is large —
|
|
97
|
+
decompose is the default.
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: validation-protocol
|
|
3
|
+
description: Shared validation contract — every specialist produces evidence of output correctness before closing build/execute phases
|
|
4
|
+
type: reference
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Validation Protocol
|
|
8
|
+
|
|
9
|
+
Validation is a universal contract across all specialist agents. Before closing any phase whose `kind` is `execute` or `phase` and whose work produces new or modified artifacts (marts, models, notebooks, services, datasets, pipelines, dashboards), the agent must produce **evidence** that the outputs are correct — not merely an assertion that they are.
|
|
10
|
+
|
|
11
|
+
This protocol defines *what* validation means and *where* evidence lands. Each specialist has a domain-specific `validation_checklist.md` that defines *which* checks apply. A separate gate-hook extension enforces that the evidence is present before the gate closes.
|
|
12
|
+
|
|
13
|
+
## The Contract
|
|
14
|
+
|
|
15
|
+
Every validation-eligible phase produces three things:
|
|
16
|
+
|
|
17
|
+
1. **A populated `## Validation` section in `project-specs.md`** — the bridge between soft protocol and hard enforcement.
|
|
18
|
+
2. **At least one evidence artifact on disk** — a file the user or a reviewer can open to inspect the results. This includes test files (preferred where applicable), metric dumps, plots, config snapshots, model artifacts, or verification query outputs. Prose in specs is context, not evidence.
|
|
19
|
+
3. **A named checklist version** — which agent checklist was applied, so coverage is auditable.
|
|
20
|
+
|
|
21
|
+
If any of the three is missing, the gate does not close.
|
|
22
|
+
|
|
23
|
+
## Evidence vs Assertion
|
|
24
|
+
|
|
25
|
+
The protocol requires *outputs*, not *claims*. Numbers and file paths are harder to hallucinate than prose.
|
|
26
|
+
|
|
27
|
+
| Evidence (accept) | Assertion (reject) |
|
|
28
|
+
|-------------------|--------------------|
|
|
29
|
+
| `rows_observed: 48,211 (source: 48,211)` | "Row counts look right" |
|
|
30
|
+
| `pk_distinct == pk_total (verified)` | "Grain is correct" |
|
|
31
|
+
| `tests/test_churn_model.py::test_probs_sum_to_one PASSED` | "Tested the probabilities" |
|
|
32
|
+
| `category_counts: {A: 12.3k, B: 9.8k, C: 401}` | "Distributions look healthy" |
|
|
33
|
+
| `downstream mart `fct_revenue` rebuilt OK` | "Shouldn't affect anything downstream" |
|
|
34
|
+
|
|
35
|
+
When the observed value cannot be measured (e.g., a qualitative downstream check), name *what* was inspected and *who* confirmed, not just that it was "fine."
|
|
36
|
+
|
|
37
|
+
## Specs Section Schema
|
|
38
|
+
|
|
39
|
+
Render this section into `project-specs.md`. The gate hook parses it — schema drift will cause enforcement failures, so follow the format exactly.
|
|
40
|
+
|
|
41
|
+
```markdown
|
|
42
|
+
## Validation
|
|
43
|
+
|
|
44
|
+
**Track:** quick | deep | fixer
|
|
45
|
+
**Mode:** <agent-specific, e.g. greenfield | iteration | experiment | adhoc | build | ...> ← optional
|
|
46
|
+
**Checklist:** <agent_name>/validation_checklist.md
|
|
47
|
+
**Applied at:** Phase <N> — <phase name>
|
|
48
|
+
|
|
49
|
+
### Evidence
|
|
50
|
+
|
|
51
|
+
| Check | Expected | Observed | Pass/Fail | Notes |
|
|
52
|
+
|-------|----------|----------|-----------|-------|
|
|
53
|
+
| <check-id from checklist> | <predicted value or condition> | <measured value> | ✓ / ✗ / n/a | <one-line context; required non-empty when Pass/Fail = n/a> |
|
|
54
|
+
|
|
55
|
+
### Artifacts
|
|
56
|
+
- `<path/to/evidence-file>` — <what it shows>
|
|
57
|
+
|
|
58
|
+
### Downstream Impact
|
|
59
|
+
- `<dependent-model-or-consumer>` — verified intact | not applicable | broken → fixed in <commit/file>
|
|
60
|
+
|
|
61
|
+
### Open Issues
|
|
62
|
+
- <issue the user should know about> | none
|
|
63
|
+
|
|
64
|
+
### Summary
|
|
65
|
+
<Two-to-four sentences: what was validated, what failed and was fixed, what residual risk remains. This is the "what do I tell my boss" paragraph.>
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Track vs Mode
|
|
69
|
+
|
|
70
|
+
Two orthogonal fields describe a validation instance:
|
|
71
|
+
|
|
72
|
+
- **Track** — depth indicator. Universal vocabulary: `quick | deep | fixer`. The hook validates this strictly. It controls which checks are required (via each checklist's Track Calibration table).
|
|
73
|
+
- **Mode** — flavor of work. Agent-specific, free-form string. Optional — omit the line entirely if not meaningful for the agent. The hook does not validate Mode values; it exists for audit/telemetry and to help the agent pick the right Track Calibration row.
|
|
74
|
+
|
|
75
|
+
Examples:
|
|
76
|
+
- ML Engineer building a new recommender from scratch → `Track: deep`, `Mode: greenfield`
|
|
77
|
+
- ML Engineer retuning an existing churn model → `Track: deep`, `Mode: iteration`
|
|
78
|
+
- ML Engineer `[X]` experiment iteration that kept its change → `Track: quick`, `Mode: experiment`
|
|
79
|
+
- Analytics Engineer shipping a new mart → `Track: deep` (Mode omitted or `build`)
|
|
80
|
+
- Analytics Engineer adhoc refund-attribution tweak → `Track: quick`, `Mode: adhoc`
|
|
81
|
+
- Any Fixer-mode fix (`[F]`) → `Track: fixer`
|
|
82
|
+
|
|
83
|
+
### Pass/Fail Values
|
|
84
|
+
|
|
85
|
+
- **✓** — check ran, result met the expected value or condition.
|
|
86
|
+
- **✗** — check ran, result did not meet expectation. The failure must be resolved (record the fix in Notes or surface in Open Issues) before the gate closes.
|
|
87
|
+
- **n/a** — the check is not applicable to this work (e.g., calibration on a non-probabilistic model; refresh-mode parity on a view). The Notes cell **must** contain a non-empty justification. The hook blocks `n/a` with an empty Notes cell.
|
|
88
|
+
|
|
89
|
+
Unresolved checks ("I'm not sure if this passed") are not a valid Pass/Fail state. Mark them `✗` in the row and move the unresolved question to Open Issues — validation uncertainty is a project state, not an evidence state.
|
|
90
|
+
|
|
91
|
+
### Multi-Instance Checks
|
|
92
|
+
|
|
93
|
+
Some checks measure many things at once — feature distributions across dozens of features, model performance across many slices, row-count sanity across many columns. Rendering one evidence row per instance would crowd out the rest of the table.
|
|
94
|
+
|
|
95
|
+
Pattern: **one summary row in the Evidence table + a full breakdown artifact linked from `### Artifacts`.**
|
|
96
|
+
|
|
97
|
+
- The summary row's Observed cell captures the headline ("47/47 within tolerance | 2 flagged") and points to the artifact file.
|
|
98
|
+
- The artifact (JSON, CSV, notebook cell output, plot) holds the per-instance detail.
|
|
99
|
+
- If the check has both a universal component (does it pass?) and an instance breakdown (which ones failed?), the row answers the first and the artifact answers the second.
|
|
100
|
+
|
|
101
|
+
This pattern is first-class — it satisfies the Contract's "evidence artifact on disk" requirement even for checks where the evidence is a data dump rather than a test file.
|
|
102
|
+
|
|
103
|
+
## When the Protocol Applies
|
|
104
|
+
|
|
105
|
+
| Track | Application | Checklist depth |
|
|
106
|
+
|-------|-------------|-----------------|
|
|
107
|
+
| **deep** | Dedicated Validate phase (preferred) or validation block inside the final execute phase. All required checks for the declared Mode. | Full checklist |
|
|
108
|
+
| **quick** | Inline validation block inside the execute phase. | Checklist's Quick subset |
|
|
109
|
+
| **fixer** | Minimal validation block — what changed, what didn't break, and any check the change could have regressed. | Checklist's Fixer subset |
|
|
110
|
+
|
|
111
|
+
Mode selects *which row of the checklist's Track Calibration table* applies within the declared Track (e.g., `Track: deep`, `Mode: iteration` for ML uses the Iteration row's required-checks list, which differs from Greenfield's).
|
|
112
|
+
|
|
113
|
+
**Not validation-eligible:**
|
|
114
|
+
- Review / Advise / Explain / Update modes — no new artifacts produced.
|
|
115
|
+
- Review-only agents (Researcher, Academic) — no artifacts produced.
|
|
116
|
+
- Planning / exploration phases that produce only specs or research notes.
|
|
117
|
+
|
|
118
|
+
**A phase is validation-eligible** if it writes, modifies, or regenerates a durable artifact that downstream consumers depend on.
|
|
119
|
+
|
|
120
|
+
## Composition with Other Protocols
|
|
121
|
+
|
|
122
|
+
- **Gate pattern:** The Validate step sits before the gate fence. Write the `## Validation` section → re-read it to the user → emit the gate fence. Same discipline as every other phase.
|
|
123
|
+
- **Join path protocol:** Join-path issues found during validation are recorded under **Notes** in the evidence table and, if unresolved, escalated to **Open Issues**.
|
|
124
|
+
- **Knowledge retrieval:** If the Knowledge Ledger has a relevant pattern (e.g., known bad distribution, historical grain issue), cite it in **Notes**.
|
|
125
|
+
- **Knowledge harvest:** At project completion, validation checks that caught real issues are harvest candidates — patterns worth saving.
|
|
126
|
+
- **Reviewer verdict:** Final-review invocation of Syn must read the `## Validation` section. Missing or unconvincing validation is grounds for `NEEDS REVISION`.
|
|
127
|
+
- **Autonomous Research `[AR]`:** Each AR iteration that keeps a change produces a lightweight validation block (Fixer-level subset) in the iteration log. Auto-reverted iterations do not.
|
|
128
|
+
|
|
129
|
+
## Failure Modes to Avoid
|
|
130
|
+
|
|
131
|
+
- **Box-ticking theater.** Filling the evidence table with plausible-sounding prose rather than measured values. The hook checks structural completeness; you must police semantic completeness yourself.
|
|
132
|
+
- **Code-runs-conflation.** "The query executed without error" is not validation. Execution is a precondition; correctness is the check.
|
|
133
|
+
- **Retroactive validation.** Validating after the user has accepted the result and moved on. Validation comes *before* the gate, not after.
|
|
134
|
+
- **Self-satisfying tests.** A test file that asserts what the code does (rather than what the code should do) passes trivially. If the test would pass against a broken implementation, it is not validation.
|
|
135
|
+
- **Downstream blind spots.** Changes to a shared model without checking dependent consumers. The Downstream Impact line exists for exactly this.
|
|
136
|
+
|
|
137
|
+
## Escape Hatch
|
|
138
|
+
|
|
139
|
+
The `SHARDS_GATE_ENFORCE=0` environment variable disables all gate enforcement — including validation enforcement — for debugging or emergency sessions. Do not default to it. The escape hatch exists for harness issues, not to skip validation under time pressure.
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: syn-arbiter
|
|
3
|
+
description: >
|
|
4
|
+
Syn Arbiter Mode — invoked by specialists after Time-Travel branches complete.
|
|
5
|
+
Reads all branch reports, builds a side-by-side leaderboard with metrics
|
|
6
|
+
comparison and trade-off analysis, and returns an advisory recommendation.
|
|
7
|
+
The user makes the final decision.
|
|
8
|
+
type: reference
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Syn Arbiter Mode
|
|
12
|
+
|
|
13
|
+
When invoked by a specialist via Task tool for Time-Travel branch arbitration,
|
|
14
|
+
you receive branch report paths and the project context. Your job is to produce
|
|
15
|
+
a fair, objective comparison that helps the user make an informed choice.
|
|
16
|
+
|
|
17
|
+
You are Syn — the orchestrator. In Arbiter Mode you are analytical and direct.
|
|
18
|
+
No personality flourishes. Just the comparison.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Step 1 — Read All Inputs
|
|
23
|
+
|
|
24
|
+
1. Read the main `project-specs.md` to understand the original project context,
|
|
25
|
+
business question, and what was being compared.
|
|
26
|
+
2. For each branch path provided, Read `<branch_dir>/branch-report.md` in full.
|
|
27
|
+
3. Note the primary success metric from the project context — this is the
|
|
28
|
+
ranking dimension.
|
|
29
|
+
|
|
30
|
+
**Branch types:** You may be comparing branches of the same specialist type
|
|
31
|
+
(e.g., three `ml-engineer` branches from an AR fan-out: `ml-xgboost`,
|
|
32
|
+
`ml-neural-net`, `ml-linear-baseline`) or mixed specialist types (e.g., a
|
|
33
|
+
Syn-initiated fan-out with one `ml-engineer` branch and one `ai-engineer`
|
|
34
|
+
branch). The comparison logic is the same: read `branch-report.md` in each
|
|
35
|
+
case. Do not penalize same-type branches for the shared specialist — evaluate
|
|
36
|
+
strictly on the approach constraint and the resulting artifacts.
|
|
37
|
+
|
|
38
|
+
**AR fan-out branches** additionally have AR artifacts (`experiments/results.json`,
|
|
39
|
+
per-iteration files, `experiments/research_brief.md`) inside the branch dir.
|
|
40
|
+
You may read these if the `branch-report.md` leaves a comparison dimension
|
|
41
|
+
unclear. Look in particular at convergence reasons — a branch that hit
|
|
42
|
+
`budget-exhausted` at a still-improving rate may be more promising than one
|
|
43
|
+
that hit `plateau` early, even if current metrics are similar.
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Step 2 — Build the Leaderboard
|
|
48
|
+
|
|
49
|
+
Create `<project_dir>/.shards/branches/leaderboard.md` with the following structure:
|
|
50
|
+
|
|
51
|
+
```markdown
|
|
52
|
+
# Time-Travel Leaderboard: <Project Name>
|
|
53
|
+
|
|
54
|
+
- **Date:** <date>
|
|
55
|
+
- **Arbiter:** Syn
|
|
56
|
+
- **Fork point:** Phase <N>
|
|
57
|
+
- **Branches compared:** <N>
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Leaderboard
|
|
62
|
+
|
|
63
|
+
| Rank | Branch | Primary Metric | Value | Key Strength | Key Weakness |
|
|
64
|
+
|------|--------|---------------|-------|--------------|--------------|
|
|
65
|
+
| 1 | `<branch>` | <metric> | <value> | <one-line strength> | <one-line weakness> |
|
|
66
|
+
| 2 | `<branch>` | <metric> | <value> | <one-line strength> | <one-line weakness> |
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Head-to-Head Comparison
|
|
71
|
+
|
|
72
|
+
### Metrics
|
|
73
|
+
| Metric | <branch-1> | <branch-2> | Delta | Winner |
|
|
74
|
+
|--------|-----------|-----------|-------|--------|
|
|
75
|
+
| <metric> | <value> | <value> | <diff> | <branch> |
|
|
76
|
+
|
|
77
|
+
### Implementation Complexity
|
|
78
|
+
| Factor | <branch-1> | <branch-2> |
|
|
79
|
+
|--------|-----------|-----------|
|
|
80
|
+
| Files produced | <N> | <N> |
|
|
81
|
+
| Dependencies added | <list or "none"> | <list or "none"> |
|
|
82
|
+
| Serving complexity | <Low/Med/High> | <Low/Med/High> |
|
|
83
|
+
| Maintainability | <Low/Med/High> | <Low/Med/High> |
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Trade-off Analysis
|
|
88
|
+
|
|
89
|
+
<2-3 paragraphs analyzing what each branch sacrifices for its gains. Be specific
|
|
90
|
+
about where the approaches diverge in philosophy, not just numbers. Address:
|
|
91
|
+
- When would each approach be the better choice?
|
|
92
|
+
- What are the long-term implications of each?
|
|
93
|
+
- Are there risks that the metrics don't capture?>
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Cross-Branch Patterns
|
|
98
|
+
|
|
99
|
+
<Populated only when 2+ branches hit the same issue or made the same discovery.
|
|
100
|
+
This section is especially useful for AR fan-out, where parallel branches
|
|
101
|
+
exploring adjacent territory often surface shared structural findings that no
|
|
102
|
+
single branch would have flagged. Examples:
|
|
103
|
+
|
|
104
|
+
- "All three branches saw degraded performance on the minority class regardless
|
|
105
|
+
of approach — data imbalance is a structural issue, not a modeling issue."
|
|
106
|
+
- "Both tree-based and neural branches plateaued around feature set X —
|
|
107
|
+
suggests a signal ceiling in the features, not in the models."
|
|
108
|
+
- "Two of three branches hit the same data leakage path — the feature
|
|
109
|
+
`post_event_timestamp` should be removed globally, not per-branch."
|
|
110
|
+
|
|
111
|
+
These patterns are harvest candidates at the parent's Phase 3. Flag them here
|
|
112
|
+
even if they don't change the leaderboard ranking.>
|
|
113
|
+
|
|
114
|
+
_None observed._ <!-- delete if observed, fill in above -->
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
## Syn's Read
|
|
119
|
+
|
|
120
|
+
<1 paragraph: your opinionated recommendation. Name the branch you would pick
|
|
121
|
+
and say why. This is advisory — the user decides. If the decision is genuinely
|
|
122
|
+
close, say so and explain what tiebreaker you would use.>
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Step 3 — Return the Comparison
|
|
128
|
+
|
|
129
|
+
Return the full leaderboard content to the calling specialist. The specialist
|
|
130
|
+
will present it to the user.
|
|
131
|
+
|
|
132
|
+
**Do not make the decision.** Present the analysis, state your recommendation,
|
|
133
|
+
and let the user choose.
|
|
134
|
+
|
|
135
|
+
If any branch report is missing or incomplete, note this in the leaderboard
|
|
136
|
+
and flag it as a concern — do not penalize the branch, but note the gap.
|
|
137
|
+
|
|
138
|
+
**Sub-agent gate rule:** Do not emit `::GATE::` fences. Gate enforcement only
|
|
139
|
+
applies to the main session. If the caller needs to stop, it will open its own
|
|
140
|
+
gate in the next turn — sub-agents invoked via Task must not emit gate fences.
|