sinapse-ai 9.4.0 → 9.5.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.
Files changed (266) hide show
  1. package/.claude/CLAUDE.md +10 -4
  2. package/.claude/hooks/enforce-architecture-first.py +197 -197
  3. package/.claude/hooks/enforce-git-push-authority.sh +25 -4
  4. package/.claude/hooks/mind-clone-governance.py +193 -193
  5. package/.claude/hooks/read-protection.py +152 -152
  6. package/.claude/hooks/sql-governance.py +183 -183
  7. package/.claude/hooks/verify-packages.cjs +83 -0
  8. package/.claude/hooks/write-path-validation.py +195 -195
  9. package/.claude/rules/hook-governance.md +1 -0
  10. package/.claude/rules/mandatory-delegation.md +24 -0
  11. package/.claude/rules/project-intelligence.md +63 -0
  12. package/.claude/rules/response-format.md +4 -0
  13. package/.claude/rules/safe-collaboration.md +4 -2
  14. package/.claude/rules/security-data-protection.md +18 -0
  15. package/.claude/rules/squad-awareness.md +93 -67
  16. package/.claude/rules/token-economy.md +148 -0
  17. package/.codex/agents/analyst.md +90 -0
  18. package/.codex/agents/architect.md +78 -0
  19. package/.codex/agents/data-engineer.md +38 -0
  20. package/.codex/agents/developer.md +97 -0
  21. package/.codex/agents/devops.md +121 -0
  22. package/.codex/agents/product-lead.md +27 -0
  23. package/.codex/agents/project-lead.md +28 -0
  24. package/.codex/agents/quality-gate.md +89 -0
  25. package/.codex/agents/sprint-lead.md +28 -0
  26. package/.codex/agents/squad-creator.md +58 -0
  27. package/.codex/agents/ux-design-expert.md +28 -0
  28. package/.sinapse-ai/core/code-intel/registry-syncer.js +56 -3
  29. package/.sinapse-ai/core/doctor/checks/agent-memory.js +5 -1
  30. package/.sinapse-ai/core/doctor/checks/claude-md.js +4 -1
  31. package/.sinapse-ai/core/doctor/checks/code-intel.js +5 -1
  32. package/.sinapse-ai/core/doctor/checks/commands-count.js +4 -1
  33. package/.sinapse-ai/core/doctor/checks/constitution-consistency.js +4 -1
  34. package/.sinapse-ai/core/doctor/checks/core-config.js +4 -1
  35. package/.sinapse-ai/core/doctor/checks/entity-registry.js +6 -1
  36. package/.sinapse-ai/core/doctor/checks/git-hooks.js +5 -1
  37. package/.sinapse-ai/core/doctor/checks/graph-dashboard.js +4 -1
  38. package/.sinapse-ai/core/doctor/checks/hooks-claude-count.js +5 -1
  39. package/.sinapse-ai/core/doctor/checks/ide-sync.js +4 -1
  40. package/.sinapse-ai/core/doctor/checks/node-version.js +4 -1
  41. package/.sinapse-ai/core/doctor/checks/npm-packages.js +4 -1
  42. package/.sinapse-ai/core/doctor/checks/rules-files.js +4 -1
  43. package/.sinapse-ai/core/doctor/checks/settings-json.js +4 -1
  44. package/.sinapse-ai/core/doctor/checks/skills-count.js +4 -1
  45. package/.sinapse-ai/core/doctor/index.js +157 -50
  46. package/.sinapse-ai/core/ids/registry-updater.js +6 -1
  47. package/.sinapse-ai/core/logger/index.js +319 -0
  48. package/.sinapse-ai/core/orchestration/terminal-spawner.js +2 -2
  49. package/.sinapse-ai/core/telemetry/index.js +247 -0
  50. package/.sinapse-ai/data/entity-registry.yaml +1384 -944
  51. package/.sinapse-ai/development/agents/architect.md +5 -0
  52. package/.sinapse-ai/development/agents/data-engineer.md +38 -0
  53. package/.sinapse-ai/development/agents/developer.md +28 -0
  54. package/.sinapse-ai/development/agents/devops.md +4 -0
  55. package/.sinapse-ai/development/agents/product-lead.md +27 -0
  56. package/.sinapse-ai/development/agents/project-lead.md +28 -0
  57. package/.sinapse-ai/development/agents/quality-gate.md +4 -0
  58. package/.sinapse-ai/development/agents/sprint-lead/MEMORY.md +8 -0
  59. package/.sinapse-ai/development/agents/sprint-lead.md +28 -0
  60. package/.sinapse-ai/development/agents/squad-creator.md +58 -0
  61. package/.sinapse-ai/development/agents/ux-design-expert.md +28 -0
  62. package/.sinapse-ai/development/knowledge-base/agent-communication-protocol.md +127 -0
  63. package/.sinapse-ai/development/knowledge-base/database-scaling-patterns.md +374 -0
  64. package/.sinapse-ai/development/knowledge-base/environment-deployment-patterns.md +353 -0
  65. package/.sinapse-ai/development/knowledge-base/gotchas-patterns.md +224 -0
  66. package/.sinapse-ai/development/knowledge-base/infrastructure-decision-framework.md +221 -0
  67. package/.sinapse-ai/development/knowledge-base/security-pre-deploy-checklist.md +410 -0
  68. package/.sinapse-ai/development/knowledge-base/software-architecture-patterns.md +299 -0
  69. package/.sinapse-ai/development/knowledge-base/token-economy-guide.md +198 -0
  70. package/.sinapse-ai/development/scripts/populate-entity-registry.js +5 -1
  71. package/.sinapse-ai/development/skills/captcha-handler.md +82 -0
  72. package/.sinapse-ai/development/skills/chrome-brain.md +81 -0
  73. package/.sinapse-ai/development/skills/deploy-readiness.md +93 -0
  74. package/.sinapse-ai/development/skills/model-router.md +92 -0
  75. package/.sinapse-ai/development/skills/sinapse-methodology.md +175 -0
  76. package/.sinapse-ai/development/skills/story-fast-track.md +71 -0
  77. package/.sinapse-ai/development/tasks/dev-develop-story.md +10 -0
  78. package/.sinapse-ai/development/tasks/environment-promotion-pipeline.md +582 -0
  79. package/.sinapse-ai/development/tasks/generate-agent-handoff.md +223 -0
  80. package/.sinapse-ai/development/tasks/infrastructure-assessment.md +432 -0
  81. package/.sinapse-ai/development/tasks/load-testing-setup.md +611 -0
  82. package/.sinapse-ai/development/tasks/observability-blueprint.md +562 -0
  83. package/.sinapse-ai/development/templates/legal/breach-notification-tmpl.md +113 -0
  84. package/.sinapse-ai/development/templates/legal/privacy-policy-tmpl.md +93 -0
  85. package/.sinapse-ai/development/templates/legal/terms-of-service-tmpl.md +85 -0
  86. package/.sinapse-ai/development/templates/service-template/README.md.hbs +159 -159
  87. package/.sinapse-ai/development/templates/service-template/__tests__/index.test.ts.hbs +238 -238
  88. package/.sinapse-ai/development/templates/service-template/client.ts.hbs +404 -404
  89. package/.sinapse-ai/development/templates/service-template/errors.ts.hbs +183 -183
  90. package/.sinapse-ai/development/templates/service-template/index.ts.hbs +121 -121
  91. package/.sinapse-ai/development/templates/service-template/package.json.hbs +88 -88
  92. package/.sinapse-ai/development/templates/service-template/types.ts.hbs +146 -146
  93. package/.sinapse-ai/development/templates/squad-template/LICENSE +22 -22
  94. package/.sinapse-ai/development/workflows/story-development-cycle.yaml +40 -1
  95. package/.sinapse-ai/hooks/ids-post-commit.js +22 -0
  96. package/.sinapse-ai/infrastructure/contracts/compatibility/README.md +42 -0
  97. package/.sinapse-ai/infrastructure/contracts/compatibility/sinapse-current.yaml +35 -0
  98. package/.sinapse-ai/infrastructure/scripts/llm-routing/templates/claude-free-tracked.cmd +127 -127
  99. package/.sinapse-ai/infrastructure/scripts/llm-routing/templates/deepseek-proxy.cmd +71 -71
  100. package/.sinapse-ai/infrastructure/scripts/llm-routing/templates/deepseek-usage.cmd +51 -51
  101. package/.sinapse-ai/infrastructure/scripts/pr-review-ai.js +16 -13
  102. package/.sinapse-ai/infrastructure/scripts/setup-project-infra.js +128 -0
  103. package/.sinapse-ai/infrastructure/scripts/test-discovery.js +8 -3
  104. package/.sinapse-ai/infrastructure/scripts/validate-manifest-parity.js +380 -0
  105. package/.sinapse-ai/infrastructure/scripts/validate-parity.js +76 -25
  106. package/.sinapse-ai/infrastructure/templates/coderabbit.yaml.template +280 -280
  107. package/.sinapse-ai/infrastructure/templates/config/env.example +16 -0
  108. package/.sinapse-ai/infrastructure/templates/config/gitignore-additions.tmpl +59 -0
  109. package/.sinapse-ai/infrastructure/templates/github/CODEOWNERS.template +12 -0
  110. package/.sinapse-ai/infrastructure/templates/github/PULL_REQUEST_TEMPLATE.md +29 -0
  111. package/.sinapse-ai/infrastructure/templates/github/ci-template.yml +77 -0
  112. package/.sinapse-ai/infrastructure/templates/github/issue-templates/bug_report.md +34 -0
  113. package/.sinapse-ai/infrastructure/templates/github/issue-templates/feature_request.md +19 -0
  114. package/.sinapse-ai/infrastructure/templates/github-workflows/ci.yml.template +170 -170
  115. package/.sinapse-ai/infrastructure/templates/github-workflows/pr-automation.yml.template +331 -331
  116. package/.sinapse-ai/infrastructure/templates/github-workflows/release.yml.template +197 -197
  117. package/.sinapse-ai/infrastructure/templates/gitignore/gitignore-brownfield-merge.tmpl +19 -19
  118. package/.sinapse-ai/infrastructure/templates/gitignore/gitignore-node.tmpl +86 -86
  119. package/.sinapse-ai/infrastructure/templates/gitignore/gitignore-python.tmpl +146 -146
  120. package/.sinapse-ai/infrastructure/templates/gitignore/gitignore-sinapse-base.tmpl +64 -64
  121. package/.sinapse-ai/infrastructure/templates/sinapse-sync.yaml.template +183 -183
  122. package/.sinapse-ai/install-manifest.yaml +275 -140
  123. package/.sinapse-ai/local-config.yaml.template +65 -65
  124. package/.sinapse-ai/monitor/hooks/lib/__init__.py +2 -2
  125. package/.sinapse-ai/monitor/hooks/lib/enrich.py +59 -59
  126. package/.sinapse-ai/monitor/hooks/lib/send_event.py +48 -48
  127. package/.sinapse-ai/monitor/hooks/notification.py +30 -30
  128. package/.sinapse-ai/monitor/hooks/post_tool_use.py +46 -46
  129. package/.sinapse-ai/monitor/hooks/pre_compact.py +30 -30
  130. package/.sinapse-ai/monitor/hooks/pre_tool_use.py +41 -41
  131. package/.sinapse-ai/monitor/hooks/stop.py +30 -30
  132. package/.sinapse-ai/monitor/hooks/subagent_stop.py +30 -30
  133. package/.sinapse-ai/monitor/hooks/user_prompt_submit.py +39 -39
  134. package/.sinapse-ai/product/templates/adr.hbs +126 -126
  135. package/.sinapse-ai/product/templates/dbdr.hbs +242 -242
  136. package/.sinapse-ai/product/templates/epic.hbs +213 -213
  137. package/.sinapse-ai/product/templates/pmdr.hbs +187 -187
  138. package/.sinapse-ai/product/templates/prd-v2.0.hbs +217 -217
  139. package/.sinapse-ai/product/templates/prd.hbs +202 -202
  140. package/.sinapse-ai/product/templates/story-tmpl.yaml +59 -0
  141. package/.sinapse-ai/product/templates/story.hbs +264 -264
  142. package/.sinapse-ai/product/templates/task.hbs +171 -171
  143. package/.sinapse-ai/product/templates/tmpl-comment-on-examples.sql +159 -159
  144. package/.sinapse-ai/product/templates/tmpl-migration-script.sql +92 -92
  145. package/.sinapse-ai/product/templates/tmpl-rls-granular-policies.sql +105 -105
  146. package/.sinapse-ai/product/templates/tmpl-rls-kiss-policy.sql +11 -11
  147. package/.sinapse-ai/product/templates/tmpl-rls-roles.sql +136 -136
  148. package/.sinapse-ai/product/templates/tmpl-rls-simple.sql +78 -78
  149. package/.sinapse-ai/product/templates/tmpl-rls-tenant.sql +153 -153
  150. package/.sinapse-ai/product/templates/tmpl-rollback-script.sql +78 -78
  151. package/.sinapse-ai/product/templates/tmpl-seed-data.sql +141 -141
  152. package/.sinapse-ai/product/templates/tmpl-smoke-test.sql +17 -17
  153. package/.sinapse-ai/product/templates/tmpl-staging-copy-merge.sql +140 -140
  154. package/.sinapse-ai/product/templates/tmpl-stored-proc.sql +141 -141
  155. package/.sinapse-ai/product/templates/tmpl-trigger.sql +153 -153
  156. package/.sinapse-ai/product/templates/tmpl-view-materialized.sql +134 -134
  157. package/.sinapse-ai/product/templates/tmpl-view.sql +178 -178
  158. package/.sinapse-ai/scripts/diagnostics/health-dashboard/package-lock.json +427 -355
  159. package/LICENSE +34 -34
  160. package/README.en.md +167 -20
  161. package/README.md +190 -22
  162. package/bin/cli.js +510 -196
  163. package/bin/postinstall.js +564 -0
  164. package/bin/sinapse-cli +283 -283
  165. package/bin/sinapse-graph.js +9 -0
  166. package/bin/sinapse-init.js +36 -4
  167. package/bin/sinapse-minimal.js +20 -9
  168. package/bin/sinapse.js +202 -122
  169. package/bin/utils/deprecation-warning.js +46 -0
  170. package/bin/utils/pre-push-safety.js +14 -0
  171. package/docs/TELEMETRY.md +131 -0
  172. package/docs/chrome-brain-upgrade-plan.md +624 -0
  173. package/docs/framework/orqx-plan.md +1 -1
  174. package/docs/installation/chrome-brain.md +17 -7
  175. package/docs/mega-upgrade-orchestration-plan.md +71 -0
  176. package/docs/pt/contributing.md +20 -0
  177. package/docs/research-synthesis-for-upgrade.md +511 -0
  178. package/docs/security-audit-report.md +306 -0
  179. package/package.json +20 -8
  180. package/packages/installer/src/config/configure-environment.js +19 -44
  181. package/packages/installer/src/detection/detect-project-type.js +181 -63
  182. package/packages/installer/src/installer/manifest-signature.js +32 -17
  183. package/packages/installer/src/wizard/i18n.js +12 -0
  184. package/packages/installer/src/wizard/ide-config-generator.js +8 -39
  185. package/packages/installer/src/wizard/index.js +119 -14
  186. package/packages/installer/src/wizard/questions.js +2 -3
  187. package/packages/installer/tests/integration/environment-configuration.test.js +7 -5
  188. package/packages/installer/tests/unit/detection/detect-project-type.test.js +138 -1
  189. package/packages/installer/tests/unit/doctor/doctor-orchestrator.test.js +3 -3
  190. package/packages/sinapse-install/bin/edmcp.js +0 -0
  191. package/packages/sinapse-install/bin/sinapse-install.js +0 -0
  192. package/packages/sinapse-pro-cli/bin/sinapse-pro.js +0 -0
  193. package/scripts/check-markdown-links.py +353 -353
  194. package/scripts/coverage-report-summary.js +169 -0
  195. package/scripts/generate-install-manifest.js +6 -2
  196. package/scripts/release-readiness.js +169 -0
  197. package/scripts/test-install-matrix-local.sh +153 -0
  198. package/scripts/validate-install-docs.js +394 -0
  199. package/scripts/validate-no-external-refs.js +376 -0
  200. package/scripts/validate-squad-orqx.js +302 -0
  201. package/scripts/validate-story-meta.js +263 -0
  202. package/squads/claude-code-mastery/CHANGELOG.md +1 -1
  203. package/squads/claude-code-mastery/README.md +2 -2
  204. package/squads/claude-code-mastery/squad.yaml +1 -1
  205. package/squads/squad-artdir/README.md +90 -0
  206. package/squads/squad-artdir/agents/accessibility-guardian.md +184 -0
  207. package/squads/squad-artdir/agents/artdir-orqx.md +145 -0
  208. package/squads/squad-artdir/agents/color-psychologist.md +166 -0
  209. package/squads/squad-artdir/agents/cro-persuasion.md +161 -0
  210. package/squads/squad-artdir/agents/design-system-architect.md +100 -0
  211. package/squads/squad-artdir/agents/ia-architect.md +169 -0
  212. package/squads/squad-artdir/agents/interaction-designer.md +162 -0
  213. package/squads/squad-artdir/agents/layout-engineer.md +163 -0
  214. package/squads/squad-artdir/agents/motion-architect.md +185 -0
  215. package/squads/squad-artdir/agents/platform-aesthetic-director.md +84 -0
  216. package/squads/squad-artdir/agents/premium-packaging-strategist.md +107 -0
  217. package/squads/squad-artdir/agents/product-surface-director.md +86 -0
  218. package/squads/squad-artdir/agents/type-systemist.md +138 -0
  219. package/squads/squad-artdir/agents/visual-strategist.md +127 -0
  220. package/squads/squad-artdir/checklists/seven-pillars-validation-checklist.md +172 -0
  221. package/squads/squad-artdir/knowledge-base/case-nyo-ia-reference.md +289 -0
  222. package/squads/squad-artdir/knowledge-base/deliverables-templates.md +457 -0
  223. package/squads/squad-artdir/knowledge-base/motion-technique-catalog.md +247 -0
  224. package/squads/squad-artdir/knowledge-base/premium-packaging-principles.md +133 -0
  225. package/squads/squad-artdir/knowledge-base/psychological-toolkit.md +229 -0
  226. package/squads/squad-artdir/knowledge-base/saas-art-direction-canon.md +242 -0
  227. package/squads/squad-artdir/knowledge-base/seven-pillars-framework.md +289 -0
  228. package/squads/squad-artdir/knowledge-base/ten-pillars-framework.md +221 -0
  229. package/squads/squad-artdir/package.json +20 -0
  230. package/squads/squad-artdir/squad.yaml +271 -0
  231. package/squads/squad-artdir/tasks/audit-conversion.md +97 -0
  232. package/squads/squad-artdir/tasks/audit-drift-multi-surface.md +55 -0
  233. package/squads/squad-artdir/tasks/consult-saas-canon.md +54 -0
  234. package/squads/squad-artdir/tasks/create-art-direction-brief.md +110 -0
  235. package/squads/squad-artdir/tasks/create-premium-packaging-brief.md +61 -0
  236. package/squads/squad-artdir/tasks/create-wireflow.md +84 -0
  237. package/squads/squad-artdir/tasks/design-color-system.md +81 -0
  238. package/squads/squad-artdir/tasks/design-product-surface.md +60 -0
  239. package/squads/squad-artdir/tasks/design-token-system.md +58 -0
  240. package/squads/squad-artdir/tasks/diagnose-visual-language.md +92 -0
  241. package/squads/squad-artdir/tasks/first-5-minutes-choreography.md +65 -0
  242. package/squads/squad-artdir/tasks/specify-motion-system.md +84 -0
  243. package/squads/squad-artdir/tasks/validate-against-pillars.md +143 -0
  244. package/squads/squad-artdir/templates/art-direction-brief-template.md +215 -0
  245. package/squads/squad-artdir/workflows/conversion-audit-cycle.yaml +78 -0
  246. package/squads/squad-artdir/workflows/full-art-direction-cycle.yaml +98 -0
  247. package/squads/squad-artdir/workflows/saas-platform-art-direction-cycle.yaml +174 -0
  248. package/squads/squad-brand/knowledge-base/ai-visual-generation-canon.md +234 -0
  249. package/squads/squad-brand/squad.yaml +20 -6
  250. package/squads/squad-claude/knowledge-base/context-window-optimization.md +1 -1
  251. package/squads/squad-claude/knowledge-base/swarm-orchestration-patterns.md +2 -2
  252. package/squads/squad-content/knowledge-base/ai-native-content-loop.md +220 -0
  253. package/squads/squad-content/knowledge-base/signal-intelligence-v2.md +234 -0
  254. package/squads/squad-content/knowledge-base/task-ownership-map.md +235 -0
  255. package/squads/squad-content/squad.yaml +187 -27
  256. package/squads/squad-copy/knowledge-base/ai-copy-human-loop-canon.md +235 -0
  257. package/squads/squad-copy/squad.yaml +19 -4
  258. package/squads/squad-design/knowledge-base/cross-surface-token-canon.md +209 -0
  259. package/squads/squad-design/squad.yaml +19 -4
  260. package/.sinapse-ai/core/registry/service-registry.json +0 -6346
  261. package/.sinapse-ai/data/registry-update-log.jsonl +0 -1323
  262. package/.sinapse-ai/manifests/agents.csv +0 -29
  263. package/.sinapse-ai/manifests/tasks.csv +0 -204
  264. package/.sinapse-ai/manifests/workers.csv +0 -196
  265. package/squads/squad-growth/tasks/calculate-sample-size.md +0 -121
  266. package/squads/squad-paidmedia/tasks/calculate-sample-size.md +0 -57
@@ -0,0 +1,234 @@
1
+ # Signal Intelligence v2 — 2026 Sources + Classification Canon
2
+
3
+ > **Status:** Canon (squad-content v2.0) — ADDITIVE companion to `signal-detection-methods.md` v1
4
+ > **Owner:** signal-intelligence (Radar) — primary; content-orqx (Nexus) — curator
5
+ > **Created:** 2026-04-12 for Story fw-v2.4
6
+ > **Explicit relationship:** Does NOT replace `signal-detection-methods.md`. v1 remains canonical for foundational definitions. v2 adds the 2026 source landscape, the signal classification taxonomy, routing rules and a quality-scoring model that did not exist in v1.
7
+
8
+ ---
9
+
10
+ ## 1. Why v2 Exists
11
+
12
+ The v1 KB (`signal-detection-methods.md`) was written assuming a pre-Grok / pre-Apify-ubiquity landscape. Since then:
13
+
14
+ - **X (Twitter) API v2** has become the dominant surface for public discourse, with tier changes that reshape what's scrapable.
15
+ - **TikTok Research API** became available for commercial signal detection and is now the #1 cultural-signal source for sub-25 audiences.
16
+ - **Apify actors** became the pragmatic alternative when APIs are closed — a rented actor marketplace for scraping any social surface.
17
+ - **Grok on X** became a first-order summarizer of live discourse, shifting the signal-detection workflow.
18
+ - **Substack** became a newsletter-first signal source for professional niches.
19
+ - **Reddit API** re-opened for commercial use under new pricing.
20
+ - **Google Trends + YouTube Data API v3** remain stable but are now cross-referenced against the above rather than primary.
21
+
22
+ v1 still defines what a signal IS and the 7 signal types. v2 defines where signals LIVE in 2026 and how to score them.
23
+
24
+ ---
25
+
26
+ ## 2. Current-State Signal Source Catalog
27
+
28
+ ### 2.1 Tier A — First-party research APIs (highest trust)
29
+
30
+ | Source | Access | Rate | Best for | Cost |
31
+ |--------|--------|------|---------|------|
32
+ | X API v2 (Basic/Pro/Enterprise) | OAuth 2.0, Basic tier ~$100/mo | ~10k posts/mo Basic | Real-time discourse, influencer signals, thread analysis, Grok summaries | Paid |
33
+ | TikTok Research API | Academic/commercial app approval | Batch hashtag queries | Cultural signals, sub-25 behavior, meme velocity, trend lifecycle | Free with approval |
34
+ | YouTube Data API v3 | Google Cloud key | 10k units/day free | Long-form trend signals, creator signals, search intent behind video queries | Free tier + paid |
35
+ | Reddit API (official) | OAuth 2.0, commercial tier | Paid tiers for commercial | Niche community signals, question mining, "authentic voice" samples | Paid for commercial |
36
+ | Google Trends API (pytrends + official) | Public, rate-limited | Rolling | Search intent velocity, regional variation, seasonality | Free |
37
+
38
+ ### 2.2 Tier B — Scraping / Actor-based sources
39
+
40
+ | Source | Access | Best for | Legal/ToS note |
41
+ |--------|--------|---------|----------------|
42
+ | Apify actors (Instagram, TikTok, LinkedIn, X, etc.) | Apify platform pay-per-run | Whatever is not open via official API | Respect robots.txt + ToS, document legal basis per actor |
43
+ | Substack RSS feeds | Public RSS | Professional niche signals, newsletter thesis drift | Public RSS is safe |
44
+ | Newsletter aggregators (Feedly, Inoreader) | API keys | Curated professional signals by editor | OK |
45
+ | Podcast RSS + transcription (Whisper) | Public RSS + local Whisper | Long-form thesis signals before they hit text | Respect IP/quotation rules |
46
+
47
+ ### 2.3 Tier C — Curated human-intelligence
48
+
49
+ | Source | Why | Cadence |
50
+ |--------|-----|---------|
51
+ | Exploding Topics | Trend pre-emergence detection | Weekly digest |
52
+ | SparkToro | Audience intelligence + zero-click research | On demand |
53
+ | BuzzSumo | Evergreen scoring + viral performance | On demand |
54
+ | Semrush Trends | SEO-backed topic signals | Rolling |
55
+ | Parse.ly Currents | Publisher-side trend intelligence | Daily |
56
+ | Stacked Marketer / Morning Brew / The Hustle / Superpath | Human-curated daily scan | Daily |
57
+
58
+ ### 2.4 Tier D — Proprietary client signals (highest leverage)
59
+
60
+ | Source | Why it matters |
61
+ |--------|---------------|
62
+ | Client DMs, comments, reviews, support tickets | Authentic audience voice — highest-leverage signal, hardest to find |
63
+ | Client analytics (Parse.ly, GA4, native platform analytics) | Performance signals closing the loop back to retrofeed |
64
+ | Sales team transcripts (Gong, Fireflies) | What the market is saying with buying intent |
65
+ | Customer interview transcripts (Whisper) | Pain language, vocabulary, objections |
66
+
67
+ **Rule of thumb:** Tier D signals > Tier A > Tier B > Tier C for relevance. Tier C and A are broader-coverage; Tier D is narrower-but-hotter.
68
+
69
+ ---
70
+
71
+ ## 3. Signal Classification Taxonomy
72
+
73
+ Every detected signal MUST be classified into exactly one of these 5 categories. Classification determines routing to Phase 2 (AI Draft) and the editorial pillar mapping.
74
+
75
+ ### 3.1 Opportunity Window
76
+
77
+ **Definition:** A short-lived condition where content on a specific topic will over-perform because attention is concentrated.
78
+ **Velocity:** Hours to 7 days.
79
+ **Example:** Apple releases a new dev tool at WWDC — window to publish "what this means for SaaS founders" is 48-72h before commodity hot-takes flood the channel.
80
+ **Routing:** Phase 1 → Phase 2 immediately, high urgency, human-edit fast-track.
81
+ **Failure mode:** Late-to-the-window = commodity content.
82
+
83
+ ### 3.2 Trend Seed
84
+
85
+ **Definition:** Early sign of a topic gaining velocity before it becomes mainstream. Detected pre-inflection.
86
+ **Velocity:** Weeks to months.
87
+ **Example:** A term starts appearing in 3+ unrelated niche newsletters over 2 weeks. Not yet on Google Trends.
88
+ **Routing:** Phase 1 → editorial calendar insertion, build a pillar-aligned series.
89
+ **Failure mode:** Calling a trend too early or forcing a seed that won't grow.
90
+
91
+ ### 3.3 Crisis Alert
92
+
93
+ **Definition:** A brand-relevant event that forces a response — competitor misstep, industry controversy, client-adjacent scandal, regulatory change.
94
+ **Velocity:** Immediate (hours).
95
+ **Example:** A major competitor gets caught in a data breach — opportunity for a thoughtful "here is how we think about data stewardship" piece.
96
+ **Routing:** Phase 1 → escalate to client immediately, Phase 2 requires human-heavy review (high reputational stakes).
97
+ **Failure mode:** Opportunistic copy that reads as vulture-like; miss the window of relevance.
98
+
99
+ ### 3.4 Category Shift
100
+
101
+ **Definition:** A slow but durable change in how the category thinks, talks or operates. Signals arrive from multiple unrelated sources over time.
102
+ **Velocity:** Months to quarters.
103
+ **Example:** The shift from "content marketing" to "audience-first content" in 2018-2021. You can see it in retrospect; the leverage is seeing it 6 months before the category does.
104
+ **Routing:** Phase 1 → manifesto piece + editorial pillar reshape, high authority play.
105
+ **Failure mode:** Chasing every language shift as if it were a category shift.
106
+
107
+ ### 3.5 Competitor Move
108
+
109
+ **Definition:** A direct, attributable action by a known competitor — launch, campaign, messaging shift, hiring pattern, product change.
110
+ **Velocity:** Days to weeks.
111
+ **Example:** Competitor launches a new tier; opportunity to reframe your own positioning.
112
+ **Routing:** Phase 1 → analyst pass (`benchmark-against-competitors`) → Phase 2 strategic response content.
113
+ **Failure mode:** Obsessively responding to competitors instead of leading the category.
114
+
115
+ ---
116
+
117
+ ## 4. Signal-to-Pillar Routing Rules
118
+
119
+ Every signal must be routed to an editorial pillar before it enters Phase 2. Unrouted signals are archived.
120
+
121
+ ### 4.1 Routing Algorithm
122
+
123
+ ```
124
+ 1. Classify signal into one of 5 categories (§3)
125
+ 2. Match signal to existing editorial pillars via semantic overlap
126
+ 3. If match → route to pillar, schedule in Phase 2 queue
127
+ 4. If no match → check if the signal is a Category Shift (rare but possible)
128
+ - YES → escalate to editorial-strategist for pillar review
129
+ - NO → archive with "no pillar fit" tag
130
+ 5. If match spans multiple pillars → assign primary pillar + cross-reference secondary
131
+ ```
132
+
133
+ ### 4.2 Routing Priority Matrix
134
+
135
+ | Signal Category | Priority | Route Directly To |
136
+ |----------------|----------|-------------------|
137
+ | Crisis Alert | P0 | content-orqx → editorial-strategist (escalation) |
138
+ | Opportunity Window | P1 | Phase 2 fast-track, content-engineer |
139
+ | Competitor Move | P2 | content-analyst benchmark, then content-engineer |
140
+ | Trend Seed | P3 | editorial-strategist for calendar insertion |
141
+ | Category Shift | P3 | editorial-strategist for pillar reshape consideration |
142
+
143
+ ---
144
+
145
+ ## 5. Signal Quality Scoring
146
+
147
+ Every signal, before entering Phase 2, is scored 1-5 on 5 dimensions. A signal must score ≥ 3.0 average to enter Phase 2.
148
+
149
+ | Dimension | 1 | 5 |
150
+ |-----------|---|---|
151
+ | **Relevance** to pillar/client | Unrelated | Perfect pillar fit |
152
+ | **Novelty** vs prior content | Covered recently | Fresh angle |
153
+ | **Evidence** backing the signal | 1 weak source | 3+ independent sources |
154
+ | **Actionability** for target audience | No clear reader action | Clear reader takeaway |
155
+ | **Window** still open | Closed/saturated | Open and ahead of curve |
156
+
157
+ Final score = average of 5 dimensions. Below 3.0 → archive. 3.0-4.0 → Phase 2 standard. 4.0-5.0 → Phase 2 priority + optional cross-platform batch.
158
+
159
+ ---
160
+
161
+ ## 6. Source Monitoring Cadence
162
+
163
+ | Tier | Source | Cadence |
164
+ |------|--------|---------|
165
+ | A | X API v2 | Continuous (webhooks/streams where possible) |
166
+ | A | TikTok Research API | Daily batch query per pillar |
167
+ | A | YouTube Data API | Daily batch |
168
+ | A | Reddit API | Twice daily |
169
+ | A | Google Trends | Twice daily |
170
+ | B | Apify actors | Daily (rotating by cost) |
171
+ | B | Substack RSS | Continuous |
172
+ | C | Exploding Topics / SparkToro / BuzzSumo | Weekly |
173
+ | C | Newsletters | Daily at fixed time |
174
+ | D | Client DMs / analytics | Continuous |
175
+ | D | Sales transcripts | Weekly batch |
176
+
177
+ ---
178
+
179
+ ## 7. Anti-Patterns (v2 additions over v1)
180
+
181
+ - **API-only monitoring** — missing Tier D (client-proprietary) signals is the most expensive blind spot.
182
+ - **Grok as sole summarizer** — powerful but opinionated; cross-reference with raw X posts.
183
+ - **Scraping without legal basis** — Tier B Apify usage must document basis per actor.
184
+ - **Treating Crisis Alerts as Opportunity Windows** — speed without care damages brand.
185
+ - **Category Shift false positives** — most language shifts are not category shifts; require multi-source, multi-month evidence.
186
+ - **Signals without routing** — unrouted signals clutter the pipeline and never become content.
187
+ - **Ignoring Tier D in favor of Tier A** — public-web signals are the same ones everyone else sees.
188
+
189
+ ---
190
+
191
+ ## 8. Handoff to Phase 2 (AI Draft)
192
+
193
+ When a signal passes quality scoring and routing, the hand-off package to Phase 2 contains:
194
+
195
+ ```
196
+ signal:
197
+ id: sig-{yyyymmdd}-{n}
198
+ category: opportunity_window | trend_seed | crisis_alert | category_shift | competitor_move
199
+ source_tier: A | B | C | D
200
+ source_name: e.g., "X API v2"
201
+ evidence:
202
+ - url: ...
203
+ excerpt: ...
204
+ - url: ...
205
+ excerpt: ...
206
+ pillar_primary: ...
207
+ pillar_secondary: [...]
208
+ quality_score: 4.2
209
+ window_open_until: 2026-04-15T18:00Z
210
+ suggested_thesis: "..."
211
+ suggested_format: ["carousel", "thread"]
212
+ ```
213
+
214
+ This is the structured input that `content-engineer` (Arc) consumes at Phase 2 of `ai-native-content-loop.md`.
215
+
216
+ ---
217
+
218
+ ## 9. Relationship to v1 KB
219
+
220
+ | Topic | v1 (signal-detection-methods.md) | v2 (this KB) |
221
+ |-------|----------------------------------|--------------|
222
+ | What is a signal | DEFINITIVE | Referenced |
223
+ | 7 signal types | DEFINITIVE | Referenced |
224
+ | Source catalog | Stale (2026 update) | **DEFINITIVE** |
225
+ | Classification taxonomy | Not covered | **DEFINITIVE** |
226
+ | Routing rules | Not covered | **DEFINITIVE** |
227
+ | Quality scoring | Not covered | **DEFINITIVE** |
228
+ | Handoff format | Not covered | **DEFINITIVE** |
229
+
230
+ ---
231
+
232
+ ## Change Log
233
+
234
+ - 2026-04-12 — v1.0 authored as part of Story fw-v2.4 (squad-content v2.0 upgrade). Additive to v1 signal-detection-methods.md — v1 is NOT modified.
@@ -0,0 +1,235 @@
1
+ # Task Ownership Map — squad-content v2.0
2
+
3
+ > **Status:** Canon (squad-content v2.0)
4
+ > **Owner:** content-orqx (Nexus) — curator; all 7 agents contribute via audit
5
+ > **Created:** 2026-04-12 for Story fw-v2.4
6
+ > **Source of truth:** Disk reality of `squads/squad-content/tasks/` at 2026-04-12 (90 task files)
7
+
8
+ ---
9
+
10
+ ## 1. Why This Exists
11
+
12
+ squad-content is the heaviest task squad in SINAPSE (90 tasks across 7 agents). Without an explicit ownership map, tasks implicitly belong to the first agent that opened a file, which leads to:
13
+
14
+ - **Ownership ambiguity** — nobody feels accountable for a given task
15
+ - **Over-load and under-load drift** — some agents carry 25+ tasks, others carry 5
16
+ - **Orphaned tasks** — legacy tasks with no clear owner
17
+ - **Cross-agent duplication** — two agents quietly build parallel versions of the same capability
18
+
19
+ This KB makes ownership explicit: **every task has exactly one primary agent and zero to two secondary agents.** The yaml `components.agents` block in `squads/squad-content/squad.yaml` will carry a `tasks:` field per agent reflecting this map, so both humans and the framework runtime can resolve ownership deterministically.
20
+
21
+ ---
22
+
23
+ ## 2. Ownership Definitions
24
+
25
+ | Role | Responsibility |
26
+ |------|---------------|
27
+ | **Primary** | Owns the task: maintains it, receives the work request first, executes or delegates, accountable for output quality |
28
+ | **Secondary** | Collaborates when the primary requests help, adds domain-specific layers (ex: content-governor adds compliance check to a write-* task), can be a reviewer but not the executor |
29
+
30
+ A task can only have ONE primary. Up to TWO secondaries.
31
+
32
+ ---
33
+
34
+ ## 3. Full Ownership Matrix (90 tasks)
35
+
36
+ ### 3.1 Orchestrator — content-orqx (Nexus) — 5 primary tasks
37
+
38
+ | Task | Primary | Secondary | Phase in loop |
39
+ |------|---------|-----------|--------------|
40
+ | `orchestrate-content-pipeline.md` | content-orqx | — | cross-phase |
41
+ | `manage-content-sprint.md` | content-orqx | editorial-strategist | cross-phase |
42
+ | `coordinate-cross-squad.md` | content-orqx | — | cross-phase |
43
+ | `triage-content-requests.md` | content-orqx | editorial-strategist | pre-phase-1 |
44
+ | `triage-urgent-signal.md` | content-orqx | signal-intelligence | phase 1 |
45
+
46
+ ### 3.2 Signal Intelligence (Radar) — 10 primary tasks
47
+
48
+ | Task | Primary | Secondary | Phase |
49
+ |------|---------|-----------|-------|
50
+ | `scan-daily-signals.md` | signal-intelligence | — | 1 |
51
+ | `detect-trending-topics.md` | signal-intelligence | — | 1 |
52
+ | `map-cultural-signals.md` | signal-intelligence | editorial-strategist | 1 |
53
+ | `curate-weekly-briefing.md` | signal-intelligence | content-orqx | 1 |
54
+ | `monitor-competitor-content.md` | signal-intelligence | content-analyst | 1 |
55
+ | `alert-opportunity-windows.md` | signal-intelligence | editorial-strategist | 1 |
56
+ | `classify-signal-temperature.md` | signal-intelligence | — | 1 |
57
+ | `map-signal-to-pillar.md` | signal-intelligence | editorial-strategist | 1 |
58
+ | `configure-signal-sources.md` | signal-intelligence | content-orqx | 1 |
59
+ | `curate-ugc-signals.md` | signal-intelligence | content-governor | 1 |
60
+
61
+ ### 3.3 Editorial Strategist (North) — 10 primary tasks
62
+
63
+ | Task | Primary | Secondary | Phase |
64
+ |------|---------|-----------|-------|
65
+ | `define-big-idea.md` | editorial-strategist | content-orqx | pre-phase-1 |
66
+ | `define-editorial-pillars.md` | editorial-strategist | content-orqx, signal-intelligence | pre-phase-1 |
67
+ | `create-editorial-calendar.md` | editorial-strategist | platform-specialist | pre-phase-1 |
68
+ | `plan-content-sprint.md` | editorial-strategist | content-orqx | pre-phase-1 |
69
+ | `align-content-to-funnel.md` | editorial-strategist | — | pre-phase-1 |
70
+ | `map-content-gaps.md` | editorial-strategist | content-analyst | 6 (retrofeed) |
71
+ | `plan-seasonal-content.md` | editorial-strategist | — | pre-phase-1 |
72
+ | `prioritize-themes.md` | editorial-strategist | content-orqx | pre-phase-1 |
73
+ | `balance-content-mix.md` | editorial-strategist | platform-specialist | pre-phase-1 |
74
+ | `define-content-kpis.md` | editorial-strategist | content-analyst | pre-phase-1 |
75
+
76
+ ### 3.4 Content Engineer (Arc) — 25 primary tasks
77
+
78
+ Structure mode (11):
79
+
80
+ | Task | Primary | Secondary | Phase |
81
+ |------|---------|-----------|-------|
82
+ | `design-content-spine.md` | content-engineer | editorial-strategist | 2 |
83
+ | `design-narrative-arc.md` | content-engineer | — | 2 |
84
+ | `structure-carousel-progression.md` | content-engineer | platform-specialist | 2 |
85
+ | `structure-video-script.md` | content-engineer | platform-specialist | 2 |
86
+ | `design-content-series.md` | content-engineer | editorial-strategist | 2 |
87
+ | `apply-storybrand-framework.md` | content-engineer | — | 2 |
88
+ | `design-pillar-cluster-model.md` | content-engineer | editorial-strategist | 2 |
89
+ | `create-content-brief.md` | content-engineer | content-orqx | 2 |
90
+ | `design-hook-system.md` | content-engineer | — | 2 |
91
+ | `structure-argument-progression.md` | content-engineer | — | 2 |
92
+ | `define-content-depth-levels.md` | content-engineer | editorial-strategist | 2 |
93
+
94
+ Write mode (12):
95
+
96
+ | Task | Primary | Secondary | Phase |
97
+ |------|---------|-----------|-------|
98
+ | `write-carousel-content.md` | content-engineer | platform-specialist | 2 |
99
+ | `write-instagram-caption.md` | content-engineer | platform-specialist | 2 |
100
+ | `write-linkedin-post.md` | content-engineer | platform-specialist | 2 |
101
+ | `write-blog-article.md` | content-engineer | — | 2 |
102
+ | `write-video-script.md` | content-engineer | platform-specialist | 2 |
103
+ | `write-reel-script.md` | content-engineer | platform-specialist | 2 |
104
+ | `write-newsletter-editorial.md` | content-engineer | editorial-strategist | 2 |
105
+ | `write-thread-content.md` | content-engineer | platform-specialist | 2 |
106
+ | `write-opinion-post.md` | content-engineer | editorial-strategist | 2 |
107
+ | `write-case-study.md` | content-engineer | content-analyst | 2 |
108
+ | `write-educational-content.md` | content-engineer | — | 2 |
109
+ | `write-product-content.md` | content-engineer | editorial-strategist | 2 |
110
+
111
+ Verification + Batch (2):
112
+
113
+ | Task | Primary | Secondary | Phase |
114
+ |------|---------|-----------|-------|
115
+ | `verify-algorithmic-hooks.md` | content-engineer | platform-specialist | 3/4 |
116
+ | `batch-content-production.md` | content-engineer | platform-specialist | 2 |
117
+
118
+ ### 3.5 Platform Specialist (Morph) — 17 primary tasks
119
+
120
+ | Task | Primary | Secondary | Phase |
121
+ |------|---------|-----------|-------|
122
+ | `adapt-for-instagram-feed.md` | platform-specialist | content-engineer | 4 |
123
+ | `adapt-for-instagram-stories.md` | platform-specialist | content-engineer | 4 |
124
+ | `adapt-for-instagram-reels.md` | platform-specialist | content-engineer | 4 |
125
+ | `adapt-for-linkedin.md` | platform-specialist | content-engineer | 4 |
126
+ | `adapt-for-blog-seo.md` | platform-specialist | content-engineer | 4 |
127
+ | `adapt-for-tiktok.md` | platform-specialist | content-engineer | 4 |
128
+ | `adapt-for-twitter-threads.md` | platform-specialist | content-engineer | 4 |
129
+ | `define-posting-schedule.md` | platform-specialist | editorial-strategist | 4 |
130
+ | `create-platform-guidelines.md` | platform-specialist | content-governor | 4 |
131
+ | `optimize-for-algorithm.md` | platform-specialist | — | 4 |
132
+ | `design-content-atomization.md` | platform-specialist | content-engineer | 4 |
133
+ | `register-template-contract.md` | platform-specialist | content-governor | 4 |
134
+ | `update-template-specs.md` | platform-specialist | content-governor | 4 |
135
+ | `adapt-content-language.md` | platform-specialist | — | 4 |
136
+ | `batch-platform-adaptation.md` | platform-specialist | content-engineer | 4 |
137
+ | `flag-content-for-amplification.md` | platform-specialist | content-analyst | 4/5 |
138
+ | `integrate-brand-visual-assets.md` | platform-specialist | — | 4 |
139
+
140
+ ### 3.6 Content Governor (Index) — 12 primary tasks
141
+
142
+ | Task | Primary | Secondary | Phase |
143
+ |------|---------|-----------|-------|
144
+ | `audit-content-library.md` | content-governor | content-analyst | 6 |
145
+ | `check-brand-consistency.md` | content-governor | — | 3 |
146
+ | `validate-content-quality.md` | content-governor | editorial-strategist | 3 |
147
+ | `manage-content-taxonomy.md` | content-governor | — | 6 |
148
+ | `organize-content-archive.md` | content-governor | — | 6 |
149
+ | `create-content-governance.md` | content-governor | content-orqx | cross-phase |
150
+ | `define-content-standards.md` | content-governor | content-orqx | cross-phase |
151
+ | `audit-template-compliance.md` | content-governor | platform-specialist | 4/6 |
152
+ | `validate-content-compliance.md` | content-governor | — | 3 |
153
+ | `process-content-rejection.md` | content-governor | editorial-strategist | 3 |
154
+ | `import-existing-content-library.md` | content-governor | — | pre-phase-1 |
155
+ | `update-content-preferences.md` | content-governor | content-analyst | 6 |
156
+
157
+ ### 3.7 Content Analyst (Lens) — 11 primary tasks
158
+
159
+ | Task | Primary | Secondary | Phase |
160
+ |------|---------|-----------|-------|
161
+ | `analyze-content-performance.md` | content-analyst | — | 5 |
162
+ | `score-content-quality.md` | content-analyst | content-governor | 5 |
163
+ | `measure-content-roi.md` | content-analyst | — | 5 |
164
+ | `track-engagement-patterns.md` | content-analyst | — | 5 |
165
+ | `benchmark-against-competitors.md` | content-analyst | signal-intelligence | 5 |
166
+ | `evaluate-eeat-compliance.md` | content-analyst | content-governor | 5 |
167
+ | `generate-content-report.md` | content-analyst | — | 5 |
168
+ | `identify-top-performers.md` | content-analyst | — | 5 |
169
+ | `predict-content-performance.md` | content-analyst | — | 5 |
170
+ | `analyze-audience-behavior.md` | content-analyst | signal-intelligence | 5 |
171
+ | `generate-retrofeed-insights.md` | content-analyst | content-orqx, editorial-strategist | 6 |
172
+
173
+ ---
174
+
175
+ ## 4. Ownership Summary
176
+
177
+ | Agent | Primary Count | Phase Coverage | Load Category |
178
+ |-------|--------------|----------------|---------------|
179
+ | content-orqx (Nexus) | 5 | cross-phase | Coordinator (intentionally light) |
180
+ | signal-intelligence (Radar) | 10 | Phase 1 | Balanced |
181
+ | editorial-strategist (North) | 10 | Pre-phase / Phase 6 | Balanced |
182
+ | content-engineer (Arc) | 25 | Phase 2 | **OVER-LOADED** |
183
+ | platform-specialist (Morph) | 17 | Phase 4 | High but coherent |
184
+ | content-governor (Index) | 12 | Phase 3 + 6 | Balanced |
185
+ | content-analyst (Lens) | 11 | Phase 5 + 6 | Balanced |
186
+ | **Total** | **90** | All 6 | — |
187
+
188
+ ---
189
+
190
+ ## 5. Imbalance Audit
191
+
192
+ ### 5.1 content-engineer (Arc) is over-loaded
193
+
194
+ Arc carries 25 primary tasks — nearly 2x the next-heaviest agent. This is a legitimate imbalance because Arc owns both structural design AND the full writing surface (12 write-* tasks). In v2 we document the imbalance but do **not** create a new agent in this story (see `scope_out` of fw-v2.4).
195
+
196
+ **Open question for a future story:** should Arc split into `structure-engineer` (design-* + structure-*) + `content-writer` (write-* family)? This is a candidate for fw-v3 or a dedicated refactoring story. Logged here, not executed here.
197
+
198
+ ### 5.2 content-orqx (Nexus) is intentionally light
199
+
200
+ 5 tasks is correct for the orchestrator — Nexus delegates and coordinates, never executes write-* or analyze-*. Any attempt to grow Nexus's primary count is a smell.
201
+
202
+ ### 5.3 Phase 6 (Retrofeed) is thin
203
+
204
+ Only 3 tasks are explicitly phase-6 primaries (`generate-retrofeed-insights`, `audit-content-library`, `map-content-gaps`, `update-content-preferences`). This may be a real capability gap — retrofeed automation tasks could grow in a future story.
205
+
206
+ ### 5.4 No orphans detected
207
+
208
+ Every one of the 90 tasks has a clear primary owner. No orphaned tasks found during the audit.
209
+
210
+ ---
211
+
212
+ ## 6. How to Use This Map
213
+
214
+ 1. **Request routing** — When a client request hits `triage-content-requests`, the map determines which agent is invoked.
215
+ 2. **Runtime enforcement** — The yaml `components.agents[].tasks` field reflects this map for deterministic resolution by the framework.
216
+ 3. **Load balancing** — Future sprints should use the "Load Category" column to avoid bottlenecking Arc.
217
+ 4. **Onboarding** — A new operator sees at a glance which agent owns what.
218
+ 5. **Cross-agent handoffs** — When a primary needs a secondary, this map is the handshake reference.
219
+
220
+ ---
221
+
222
+ ## 7. Update Protocol
223
+
224
+ This KB must be re-synced whenever:
225
+ - A task file is added, removed or renamed in `squads/squad-content/tasks/`
226
+ - A new agent joins squad-content
227
+ - A task primary changes owner
228
+
229
+ The re-sync is run by `content-orqx` with co-sign from the affected primary/secondary agents.
230
+
231
+ ---
232
+
233
+ ## Change Log
234
+
235
+ - 2026-04-12 — v1.0 authored as part of Story fw-v2.4 (squad-content v2.0 upgrade). 90 tasks mapped, 7 agents covered, 0 orphans, Arc over-load formally logged.