arscontexta 0.6.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/.claude-plugin/marketplace.json +11 -0
- package/.claude-plugin/plugin.json +22 -0
- package/README.md +683 -0
- package/agents/knowledge-guide.md +49 -0
- package/bin/cli.mjs +66 -0
- package/generators/agents-md.md +240 -0
- package/generators/claude-md.md +379 -0
- package/generators/features/atomic-notes.md +124 -0
- package/generators/features/ethical-guardrails.md +58 -0
- package/generators/features/graph-analysis.md +188 -0
- package/generators/features/helper-functions.md +92 -0
- package/generators/features/maintenance.md +164 -0
- package/generators/features/methodology-knowledge.md +70 -0
- package/generators/features/mocs.md +144 -0
- package/generators/features/multi-domain.md +61 -0
- package/generators/features/personality.md +71 -0
- package/generators/features/processing-pipeline.md +428 -0
- package/generators/features/schema.md +149 -0
- package/generators/features/self-evolution.md +229 -0
- package/generators/features/self-space.md +78 -0
- package/generators/features/semantic-search.md +99 -0
- package/generators/features/session-rhythm.md +85 -0
- package/generators/features/templates.md +85 -0
- package/generators/features/wiki-links.md +88 -0
- package/generators/soul-md.md +121 -0
- package/hooks/hooks.json +45 -0
- package/hooks/scripts/auto-commit.sh +44 -0
- package/hooks/scripts/session-capture.sh +35 -0
- package/hooks/scripts/session-orient.sh +86 -0
- package/hooks/scripts/write-validate.sh +42 -0
- package/methodology/AI shifts knowledge systems from externalizing memory to externalizing attention.md +59 -0
- package/methodology/BM25 retrieval fails on full-length descriptions because query term dilution reduces match scores.md +39 -0
- package/methodology/IBIS framework maps claim-based architecture to structured argumentation.md +58 -0
- package/methodology/LLM attention degrades as context fills.md +49 -0
- package/methodology/MOC construction forces synthesis that automated generation from metadata cannot replicate.md +49 -0
- package/methodology/MOC maintenance investment compounds because orientation savings multiply across every future session.md +41 -0
- package/methodology/MOCs are attention management devices not just organizational tools.md +51 -0
- package/methodology/PKM failure follows a predictable cycle.md +50 -0
- package/methodology/ThreadMode to DocumentMode transformation is the core value creation step.md +52 -0
- package/methodology/WIP limits force processing over accumulation.md +53 -0
- package/methodology/Zeigarnik effect validates capture-first philosophy because open loops drain attention.md +42 -0
- package/methodology/academic research uses structured extraction with cross-source synthesis.md +566 -0
- package/methodology/adapt the four-phase processing pipeline to domain-specific throughput needs.md +197 -0
- package/methodology/agent notes externalize navigation intuition that search cannot discover and traversal cannot reconstruct.md +48 -0
- package/methodology/agent self-memory should be architecturally separate from user knowledge systems.md +48 -0
- package/methodology/agent session boundaries create natural automation checkpoints that human-operated systems lack.md +56 -0
- package/methodology/agent-cognition.md +107 -0
- package/methodology/agents are simultaneously methodology executors and subjects creating a unique trust asymmetry.md +66 -0
- package/methodology/aspect-oriented programming solved the same cross-cutting concern problem that hooks solve.md +39 -0
- package/methodology/associative ontologies beat hierarchical taxonomies because heterarchy adapts while hierarchy brittles.md +53 -0
- package/methodology/attention residue may have a minimum granularity that cannot be subdivided.md +46 -0
- package/methodology/auto-commit hooks eliminate prospective memory failures by converting remember-to-act into guaranteed execution.md +47 -0
- package/methodology/automated detection is always safe because it only reads state while automated remediation risks content corruption.md +42 -0
- package/methodology/automation should be retired when its false positive rate exceeds its true positive rate or it catches zero issues.md +56 -0
- package/methodology/backlinks implicitly define notes by revealing usage context.md +35 -0
- package/methodology/backward maintenance asks what would be different if written today.md +62 -0
- package/methodology/balance onboarding enforcement and questions to prevent premature complexity.md +229 -0
- package/methodology/basic level categorization determines optimal MOC granularity.md +51 -0
- package/methodology/batching by context similarity reduces switching costs in agent processing.md +43 -0
- package/methodology/behavioral anti-patterns matter more than tool selection.md +42 -0
- package/methodology/betweenness centrality identifies bridge notes connecting disparate knowledge domains.md +57 -0
- package/methodology/blueprints that teach construction outperform downloads that provide pre-built code for platform-dependent modules.md +42 -0
- package/methodology/bootstrapping principle enables self-improving systems.md +62 -0
- package/methodology/build automatic memory through cognitive offloading and session handoffs.md +285 -0
- package/methodology/capture the reaction to content not just the content itself.md +41 -0
- package/methodology/claims must be specific enough to be wrong.md +36 -0
- package/methodology/closure rituals create clean breaks that prevent attention residue bleed.md +44 -0
- package/methodology/cognitive offloading is the architectural foundation for vault design.md +46 -0
- package/methodology/cognitive outsourcing risk in agent-operated systems.md +55 -0
- package/methodology/coherence maintains consistency despite inconsistent inputs.md +96 -0
- package/methodology/coherent architecture emerges from wiki links spreading activation and small-world topology.md +48 -0
- package/methodology/community detection algorithms can inform when MOCs should split or merge.md +52 -0
- package/methodology/complete navigation requires four complementary types that no single mechanism provides.md +43 -0
- package/methodology/complex systems evolve from simple working systems.md +59 -0
- package/methodology/composable knowledge architecture builds systems from independent toggleable modules not monolithic templates.md +61 -0
- package/methodology/compose multi-domain systems through separate templates and shared graph.md +372 -0
- package/methodology/concept-orientation beats source-orientation for cross-domain connections.md +51 -0
- package/methodology/confidence thresholds gate automated action between the mechanical and judgment zones.md +50 -0
- package/methodology/configuration dimensions interact so choices in one create pressure on others.md +58 -0
- package/methodology/configuration paralysis emerges when derivation surfaces too many decisions.md +44 -0
- package/methodology/context files function as agent operating systems through self-referential self-extension.md +46 -0
- package/methodology/context phrase clarity determines how deep a navigation hierarchy can scale.md +46 -0
- package/methodology/continuous small-batch processing eliminates review dread.md +48 -0
- package/methodology/controlled disorder engineers serendipity through semantic rather than topical linking.md +51 -0
- package/methodology/creative writing uses worldbuilding consistency with character tracking.md +672 -0
- package/methodology/cross-links between MOC territories indicate creative leaps and integration depth.md +43 -0
- package/methodology/dangling links reveal which notes want to exist.md +62 -0
- package/methodology/data exit velocity measures how quickly content escapes vendor lock-in.md +74 -0
- package/methodology/decontextualization risk means atomicity may strip meaning that cannot be recovered.md +48 -0
- package/methodology/dense interlinked research claims enable derivation while sparse references only enable templating.md +47 -0
- package/methodology/dependency resolution through topological sort makes module composition transparent and verifiable.md +56 -0
- package/methodology/derivation generates knowledge systems from composable research claims not template customization.md +63 -0
- package/methodology/derivation-engine.md +27 -0
- package/methodology/derived systems follow a seed-evolve-reseed lifecycle.md +56 -0
- package/methodology/description quality for humans diverges from description quality for keyword search.md +73 -0
- package/methodology/descriptions are retrieval filters not summaries.md +112 -0
- package/methodology/design MOCs as attention management devices with lifecycle governance.md +318 -0
- package/methodology/design-dimensions.md +66 -0
- package/methodology/digital mutability enables note evolution that physical permanence forbids.md +54 -0
- package/methodology/discovery-retrieval.md +48 -0
- package/methodology/distinctiveness scoring treats description quality as measurable.md +69 -0
- package/methodology/does agent processing recover what fast capture loses.md +43 -0
- package/methodology/domain-compositions.md +37 -0
- package/methodology/dual-coding with visual elements could enhance agent traversal.md +55 -0
- package/methodology/each module must be describable in one sentence under 200 characters or it does too many things.md +45 -0
- package/methodology/each new note compounds value by creating traversal paths.md +55 -0
- package/methodology/eight configuration dimensions parameterize the space of possible knowledge systems.md +56 -0
- package/methodology/elaborative encoding is the quality gate for new notes.md +55 -0
- package/methodology/enforce schema with graduated strictness across capture processing and query zones.md +221 -0
- package/methodology/enforcing atomicity can create paralysis when ideas resist decomposition.md +43 -0
- package/methodology/engineering uses technical decision tracking with architectural memory.md +766 -0
- package/methodology/every knowledge domain shares a four-phase processing skeleton that diverges only in the process step.md +53 -0
- package/methodology/evolution observations provide actionable signals for system adaptation.md +67 -0
- package/methodology/external memory shapes cognition more than base model.md +60 -0
- package/methodology/faceted classification treats notes as multi-dimensional objects rather than folder contents.md +65 -0
- package/methodology/failure-modes.md +27 -0
- package/methodology/false universalism applies same processing logic regardless of domain.md +49 -0
- package/methodology/federated wiki pattern enables multi-agent divergence as feature not bug.md +59 -0
- package/methodology/flat files break at retrieval scale.md +75 -0
- package/methodology/forced engagement produces weak connections.md +48 -0
- package/methodology/four abstraction layers separate platform-agnostic from platform-dependent knowledge system features.md +47 -0
- package/methodology/fresh context per task preserves quality better than chaining phases.md +44 -0
- package/methodology/friction reveals architecture.md +63 -0
- package/methodology/friction-driven module adoption prevents configuration debt by adding complexity only at pain points.md +48 -0
- package/methodology/gardening cycle implements tend prune fertilize operations.md +41 -0
- package/methodology/generation effect gate blocks processing without transformation.md +40 -0
- package/methodology/goal-driven memory orchestration enables autonomous domain learning through directed compute allocation.md +41 -0
- package/methodology/good descriptions layer heuristic then mechanism then implication.md +57 -0
- package/methodology/graph-structure.md +65 -0
- package/methodology/guided notes might outperform post-hoc structuring for high-volume capture.md +37 -0
- package/methodology/health wellness uses symptom-trigger correlation with multi-dimensional tracking.md +819 -0
- package/methodology/hook composition creates emergent methodology from independent single-concern components.md +47 -0
- package/methodology/hook enforcement guarantees quality while instruction enforcement merely suggests it.md +51 -0
- package/methodology/hook-driven learning loops create self-improving methodology through observation accumulation.md +62 -0
- package/methodology/hooks are the agent habit system that replaces the missing basal ganglia.md +40 -0
- package/methodology/hooks cannot replace genuine cognitive engagement yet more automation is always tempting.md +87 -0
- package/methodology/hooks enable context window efficiency by delegating deterministic checks to external processes.md +47 -0
- package/methodology/idempotent maintenance operations are safe to automate because running them twice produces the same result as running them once.md +44 -0
- package/methodology/implement condition-based maintenance triggers for derived systems.md +255 -0
- package/methodology/implicit dependencies create distributed monoliths that fail silently across configurations.md +58 -0
- package/methodology/implicit knowledge emerges from traversal.md +55 -0
- package/methodology/incremental formalization happens through repeated touching of old notes.md +60 -0
- package/methodology/incremental reading enables cross-source connection finding.md +39 -0
- package/methodology/index.md +32 -0
- package/methodology/inline links carry richer relationship data than metadata fields.md +91 -0
- package/methodology/insight accretion differs from productivity in knowledge systems.md +41 -0
- package/methodology/intermediate packets enable assembly over creation.md +52 -0
- package/methodology/intermediate representation pattern enables reliable vault operations beyond regex.md +62 -0
- package/methodology/justification chains enable forward backward and evolution reasoning about configuration decisions.md +46 -0
- package/methodology/knowledge system architecture is parameterized by platform capabilities not fixed by methodology.md +51 -0
- package/methodology/knowledge systems become communication partners through complexity and memory humans cannot sustain.md +47 -0
- package/methodology/knowledge systems share universal operations and structural components across all methodology traditions.md +46 -0
- package/methodology/legal case management uses precedent chains with regulatory change propagation.md +892 -0
- package/methodology/live index via periodic regeneration keeps discovery current.md +58 -0
- package/methodology/local-first file formats are inherently agent-native.md +69 -0
- package/methodology/logic column pattern separates reasoning from procedure.md +35 -0
- package/methodology/maintenance operations are more universal than creative pipelines because structural health is domain-invariant.md +47 -0
- package/methodology/maintenance scheduling frequency should match consequence speed not detection capability.md +50 -0
- package/methodology/maintenance targeting should prioritize mechanism and theory notes.md +26 -0
- package/methodology/maintenance-patterns.md +72 -0
- package/methodology/markdown plus YAML plus ripgrep implements a queryable graph database without infrastructure.md +55 -0
- package/methodology/maturity field enables agent context prioritization.md +33 -0
- package/methodology/memory-architecture.md +27 -0
- package/methodology/metacognitive confidence can diverge from retrieval capability.md +42 -0
- package/methodology/metadata reduces entropy enabling precision over recall.md +91 -0
- package/methodology/methodology development should follow the trajectory from documentation to skill to hook as understanding hardens.md +80 -0
- package/methodology/methodology traditions are named points in a shared configuration space not competing paradigms.md +64 -0
- package/methodology/mnemonic medium embeds verification into navigation.md +46 -0
- package/methodology/module communication through shared YAML fields creates loose coupling without direct dependencies.md +44 -0
- package/methodology/module deactivation must account for structural artifacts that survive the toggle.md +49 -0
- package/methodology/multi-domain systems compose through separate templates and shared graph.md +61 -0
- package/methodology/multi-domain-composition.md +27 -0
- package/methodology/narrow folksonomy optimizes for single-operator retrieval unlike broad consensus tagging.md +53 -0
- package/methodology/navigation infrastructure passes through distinct scaling regimes that require qualitative strategy shifts.md +48 -0
- package/methodology/navigational vertigo emerges in pure association systems without local hierarchy.md +54 -0
- package/methodology/note titles should function as APIs enabling sentence transclusion.md +51 -0
- package/methodology/note-design.md +57 -0
- package/methodology/notes are skills /342/200/224 curated knowledge injected when relevant.md" +62 -0
- package/methodology/notes function as cognitive anchors that stabilize attention during complex tasks.md +41 -0
- package/methodology/novel domains derive by mapping knowledge type to closest reference domain then adapting.md +50 -0
- package/methodology/nudge theory explains graduated hook enforcement as choice architecture for agents.md +59 -0
- package/methodology/observation and tension logs function as dead-letter queues for failed automation.md +51 -0
- package/methodology/operational memory and knowledge memory serve different functions in agent architecture.md +48 -0
- package/methodology/operational wisdom requires contextual observation.md +52 -0
- package/methodology/orchestrated vault creation transforms arscontexta from tool to autonomous knowledge factory.md +40 -0
- package/methodology/organic emergence versus active curation creates a fundamental vault governance tension.md +68 -0
- package/methodology/orphan notes are seeds not failures.md +38 -0
- package/methodology/over-automation corrupts quality when hooks encode judgment rather than verification.md +62 -0
- package/methodology/people relationships uses Dunbar-layered graphs with interaction tracking.md +659 -0
- package/methodology/personal assistant uses life area management with review automation.md +610 -0
- package/methodology/platform adapter translation is semantic not mechanical because hook event meanings differ.md +40 -0
- package/methodology/platform capability tiers determine which knowledge system features can be implemented.md +48 -0
- package/methodology/platform fragmentation means identical conceptual operations require different implementations across agent environments.md +44 -0
- package/methodology/premature complexity is the most common derivation failure mode.md +45 -0
- package/methodology/prevent domain-specific failure modes through the vulnerability matrix.md +336 -0
- package/methodology/processing effort should follow retrieval demand.md +57 -0
- package/methodology/processing-workflows.md +75 -0
- package/methodology/product management uses feedback pipelines with experiment tracking.md +789 -0
- package/methodology/productivity porn risk in meta-system building.md +30 -0
- package/methodology/programmable notes could enable property-triggered workflows.md +64 -0
- package/methodology/progressive disclosure means reading right not reading less.md +69 -0
- package/methodology/progressive schema validates only what active modules require not the full system schema.md +49 -0
- package/methodology/project management uses decision tracking with stakeholder context.md +776 -0
- package/methodology/propositional link semantics transform wiki links from associative to reasoned.md +87 -0
- package/methodology/prospective memory requires externalization.md +53 -0
- package/methodology/provenance tracks where beliefs come from.md +62 -0
- package/methodology/queries evolve during search so agents should checkpoint.md +35 -0
- package/methodology/question-answer metadata enables inverted search patterns.md +39 -0
- package/methodology/random note resurfacing prevents write-only memory.md +33 -0
- package/methodology/reconciliation loops that compare desired state to actual state enable drift correction without continuous monitoring.md +59 -0
- package/methodology/reflection synthesizes existing notes into new insight.md +100 -0
- package/methodology/retrieval utility should drive design over capture completeness.md +69 -0
- package/methodology/retrieval verification loop tests description quality at scale.md +81 -0
- package/methodology/role field makes graph structure explicit.md +94 -0
- package/methodology/scaffolding enables divergence that fine-tuning cannot.md +67 -0
- package/methodology/schema enforcement via validation agents enables soft consistency.md +60 -0
- package/methodology/schema evolution follows observe-then-formalize not design-then-enforce.md +65 -0
- package/methodology/schema field names are the only domain specific element in the universal note pattern.md +46 -0
- package/methodology/schema fields should use domain-native vocabulary not abstract terminology.md +47 -0
- package/methodology/schema templates reduce cognitive overhead at capture time.md +55 -0
- package/methodology/schema validation hooks externalize inhibitory control that degrades under cognitive load.md +48 -0
- package/methodology/schema-enforcement.md +27 -0
- package/methodology/self-extension requires context files to contain platform operations knowledge not just methodology.md +47 -0
- package/methodology/sense-making vs storage does compression lose essential nuance.md +73 -0
- package/methodology/session boundary hooks implement cognitive bookends for orientation and reflection.md +60 -0
- package/methodology/session handoff creates continuity without persistent memory.md +43 -0
- package/methodology/session outputs are packets for future selves.md +43 -0
- package/methodology/session transcript mining enables experiential validation that structural tests cannot provide.md +38 -0
- package/methodology/skill context budgets constrain knowledge system complexity on agent platforms.md +52 -0
- package/methodology/skills encode methodology so manual execution bypasses quality gates.md +50 -0
- package/methodology/small-world topology requires hubs and dense local links.md +99 -0
- package/methodology/source attribution enables tracing claims to foundations.md +38 -0
- package/methodology/spaced repetition scheduling could optimize vault maintenance.md +44 -0
- package/methodology/spreading activation models how agents should traverse.md +79 -0
- package/methodology/stale navigation actively misleads because agents trust curated maps completely.md +43 -0
- package/methodology/stigmergy coordinates agents through environmental traces without direct communication.md +62 -0
- package/methodology/storage versus thinking distinction determines which tool patterns apply.md +56 -0
- package/methodology/structure enables navigation without reading everything.md +52 -0
- package/methodology/structure without processing provides no value.md +56 -0
- package/methodology/student learning uses prerequisite graphs with spaced retrieval.md +770 -0
- package/methodology/summary coherence tests composability before filing.md +37 -0
- package/methodology/tag rot applies to wiki links because titles serve as both identifier and display text.md +50 -0
- package/methodology/temporal media must convert to spatial text for agent traversal.md +43 -0
- package/methodology/temporal processing priority creates age-based inbox urgency.md +45 -0
- package/methodology/temporal separation of capture and processing preserves context freshness.md +39 -0
- package/methodology/ten universal primitives form the kernel of every viable agent knowledge system.md +162 -0
- package/methodology/testing effect could enable agent knowledge verification.md +38 -0
- package/methodology/the AgentSkills standard embodies progressive disclosure at the skill level.md +40 -0
- package/methodology/the derivation engine improves recursively as deployed systems generate observations.md +49 -0
- package/methodology/the determinism boundary separates hook methodology from skill methodology.md +46 -0
- package/methodology/the fix-versus-report decision depends on determinism reversibility and accumulated trust.md +45 -0
- package/methodology/the generation effect requires active transformation not just storage.md +57 -0
- package/methodology/the no wrong patches guarantee ensures any valid module combination produces a valid system.md +58 -0
- package/methodology/the system is the argument.md +46 -0
- package/methodology/the vault constitutes identity for agents.md +86 -0
- package/methodology/the vault methodology transfers because it encodes cognitive science not domain specifics.md +47 -0
- package/methodology/therapy journal uses warm personality with pattern detection for emotional processing.md +584 -0
- package/methodology/three capture schools converge through agent-mediated synthesis.md +55 -0
- package/methodology/three concurrent maintenance loops operate at different timescales to catch different classes of problems.md +56 -0
- package/methodology/throughput matters more than accumulation.md +58 -0
- package/methodology/title as claim enables traversal as reasoning.md +50 -0
- package/methodology/topological organization beats temporal for knowledge work.md +52 -0
- package/methodology/trading uses conviction tracking with thesis-outcome correlation.md +699 -0
- package/methodology/trails transform ephemeral navigation into persistent artifacts.md +39 -0
- package/methodology/transform universal vocabulary to domain-native language through six levels.md +259 -0
- package/methodology/type field enables structured queries without folder hierarchies.md +53 -0
- package/methodology/use-case presets dissolve the tension between composability and simplicity.md +44 -0
- package/methodology/vault conventions may impose hidden rigidity on thinking.md +44 -0
- package/methodology/verbatim risk applies to agents too.md +31 -0
- package/methodology/vibe notetaking is the emerging industry consensus for AI-native self-organization.md +56 -0
- package/methodology/vivid memories need verification.md +45 -0
- package/methodology/vocabulary-transformation.md +27 -0
- package/methodology/voice capture is the highest-bandwidth channel for agent-delegated knowledge systems.md +45 -0
- package/methodology/wiki links are the digital evolution of analog indexing.md +73 -0
- package/methodology/wiki links as social contract transforms agents into stewards of incomplete references.md +52 -0
- package/methodology/wiki links create navigation paths that shape retrieval.md +63 -0
- package/methodology/wiki links implement GraphRAG without the infrastructure.md +101 -0
- package/methodology/writing for audience blocks authentic creation.md +22 -0
- package/methodology/you operate a system that takes notes.md +79 -0
- package/openclaw/SKILL.md +110 -0
- package/package.json +45 -0
- package/platforms/README.md +51 -0
- package/platforms/claude-code/generator.md +61 -0
- package/platforms/claude-code/hooks/README.md +186 -0
- package/platforms/claude-code/hooks/auto-commit.sh.template +38 -0
- package/platforms/claude-code/hooks/session-capture.sh.template +72 -0
- package/platforms/claude-code/hooks/session-orient.sh.template +189 -0
- package/platforms/claude-code/hooks/write-validate.sh.template +106 -0
- package/platforms/openclaw/generator.md +82 -0
- package/platforms/openclaw/hooks/README.md +89 -0
- package/platforms/openclaw/hooks/bootstrap.ts.template +224 -0
- package/platforms/openclaw/hooks/command-new.ts.template +165 -0
- package/platforms/openclaw/hooks/heartbeat.ts.template +214 -0
- package/platforms/shared/features/README.md +70 -0
- package/platforms/shared/skill-blocks/graph.md +145 -0
- package/platforms/shared/skill-blocks/learn.md +119 -0
- package/platforms/shared/skill-blocks/next.md +131 -0
- package/platforms/shared/skill-blocks/pipeline.md +326 -0
- package/platforms/shared/skill-blocks/ralph.md +616 -0
- package/platforms/shared/skill-blocks/reduce.md +1142 -0
- package/platforms/shared/skill-blocks/refactor.md +129 -0
- package/platforms/shared/skill-blocks/reflect.md +780 -0
- package/platforms/shared/skill-blocks/remember.md +524 -0
- package/platforms/shared/skill-blocks/rethink.md +574 -0
- package/platforms/shared/skill-blocks/reweave.md +680 -0
- package/platforms/shared/skill-blocks/seed.md +320 -0
- package/platforms/shared/skill-blocks/stats.md +145 -0
- package/platforms/shared/skill-blocks/tasks.md +171 -0
- package/platforms/shared/skill-blocks/validate.md +323 -0
- package/platforms/shared/skill-blocks/verify.md +562 -0
- package/platforms/shared/templates/README.md +35 -0
- package/presets/experimental/categories.yaml +1 -0
- package/presets/experimental/preset.yaml +38 -0
- package/presets/experimental/starter/README.md +7 -0
- package/presets/experimental/vocabulary.yaml +7 -0
- package/presets/personal/categories.yaml +7 -0
- package/presets/personal/preset.yaml +41 -0
- package/presets/personal/starter/goals.md +21 -0
- package/presets/personal/starter/index.md +17 -0
- package/presets/personal/starter/life-areas.md +21 -0
- package/presets/personal/starter/people.md +21 -0
- package/presets/personal/vocabulary.yaml +32 -0
- package/presets/research/categories.yaml +8 -0
- package/presets/research/preset.yaml +41 -0
- package/presets/research/starter/index.md +17 -0
- package/presets/research/starter/methods.md +21 -0
- package/presets/research/starter/open-questions.md +21 -0
- package/presets/research/vocabulary.yaml +33 -0
- package/reference/AUDIT-REPORT.md +238 -0
- package/reference/claim-map.md +172 -0
- package/reference/components.md +327 -0
- package/reference/conversation-patterns.md +542 -0
- package/reference/derivation-validation.md +649 -0
- package/reference/dimension-claim-map.md +134 -0
- package/reference/evolution-lifecycle.md +297 -0
- package/reference/failure-modes.md +235 -0
- package/reference/interaction-constraints.md +204 -0
- package/reference/kernel.yaml +242 -0
- package/reference/methodology.md +283 -0
- package/reference/open-questions.md +279 -0
- package/reference/personality-layer.md +302 -0
- package/reference/self-space.md +299 -0
- package/reference/semantic-vs-keyword.md +288 -0
- package/reference/session-lifecycle.md +298 -0
- package/reference/templates/base-note.md +16 -0
- package/reference/templates/companion-note.md +70 -0
- package/reference/templates/creative-note.md +16 -0
- package/reference/templates/learning-note.md +16 -0
- package/reference/templates/life-note.md +16 -0
- package/reference/templates/moc.md +26 -0
- package/reference/templates/relationship-note.md +17 -0
- package/reference/templates/research-note.md +19 -0
- package/reference/templates/session-log.md +24 -0
- package/reference/templates/therapy-note.md +16 -0
- package/reference/test-fixtures/edge-case-constraints.md +148 -0
- package/reference/test-fixtures/multi-domain.md +164 -0
- package/reference/test-fixtures/novel-domain-gaming.md +138 -0
- package/reference/test-fixtures/research-minimal.md +102 -0
- package/reference/test-fixtures/therapy-full.md +155 -0
- package/reference/testing-milestones.md +1087 -0
- package/reference/three-spaces.md +363 -0
- package/reference/tradition-presets.md +203 -0
- package/reference/use-case-presets.md +341 -0
- package/reference/validate-kernel.sh +432 -0
- package/reference/vocabulary-transforms.md +85 -0
- package/scripts/sync-thinking.sh +147 -0
- package/skill-sources/graph/SKILL.md +567 -0
- package/skill-sources/graph/skill.json +17 -0
- package/skill-sources/learn/SKILL.md +254 -0
- package/skill-sources/learn/skill.json +17 -0
- package/skill-sources/next/SKILL.md +407 -0
- package/skill-sources/next/skill.json +17 -0
- package/skill-sources/pipeline/SKILL.md +314 -0
- package/skill-sources/pipeline/skill.json +17 -0
- package/skill-sources/ralph/SKILL.md +604 -0
- package/skill-sources/ralph/skill.json +17 -0
- package/skill-sources/reduce/SKILL.md +1113 -0
- package/skill-sources/reduce/skill.json +17 -0
- package/skill-sources/refactor/SKILL.md +448 -0
- package/skill-sources/refactor/skill.json +17 -0
- package/skill-sources/reflect/SKILL.md +747 -0
- package/skill-sources/reflect/skill.json +17 -0
- package/skill-sources/remember/SKILL.md +534 -0
- package/skill-sources/remember/skill.json +17 -0
- package/skill-sources/rethink/SKILL.md +658 -0
- package/skill-sources/rethink/skill.json +17 -0
- package/skill-sources/reweave/SKILL.md +657 -0
- package/skill-sources/reweave/skill.json +17 -0
- package/skill-sources/seed/SKILL.md +303 -0
- package/skill-sources/seed/skill.json +17 -0
- package/skill-sources/stats/SKILL.md +371 -0
- package/skill-sources/stats/skill.json +17 -0
- package/skill-sources/tasks/SKILL.md +402 -0
- package/skill-sources/tasks/skill.json +17 -0
- package/skill-sources/validate/SKILL.md +310 -0
- package/skill-sources/validate/skill.json +17 -0
- package/skill-sources/verify/SKILL.md +532 -0
- package/skill-sources/verify/skill.json +17 -0
- package/skills/add-domain/SKILL.md +441 -0
- package/skills/add-domain/skill.json +17 -0
- package/skills/architect/SKILL.md +568 -0
- package/skills/architect/skill.json +17 -0
- package/skills/ask/SKILL.md +388 -0
- package/skills/ask/skill.json +17 -0
- package/skills/health/SKILL.md +760 -0
- package/skills/health/skill.json +17 -0
- package/skills/help/SKILL.md +348 -0
- package/skills/help/skill.json +17 -0
- package/skills/recommend/SKILL.md +553 -0
- package/skills/recommend/skill.json +17 -0
- package/skills/reseed/SKILL.md +385 -0
- package/skills/reseed/skill.json +17 -0
- package/skills/setup/SKILL.md +1688 -0
- package/skills/setup/skill.json +17 -0
- package/skills/tutorial/SKILL.md +496 -0
- package/skills/tutorial/skill.json +17 -0
- package/skills/upgrade/SKILL.md +395 -0
- package/skills/upgrade/skill.json +17 -0
|
@@ -0,0 +1,776 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Project management knowledge system — inspirational composition showing derived architecture for decision tracking, stakeholder management, and cross-project learning
|
|
3
|
+
kind: example
|
|
4
|
+
domain: pm
|
|
5
|
+
topics: ["[[domain-compositions]]"]
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# project management uses decision tracking with stakeholder context
|
|
9
|
+
|
|
10
|
+
Project management knowledge doesn't work like research or journaling. The core unit isn't a claim or an emotional insight — it's a decision. Decisions accumulate context, get revisited, become stale, get superseded, and sometimes get relitigated by people who weren't in the room when the decision was made. The failure mode isn't "lost information" — it's "lost rationale." The team remembers WHAT was decided but not WHY, so they either re-argue settled questions or blindly follow decisions whose assumptions no longer hold.
|
|
11
|
+
|
|
12
|
+
Human PMs handle this with meeting notes, decision logs, and risk registers that start well-maintained and gradually decay. The weekly status meeting captures actions that nobody tracks. The decision log captures the first 20 decisions and then gets abandoned because updating it isn't anyone's job. The risk register is assessed at project kickoff and reviewed once during a quarterly panic.
|
|
13
|
+
|
|
14
|
+
The agent doesn't forget to update. It doesn't lose track of action items. It doesn't fail to notice that the decision from February assumed a headcount that changed in April. It maintains the full decision graph — what was decided, why, what it depends on, what depends on it, and whether the conditions that motivated it still hold.
|
|
15
|
+
|
|
16
|
+
## Persona
|
|
17
|
+
|
|
18
|
+
Sam Okafor is a senior engineering manager at a mid-size SaaS company, running three concurrent projects with overlapping stakeholders. She has 14 direct reports across two teams. She spends 60% of her week in meetings. Her current pain: decisions get made in Slack threads, hallway conversations, and meeting sidebars, and she can't remember which decisions were made where, who was consulted, or what alternatives were considered. When a new team member asks "why did we choose Kafka over RabbitMQ?", Sam knows there was a good reason but can't reconstruct the rationale. When a stakeholder asks "what's the impact if we delay the payments API?", Sam mentally traces dependencies but knows she's missing connections.
|
|
19
|
+
|
|
20
|
+
What Sam needs is a system where every decision lives as a node with full context: what prompted it, what options were considered, who was consulted, what was chosen, and why. Where the agent can tell her: "The Kafka decision was made on Jan 15 because of throughput requirements for the real-time analytics feature. That feature was deprioritized on Feb 3. The throughput requirement that motivated Kafka may no longer apply. Three other decisions depend on Kafka being the message broker." That's not just retrieval — that's impact analysis of context change.
|
|
21
|
+
|
|
22
|
+
## Configuration
|
|
23
|
+
|
|
24
|
+
| Dimension | Position | Rationale |
|
|
25
|
+
|-----------|----------|-----------|
|
|
26
|
+
| Granularity | Atomic for decisions and risks, compound for meeting notes | Decisions must be independently referenceable — you cite "the Kafka decision," not "the January meeting." But meeting notes are naturally compound: multiple topics, multiple decisions, multiple action items. The meeting note is the compound capture; decisions, actions, and risks are extracted as atomic notes. |
|
|
27
|
+
| Organization | Flat with project overlays | Notes organized by project would create silos. A decision affecting both the payments API and the analytics pipeline needs to be findable from either context. Flat files with project tags in YAML enable multi-project queries. Wiki links cross project boundaries. |
|
|
28
|
+
| Linking | Explicit with typed relationships — depends_on, supersedes, impacts, blocks | PM relationships are directional and typed. "Decision A depends on Decision B" is fundamentally different from "Decision A is related to Decision B." The dependency graph is the backbone of project management. Untyped links lose the relationship that enables impact analysis. |
|
|
29
|
+
| Metadata | Dense — project, status, stakeholders, dates, dependencies | PM operates on structured queries: "What decisions are pending for the payments project?" "Which risks haven't been reviewed in 30 days?" "Who was consulted on the Kafka decision?" Dense metadata enables these queries. The cost of capture is justified because PM decisions have organizational consequences. |
|
|
30
|
+
| Processing | Moderate — meeting extraction + weekly reconciliation + event-triggered updates | Meeting notes get systematic extraction: decisions, action items, risks, and stakeholder commitments are pulled out as atomic notes. Weekly reconciliation checks action item completion, decision freshness, and risk status. Event-triggered processing fires when context changes (stakeholder update, timeline shift, dependency resolution). |
|
|
31
|
+
| Formalization | High — templates for every note type, validation for required fields | PM artifacts have downstream consumers (stakeholders, team members, executives). Inconsistent formats create friction. Templates ensure every decision has rationale, every risk has an owner, every action item has a deadline. This isn't bureaucracy — it's the minimum metadata that makes PM knowledge actionable. |
|
|
32
|
+
| Review | Weekly reconciliation + quarterly retrospective synthesis | Weekly: action item status, stale decisions, unreviewed risks. Quarterly: retrospective theme analysis, cross-project pattern detection, estimation accuracy tracking. The weekly cadence matches sprint rhythms; the quarterly cadence catches systemic patterns. |
|
|
33
|
+
| Scope | Multi-project, organization-bounded | Sam runs three projects. Decisions in one affect the others. The vault must support cross-project queries, shared stakeholders, and dependency tracking across project boundaries. But scope is bounded to Sam's organizational context — this isn't a company-wide knowledge base. |
|
|
34
|
+
|
|
35
|
+
## Vault Structure
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
vault/
|
|
39
|
+
├── 00_inbox/
|
|
40
|
+
│ ├── meetings/ # raw meeting notes
|
|
41
|
+
│ │ ├── 2026-02-14-payments-standup.md
|
|
42
|
+
│ │ ├── 2026-02-13-architecture-review.md
|
|
43
|
+
│ │ └── 2026-02-12-exec-sync.md
|
|
44
|
+
│ ├── slack-captures/ # important Slack decisions
|
|
45
|
+
│ │ └── 2026-02-14-kafka-partition-discussion.md
|
|
46
|
+
│ └── ideas/ # improvement ideas
|
|
47
|
+
│ └── shared-cache-layer-proposal.md
|
|
48
|
+
├── 01_thinking/ # flat — decisions, risks, patterns, MOCs
|
|
49
|
+
│ ├── index.md # hub MOC
|
|
50
|
+
│ ├── payments-api.md # project MOC
|
|
51
|
+
│ ├── analytics-pipeline.md # project MOC
|
|
52
|
+
│ ├── auth-service-migration.md # project MOC
|
|
53
|
+
│ ├── architecture-decisions.md # cross-cutting topic MOC
|
|
54
|
+
│ ├── estimation-patterns.md # cross-cutting topic MOC
|
|
55
|
+
│ ├── stakeholder-management.md # cross-cutting topic MOC
|
|
56
|
+
│ ├── team-health.md # cross-cutting topic MOC
|
|
57
|
+
│ ├── chose Kafka over RabbitMQ for real-time analytics throughput.md
|
|
58
|
+
│ ├── payments API deadline depends on auth migration completing first.md
|
|
59
|
+
│ ├── our sprint estimates are 30 percent optimistic on average.md
|
|
60
|
+
│ ├── exec stakeholders need impact summaries not technical details.md
|
|
61
|
+
│ ├── cross-team dependencies cause more delays than technical complexity.md
|
|
62
|
+
│ ├── risk of auth migration blocking payments has increased to high.md
|
|
63
|
+
│ └── ... (decision notes, risk notes, pattern notes)
|
|
64
|
+
├── 02_archive/
|
|
65
|
+
│ ├── completed-projects/
|
|
66
|
+
│ │ └── onboarding-redesign/
|
|
67
|
+
│ │ ├── project-summary.md
|
|
68
|
+
│ │ ├── decision-log.md
|
|
69
|
+
│ │ └── retrospective-synthesis.md
|
|
70
|
+
│ ├── references/
|
|
71
|
+
│ │ └── meeting-notes/ # processed meeting notes
|
|
72
|
+
│ │ ├── 2026-02/
|
|
73
|
+
│ │ └── 2026-01/
|
|
74
|
+
│ └── superseded-decisions/
|
|
75
|
+
│ └── chose RabbitMQ for messaging.md
|
|
76
|
+
├── 03_tracking/ # active operational tracking
|
|
77
|
+
│ ├── action-items.md # active action item tracker
|
|
78
|
+
│ ├── weekly-status/
|
|
79
|
+
│ │ ├── 2026-w07-status.md
|
|
80
|
+
│ │ └── 2026-w06-status.md
|
|
81
|
+
│ └── retrospectives/
|
|
82
|
+
│ ├── 2026-02-sprint-14-retro.md
|
|
83
|
+
│ └── 2026-01-sprint-13-retro.md
|
|
84
|
+
├── 04_meta/
|
|
85
|
+
│ ├── logs/
|
|
86
|
+
│ │ ├── observations.md
|
|
87
|
+
│ │ ├── observations/
|
|
88
|
+
│ │ ├── tensions.md
|
|
89
|
+
│ │ └── tensions/
|
|
90
|
+
│ ├── templates/
|
|
91
|
+
│ │ ├── decision-note.md
|
|
92
|
+
│ │ ├── risk-note.md
|
|
93
|
+
│ │ ├── meeting-note.md
|
|
94
|
+
│ │ ├── action-item.md
|
|
95
|
+
│ │ ├── stakeholder-note.md
|
|
96
|
+
│ │ ├── retrospective.md
|
|
97
|
+
│ │ ├── project-moc.md
|
|
98
|
+
│ │ └── weekly-status.md
|
|
99
|
+
│ ├── tasks/
|
|
100
|
+
│ │ ├── queue.json
|
|
101
|
+
│ │ └── archive/
|
|
102
|
+
│ └── scripts/
|
|
103
|
+
│ ├── stale-decisions.sh
|
|
104
|
+
│ ├── action-item-status.sh
|
|
105
|
+
│ ├── risk-review-due.sh
|
|
106
|
+
│ ├── dependency-graph.sh
|
|
107
|
+
│ └── estimation-accuracy.sh
|
|
108
|
+
├── people/ # stakeholder notes
|
|
109
|
+
│ ├── marcus-chen.md
|
|
110
|
+
│ ├── priya-sharma.md
|
|
111
|
+
│ ├── david-thompson.md
|
|
112
|
+
│ └── elena-vasquez.md
|
|
113
|
+
└── self/
|
|
114
|
+
├── management-philosophy.md
|
|
115
|
+
├── delegation-patterns.md
|
|
116
|
+
└── active-threads.md
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## Note Schemas
|
|
120
|
+
|
|
121
|
+
### Decision Note
|
|
122
|
+
|
|
123
|
+
```yaml
|
|
124
|
+
---
|
|
125
|
+
description: Selected Kafka over RabbitMQ for the analytics pipeline message broker based on throughput benchmarks showing 10x advantage at target message volume
|
|
126
|
+
project: "[[analytics-pipeline]]"
|
|
127
|
+
decision_date: 2026-01-15
|
|
128
|
+
status: active
|
|
129
|
+
stakeholders_consulted: ["[[marcus-chen]]", "[[priya-sharma]]"]
|
|
130
|
+
options_considered:
|
|
131
|
+
- option: Kafka
|
|
132
|
+
pros: ["10x throughput at target volume", "native partitioning", "team has prior experience"]
|
|
133
|
+
cons: ["operational complexity", "higher infrastructure cost"]
|
|
134
|
+
- option: RabbitMQ
|
|
135
|
+
pros: ["simpler operations", "lower cost", "existing company standard"]
|
|
136
|
+
cons: ["throughput ceiling at 50k msg/s", "manual partitioning needed"]
|
|
137
|
+
- option: Pulsar
|
|
138
|
+
pros: ["unified messaging and streaming", "geo-replication"]
|
|
139
|
+
cons: ["no team experience", "smaller ecosystem"]
|
|
140
|
+
chosen: Kafka
|
|
141
|
+
rationale: "Real-time analytics requires 200k+ msg/s sustained. RabbitMQ benchmarks at 50k. Operational complexity is accepted trade-off for 10x throughput headroom."
|
|
142
|
+
assumptions:
|
|
143
|
+
- "Real-time analytics feature will launch as planned"
|
|
144
|
+
- "Target volume is 200k+ messages per second"
|
|
145
|
+
- "Team can handle Kafka operational complexity"
|
|
146
|
+
supersedes: "[[chose RabbitMQ for messaging]]"
|
|
147
|
+
depends_on: []
|
|
148
|
+
depended_on_by:
|
|
149
|
+
- "[[analytics pipeline schema uses Avro for Kafka compatibility]]"
|
|
150
|
+
- "[[consumer group topology follows domain boundaries]]"
|
|
151
|
+
- "[[monitoring stack includes Kafka-specific metrics]]"
|
|
152
|
+
review_trigger: "If real-time analytics is deprioritized or target volume changes"
|
|
153
|
+
topics: ["[[analytics-pipeline]]", "[[architecture-decisions]]"]
|
|
154
|
+
relevant_notes:
|
|
155
|
+
- "[[cross-team dependencies cause more delays than technical complexity]] — context: Kafka operational complexity is manageable; the real risk is the dependency on the data team's Avro schemas"
|
|
156
|
+
---
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### Risk Note
|
|
160
|
+
|
|
161
|
+
```yaml
|
|
162
|
+
---
|
|
163
|
+
description: Auth migration timeline slip would block payments API launch because payments depends on the new auth token format — likelihood increased from medium to high after Feb sprint review
|
|
164
|
+
project: "[[payments-api]]"
|
|
165
|
+
risk_id: RISK-PAY-003
|
|
166
|
+
identified_date: 2026-01-20
|
|
167
|
+
last_reviewed: 2026-02-14
|
|
168
|
+
likelihood: high
|
|
169
|
+
impact: high
|
|
170
|
+
risk_score: critical
|
|
171
|
+
owner: "[[marcus-chen]]"
|
|
172
|
+
status: active
|
|
173
|
+
mitigation_strategy: "Payments team builds adapter layer for old auth tokens as fallback. Adds 1 sprint of work but decouples the dependency."
|
|
174
|
+
mitigation_status: in-progress
|
|
175
|
+
triggers:
|
|
176
|
+
- "Auth migration misses Feb 28 milestone"
|
|
177
|
+
- "Auth team loses headcount"
|
|
178
|
+
escalation_path: "[[david-thompson]] (VP Eng) if mitigation not feasible"
|
|
179
|
+
depends_on: "[[payments API deadline depends on auth migration completing first]]"
|
|
180
|
+
topics: ["[[payments-api]]", "[[auth-service-migration]]"]
|
|
181
|
+
relevant_notes:
|
|
182
|
+
- "[[cross-team dependencies cause more delays than technical complexity]] — validates: this risk is a cross-team dependency, not a technical challenge"
|
|
183
|
+
- "[[our sprint estimates are 30 percent optimistic on average]] — compounds: if auth is 30% optimistic, the Feb 28 milestone is actually mid-March"
|
|
184
|
+
---
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### Meeting Note (raw capture)
|
|
188
|
+
|
|
189
|
+
```yaml
|
|
190
|
+
---
|
|
191
|
+
description: Architecture review — discussed Kafka partition strategy, agreed on domain-bounded consumer groups, action item for Marcus to benchmark partition counts
|
|
192
|
+
date: 2026-02-13
|
|
193
|
+
meeting_type: architecture-review
|
|
194
|
+
project: "[[analytics-pipeline]]"
|
|
195
|
+
attendees: ["[[marcus-chen]]", "[[priya-sharma]]", "Sam Okafor"]
|
|
196
|
+
duration: 60
|
|
197
|
+
---
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### Stakeholder Note
|
|
201
|
+
|
|
202
|
+
```yaml
|
|
203
|
+
---
|
|
204
|
+
description: Marcus Chen — tech lead for analytics pipeline and auth migration, prefers async written updates, high influence on architecture decisions
|
|
205
|
+
name: Marcus Chen
|
|
206
|
+
role: Tech Lead
|
|
207
|
+
projects: ["[[analytics-pipeline]]", "[[auth-service-migration]]"]
|
|
208
|
+
communication_preference: async-written
|
|
209
|
+
influence_level: high
|
|
210
|
+
interest_level: high
|
|
211
|
+
reporting_to: Sam Okafor
|
|
212
|
+
update_frequency: weekly
|
|
213
|
+
key_concerns: ["technical debt", "team capacity", "architecture consistency"]
|
|
214
|
+
topics: ["[[stakeholder-management]]"]
|
|
215
|
+
relevant_notes:
|
|
216
|
+
- "[[chose Kafka over RabbitMQ for real-time analytics throughput]] — consulted: Marcus led the evaluation and advocated for Kafka"
|
|
217
|
+
- "[[risk of auth migration blocking payments has increased to high]] — owns: Marcus owns the auth timeline and the mitigation"
|
|
218
|
+
---
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
### Action Item
|
|
222
|
+
|
|
223
|
+
```yaml
|
|
224
|
+
---
|
|
225
|
+
description: Marcus to benchmark Kafka partition counts for analytics pipeline target throughput by Feb 21
|
|
226
|
+
assignee: "[[marcus-chen]]"
|
|
227
|
+
source_meeting: "[[2026-02-13-architecture-review]]"
|
|
228
|
+
project: "[[analytics-pipeline]]"
|
|
229
|
+
created: 2026-02-13
|
|
230
|
+
deadline: 2026-02-21
|
|
231
|
+
status: in-progress
|
|
232
|
+
depends_on: []
|
|
233
|
+
blocks: "[[analytics pipeline schema uses Avro for Kafka compatibility]]"
|
|
234
|
+
follow_up_date: 2026-02-18
|
|
235
|
+
topics: ["[[analytics-pipeline]]"]
|
|
236
|
+
---
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
### Retrospective
|
|
240
|
+
|
|
241
|
+
```yaml
|
|
242
|
+
---
|
|
243
|
+
description: Sprint 14 retro — recurring theme of underestimation, new insight about scope creep through Slack-based feature requests bypassing backlog
|
|
244
|
+
date: 2026-02-14
|
|
245
|
+
sprint: 14
|
|
246
|
+
project: "[[payments-api]]"
|
|
247
|
+
what_worked:
|
|
248
|
+
- "Pair programming on the payment reconciliation module"
|
|
249
|
+
- "Daily written standups replaced video standups — better async"
|
|
250
|
+
what_didnt:
|
|
251
|
+
- "Sprint velocity 30% below estimate again"
|
|
252
|
+
- "Three unplanned features added mid-sprint from Slack requests"
|
|
253
|
+
action_items:
|
|
254
|
+
- description: "All feature requests must go through backlog, no Slack-direct"
|
|
255
|
+
owner: Sam Okafor
|
|
256
|
+
deadline: 2026-02-21
|
|
257
|
+
status: not-started
|
|
258
|
+
themes: ["estimation-accuracy", "scope-management", "async-communication"]
|
|
259
|
+
topics: ["[[payments-api]]", "[[estimation-patterns]]"]
|
|
260
|
+
relevant_notes:
|
|
261
|
+
- "[[our sprint estimates are 30 percent optimistic on average]] — validates: fourth consecutive sprint with 30%+ overrun"
|
|
262
|
+
- "[[cross-team dependencies cause more delays than technical complexity]] — extends: Slack feature requests are a form of untracked cross-team dependency"
|
|
263
|
+
---
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
### Weekly Status
|
|
267
|
+
|
|
268
|
+
```yaml
|
|
269
|
+
---
|
|
270
|
+
description: Week 7 status — payments API on track pending auth dependency, analytics pipeline partition benchmarks complete, auth migration 1 week behind
|
|
271
|
+
week: "2026-W07"
|
|
272
|
+
period: "2026-02-10 to 2026-02-14"
|
|
273
|
+
projects_covered: ["[[payments-api]]", "[[analytics-pipeline]]", "[[auth-service-migration]]"]
|
|
274
|
+
---
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
## Example Notes
|
|
278
|
+
|
|
279
|
+
### Example 1: Decision Note
|
|
280
|
+
|
|
281
|
+
```markdown
|
|
282
|
+
---
|
|
283
|
+
description: Selected Kafka over RabbitMQ for the analytics pipeline message broker based on throughput benchmarks showing 10x advantage at target message volume
|
|
284
|
+
project: "[[analytics-pipeline]]"
|
|
285
|
+
decision_date: 2026-01-15
|
|
286
|
+
status: active
|
|
287
|
+
stakeholders_consulted: ["[[marcus-chen]]", "[[priya-sharma]]"]
|
|
288
|
+
options_considered:
|
|
289
|
+
- option: Kafka
|
|
290
|
+
pros: ["10x throughput at target volume", "native partitioning", "team has prior experience"]
|
|
291
|
+
cons: ["operational complexity", "higher infrastructure cost"]
|
|
292
|
+
- option: RabbitMQ
|
|
293
|
+
pros: ["simpler operations", "lower cost", "existing company standard"]
|
|
294
|
+
cons: ["throughput ceiling at 50k msg/s", "manual partitioning needed"]
|
|
295
|
+
- option: Pulsar
|
|
296
|
+
pros: ["unified messaging and streaming", "geo-replication"]
|
|
297
|
+
cons: ["no team experience", "smaller ecosystem"]
|
|
298
|
+
chosen: Kafka
|
|
299
|
+
rationale: "Real-time analytics requires 200k+ msg/s sustained. RabbitMQ benchmarks at 50k. Operational complexity is accepted trade-off for 10x throughput headroom."
|
|
300
|
+
assumptions:
|
|
301
|
+
- "Real-time analytics feature will launch as planned"
|
|
302
|
+
- "Target volume is 200k+ messages per second"
|
|
303
|
+
- "Team can handle Kafka operational complexity"
|
|
304
|
+
supersedes: "[[chose RabbitMQ for messaging]]"
|
|
305
|
+
depends_on: []
|
|
306
|
+
depended_on_by:
|
|
307
|
+
- "[[analytics pipeline schema uses Avro for Kafka compatibility]]"
|
|
308
|
+
- "[[consumer group topology follows domain boundaries]]"
|
|
309
|
+
- "[[monitoring stack includes Kafka-specific metrics]]"
|
|
310
|
+
review_trigger: "If real-time analytics is deprioritized or target volume changes"
|
|
311
|
+
topics: ["[[analytics-pipeline]]", "[[architecture-decisions]]"]
|
|
312
|
+
relevant_notes:
|
|
313
|
+
- "[[cross-team dependencies cause more delays than technical complexity]] — context: Kafka operational complexity is manageable; the real risk is the dependency on the data team's Avro schemas"
|
|
314
|
+
---
|
|
315
|
+
|
|
316
|
+
# chose Kafka over RabbitMQ for real-time analytics throughput
|
|
317
|
+
|
|
318
|
+
The analytics pipeline needs to sustain 200k+ messages per second for real-time dashboard updates. We evaluated three message brokers and chose Kafka based primarily on throughput benchmarks.
|
|
319
|
+
|
|
320
|
+
The core trade-off is throughput versus operational simplicity. RabbitMQ is the company standard — we know how to run it, the platform team supports it, and it covers 90% of our messaging needs. But its throughput ceiling of roughly 50k messages per second means we'd need to build a custom partitioning layer on top to hit our target. At that point we're building a worse version of what Kafka does natively.
|
|
321
|
+
|
|
322
|
+
Pulsar was interesting but introduced too much novelty risk. Nobody on the team has operated Pulsar in production, and the ecosystem tooling (monitoring, schema registry integration) is less mature than Kafka's. Since [[cross-team dependencies cause more delays than technical complexity]], adding a technology that requires platform team learning would create an implicit dependency on their capacity.
|
|
323
|
+
|
|
324
|
+
The decision has a built-in review trigger: if the real-time analytics feature is deprioritized (which is being discussed — [[david-thompson]] raised this at the Feb exec sync), the throughput requirement drops dramatically and the Kafka complexity is no longer justified. Three downstream decisions depend on Kafka being the broker: the Avro schema format, the consumer group topology, and the monitoring stack additions. If we revisit Kafka, those cascade.
|
|
325
|
+
|
|
326
|
+
Marcus led the evaluation and is confident the team can handle Kafka operations based on his experience at his previous company. Priya raised the operational cost concern but agreed the throughput requirement leaves no alternative with RabbitMQ.
|
|
327
|
+
|
|
328
|
+
---
|
|
329
|
+
|
|
330
|
+
Source: [[2026-01-15-architecture-review]]
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
### Example 2: Cross-Project Pattern Note
|
|
334
|
+
|
|
335
|
+
```markdown
|
|
336
|
+
---
|
|
337
|
+
description: Analysis of 14 sprints shows estimates consistently overshoot by roughly 30 percent — the pattern holds across projects, suggesting a systemic estimation bias rather than project-specific complexity
|
|
338
|
+
confidence: high
|
|
339
|
+
evidence_sprints: 14
|
|
340
|
+
projects_analyzed: ["[[payments-api]]", "[[analytics-pipeline]]", "[[auth-service-migration]]"]
|
|
341
|
+
topics: ["[[estimation-patterns]]"]
|
|
342
|
+
relevant_notes:
|
|
343
|
+
- "[[cross-team dependencies cause more delays than technical complexity]] — compounds: untracked cross-team work inflates apparent estimation error"
|
|
344
|
+
- "[[risk of auth migration blocking payments has increased to high]] — implication: if auth is 30% optimistic, the timeline is worse than reported"
|
|
345
|
+
- "[[exec stakeholders need impact summaries not technical details]] — application: status reports should use adjusted timelines, not raw estimates"
|
|
346
|
+
---
|
|
347
|
+
|
|
348
|
+
# our sprint estimates are 30 percent optimistic on average
|
|
349
|
+
|
|
350
|
+
Looking at velocity data across 14 sprints and three projects, a consistent pattern emerges: we complete roughly 70% of planned story points per sprint. This isn't random variation — it's a systematic bias. The standard deviation is small enough (about 8%) that the 30% overestimation is a reliable predictor, not a noisy average.
|
|
351
|
+
|
|
352
|
+
What makes this interesting is that it's project-independent. The payments API team, the analytics pipeline team, and the auth migration team all show approximately the same bias. This suggests the cause isn't "these particular stories were harder than expected" but something systemic about how we estimate.
|
|
353
|
+
|
|
354
|
+
Three hypotheses, not mutually exclusive:
|
|
355
|
+
|
|
356
|
+
First, since [[cross-team dependencies cause more delays than technical complexity]], some of the "missing" 30% is work that wasn't in the sprint plan — ad-hoc requests, Slack-driven scope additions, dependencies that surfaced mid-sprint. This isn't estimation error; it's untracked work consuming capacity. The sprint 14 retrospective specifically flagged Slack-based feature requests bypassing the backlog.
|
|
357
|
+
|
|
358
|
+
Second, planning fallacy: humans systematically underestimate task duration, especially for tasks similar to ones they've done before. We think "I did something like this last time in 3 days" but forget the three half-days of debugging and context switching that actually made it five days.
|
|
359
|
+
|
|
360
|
+
Third, the scope of "done" expands during sprints. A story estimated at 5 points during planning becomes 8 points of actual work because testing, documentation, and deployment considerations weren't fully captured in the estimate.
|
|
361
|
+
|
|
362
|
+
The practical implication is immediate. Since [[risk of auth migration blocking payments has increased to high]], and the auth team estimates Feb 28 for their milestone, the 30% bias suggests the real date is mid-March. The mitigation strategy (adapter layer for old auth tokens) becomes more urgent.
|
|
363
|
+
|
|
364
|
+
For stakeholder communication, since [[exec stakeholders need impact summaries not technical details]], status reports should present adjusted timelines: "Engineering estimates Feb 28; our historical accuracy suggests mid-March is more likely. We're building a fallback to decouple the payments launch from this timeline."
|
|
365
|
+
|
|
366
|
+
---
|
|
367
|
+
|
|
368
|
+
Source: Sprint velocity data (sprints 1-14), [[2026-02-14-sprint-14-retro]]
|
|
369
|
+
```
|
|
370
|
+
|
|
371
|
+
### Example 3: Project MOC
|
|
372
|
+
|
|
373
|
+
```markdown
|
|
374
|
+
---
|
|
375
|
+
description: The payments API project — tracks decisions, risks, dependencies, and cross-project impacts for the Q1 payments platform launch
|
|
376
|
+
type: moc
|
|
377
|
+
topics: ["[[index]]"]
|
|
378
|
+
---
|
|
379
|
+
|
|
380
|
+
# payments-api
|
|
381
|
+
|
|
382
|
+
The payments API is the Q1 priority: a complete rebuild of the payment processing pipeline with real-time reconciliation. The project's critical path runs through the auth service migration — payments can't launch until the new auth token format is deployed. This dependency is the primary risk.
|
|
383
|
+
|
|
384
|
+
## Key Decisions
|
|
385
|
+
|
|
386
|
+
- [[chose Kafka over RabbitMQ for real-time analytics throughput]] — cross-project: the analytics pipeline's Kafka choice affects payments if they need to share event streams
|
|
387
|
+
- [[payments API deadline depends on auth migration completing first]] — the critical dependency: payments launch is blocked until auth migration completes
|
|
388
|
+
|
|
389
|
+
## Active Risks
|
|
390
|
+
|
|
391
|
+
- [[risk of auth migration blocking payments has increased to high]] — critical: auth timeline slip cascades directly to payments launch
|
|
392
|
+
- Payment reconciliation performance under load — medium: untested at production scale, benchmark planned for sprint 15
|
|
393
|
+
|
|
394
|
+
## Dependencies
|
|
395
|
+
|
|
396
|
+
```
|
|
397
|
+
auth-service-migration ─── blocks ──→ payments-api
|
|
398
|
+
│
|
|
399
|
+
analytics-pipeline ──── shares events ──→ payments-api (if real-time reconciliation needs analytics data)
|
|
400
|
+
```
|
|
401
|
+
|
|
402
|
+
## Stakeholder Map
|
|
403
|
+
|
|
404
|
+
- [[marcus-chen]] — tech lead, owns auth timeline, primary technical decision maker
|
|
405
|
+
- [[david-thompson]] — VP Eng, exec sponsor, needs high-level status, escalation path for critical risks
|
|
406
|
+
- [[priya-sharma]] — platform team lead, consulted on infrastructure decisions
|
|
407
|
+
- [[elena-vasquez]] — product manager, owns scope and timeline, primary customer for status updates
|
|
408
|
+
|
|
409
|
+
## Estimation Reality
|
|
410
|
+
|
|
411
|
+
Since [[our sprint estimates are 30 percent optimistic on average]], published timelines should be adjusted. Raw estimate: Feb 28 for auth dependency. Adjusted: mid-March. Implications documented in the risk note.
|
|
412
|
+
|
|
413
|
+
## Recent Activity
|
|
414
|
+
|
|
415
|
+
- Sprint 14 retro flagged Slack-based scope creep (3 unplanned features added mid-sprint)
|
|
416
|
+
- Auth migration risk escalated from medium to high after Feb sprint review
|
|
417
|
+
- Mitigation (adapter layer for old auth tokens) approved and in progress
|
|
418
|
+
|
|
419
|
+
---
|
|
420
|
+
|
|
421
|
+
Agent Notes:
|
|
422
|
+
This project's critical path is simple: auth migration → payments launch. When checking project health, the first question is always "what's the auth migration status?" Cross-reference with [[auth-service-migration]] MOC for the upstream view. The estimation bias note affects every timeline discussion — always mentally apply the 30% correction.
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
### Example 4: Stakeholder Note
|
|
426
|
+
|
|
427
|
+
```markdown
|
|
428
|
+
---
|
|
429
|
+
description: David Thompson — VP Engineering, exec sponsor for payments and analytics, needs concise impact summaries not technical depth, escalation path for critical cross-project risks
|
|
430
|
+
name: David Thompson
|
|
431
|
+
role: VP Engineering
|
|
432
|
+
projects: ["[[payments-api]]", "[[analytics-pipeline]]"]
|
|
433
|
+
communication_preference: concise-written
|
|
434
|
+
influence_level: very-high
|
|
435
|
+
interest_level: medium
|
|
436
|
+
update_frequency: biweekly
|
|
437
|
+
key_concerns: ["Q1 delivery timeline", "headcount allocation", "technical debt trajectory"]
|
|
438
|
+
decision_style: "Wants 3 options with recommendation. Decides quickly when given clear trade-offs. Dislikes surprises — escalate early."
|
|
439
|
+
topics: ["[[stakeholder-management]]"]
|
|
440
|
+
relevant_notes:
|
|
441
|
+
- "[[exec stakeholders need impact summaries not technical details]] — application: David tunes out after the first technical sentence; lead with business impact"
|
|
442
|
+
- "[[chose Kafka over RabbitMQ for real-time analytics throughput]] — context: David approved the cost increase for Kafka; frame future infra decisions in similar terms (cost vs capability trade-off)"
|
|
443
|
+
- "[[risk of auth migration blocking payments has increased to high]] — escalation: David is the escalation path if mitigation isn't feasible"
|
|
444
|
+
---
|
|
445
|
+
|
|
446
|
+
# David Thompson
|
|
447
|
+
|
|
448
|
+
David is VP Engineering and exec sponsor for both the payments API and analytics pipeline projects. He manages six engineering managers (including Sam) and reports to the CTO.
|
|
449
|
+
|
|
450
|
+
## Communication Approach
|
|
451
|
+
|
|
452
|
+
David processes information in impact terms, not technical terms. Since [[exec stakeholders need impact summaries not technical details]], updates to David should follow the format: "Here's the business impact. Here's what we're doing. Here's what we need from you." Technical details belong in a linked decision note, not the summary.
|
|
453
|
+
|
|
454
|
+
He prefers written updates over meetings. His calendar is 80% meetings already. A well-structured Slack message or document covers most update needs. Reserve meeting time for decisions that require discussion.
|
|
455
|
+
|
|
456
|
+
## Decision History
|
|
457
|
+
|
|
458
|
+
David approved the Kafka infrastructure cost increase on Jan 18 after seeing the throughput comparison. He values clear trade-off framing: "Option A costs X and delivers Y. Option B costs less but limits Z." He decides quickly when the trade-offs are crisp and gets frustrated when presented with ambiguous options.
|
|
459
|
+
|
|
460
|
+
On Feb 5, he raised the possibility of deprioritizing real-time analytics — this would cascade to the Kafka decision's relevance. Sam flagged the downstream impact. David asked for an impact summary by Feb 20.
|
|
461
|
+
|
|
462
|
+
## Current Attention
|
|
463
|
+
|
|
464
|
+
David's current focus is Q1 delivery. The payments API launch is his primary concern because it affects revenue targets. The auth migration blocking risk needs early escalation if mitigation doesn't hold — David specifically said "tell me before it's a fire, not after."
|
|
465
|
+
|
|
466
|
+
---
|
|
467
|
+
|
|
468
|
+
Related Notes:
|
|
469
|
+
- [[payments-api]] — David is exec sponsor
|
|
470
|
+
- [[analytics-pipeline]] — David is exec sponsor
|
|
471
|
+
```
|
|
472
|
+
|
|
473
|
+
### Example 5: Meeting Note (Processed)
|
|
474
|
+
|
|
475
|
+
```markdown
|
|
476
|
+
---
|
|
477
|
+
description: Architecture review — discussed Kafka partition strategy, agreed on domain-bounded consumer groups, Marcus to benchmark partition counts by Feb 21
|
|
478
|
+
date: 2026-02-13
|
|
479
|
+
meeting_type: architecture-review
|
|
480
|
+
project: "[[analytics-pipeline]]"
|
|
481
|
+
attendees: ["[[marcus-chen]]", "[[priya-sharma]]", "Sam Okafor"]
|
|
482
|
+
duration: 60
|
|
483
|
+
decisions_made:
|
|
484
|
+
- "Consumer groups will follow domain boundaries (one per bounded context)"
|
|
485
|
+
- "Partition count benchmarking before finalizing topology"
|
|
486
|
+
action_items:
|
|
487
|
+
- assignee: "[[marcus-chen]]"
|
|
488
|
+
description: "Benchmark partition counts at target throughput"
|
|
489
|
+
deadline: 2026-02-21
|
|
490
|
+
- assignee: "[[priya-sharma]]"
|
|
491
|
+
description: "Review Kafka monitoring integration with existing stack"
|
|
492
|
+
deadline: 2026-02-19
|
|
493
|
+
risks_identified:
|
|
494
|
+
- "Partition rebalancing during deployment could cause message delays"
|
|
495
|
+
topics: ["[[analytics-pipeline]]", "[[architecture-decisions]]"]
|
|
496
|
+
---
|
|
497
|
+
|
|
498
|
+
# 2026-02-13 Architecture Review — Kafka Topology
|
|
499
|
+
|
|
500
|
+
## Decisions
|
|
501
|
+
|
|
502
|
+
**Consumer group topology follows domain boundaries.** Each bounded context (payments, analytics, notifications) gets its own consumer group rather than sharing groups across domains. This isolates processing failures: if the notifications consumer falls behind, it doesn't affect payments processing.
|
|
503
|
+
|
|
504
|
+
This decision builds on [[chose Kafka over RabbitMQ for real-time analytics throughput]] — the domain-bounded approach leverages Kafka's native partition assignment, which was one of the reasons we chose Kafka.
|
|
505
|
+
|
|
506
|
+
Priya raised the question of whether domain-bounded groups waste resources on low-volume domains. Marcus argued that the operational simplicity of isolation outweighs the resource overhead, and the team agreed.
|
|
507
|
+
|
|
508
|
+
**Partition count to be benchmarked before finalizing.** Marcus will run throughput tests with 12, 24, and 48 partitions at 200k msg/s to find the sweet spot between parallelism and rebalancing overhead. Results by Feb 21.
|
|
509
|
+
|
|
510
|
+
## Open Questions
|
|
511
|
+
|
|
512
|
+
- How does partition rebalancing during deployment affect message latency? Need to test blue-green deployment with partition reassignment.
|
|
513
|
+
- Should we implement dead letter queues per domain or a shared DLQ? Deferred to next architecture review.
|
|
514
|
+
|
|
515
|
+
## Action Items
|
|
516
|
+
|
|
517
|
+
| Who | What | When | Status |
|
|
518
|
+
|-----|------|------|--------|
|
|
519
|
+
| [[marcus-chen]] | Benchmark partition counts (12/24/48) at target throughput | Feb 21 | Not started |
|
|
520
|
+
| [[priya-sharma]] | Review Kafka monitoring integration with Datadog | Feb 19 | Not started |
|
|
521
|
+
|
|
522
|
+
---
|
|
523
|
+
|
|
524
|
+
Source: Meeting notes, 2026-02-13
|
|
525
|
+
```
|
|
526
|
+
|
|
527
|
+
## Processing Workflow
|
|
528
|
+
|
|
529
|
+
### Capture
|
|
530
|
+
|
|
531
|
+
Meeting notes enter `00_inbox/meetings/` during or immediately after meetings. Slack decisions get captured to `00_inbox/slack-captures/` when they contain decisions or commitments. Speed matters — a decision not captured within 24 hours is a decision lost. The agent accepts rough notes; extraction creates structure.
|
|
532
|
+
|
|
533
|
+
### Reduce (Meeting Extraction)
|
|
534
|
+
|
|
535
|
+
The agent processes meeting notes by extracting atomic artifacts:
|
|
536
|
+
|
|
537
|
+
- **Decisions** become decision notes with full context: options considered, rationale, stakeholders, assumptions, and review triggers
|
|
538
|
+
- **Action items** become action item notes with assignee, deadline, and dependency links
|
|
539
|
+
- **Risks** become risk notes or enrich existing risk assessments
|
|
540
|
+
- **Stakeholder commitments** update stakeholder notes with what was promised and when
|
|
541
|
+
|
|
542
|
+
A single meeting might produce 0-3 decision notes, 2-5 action items, and 0-2 risk updates. The meeting note itself moves to archive after extraction.
|
|
543
|
+
|
|
544
|
+
**Domain-specific extraction focus:**
|
|
545
|
+
- Decisions must capture alternatives and rationale, not just the outcome
|
|
546
|
+
- Action items must have deadlines and assignees (the agent flags items missing either)
|
|
547
|
+
- Risk assessments must include review triggers (conditions under which risk changes)
|
|
548
|
+
- Dependencies between decisions must be explicitly linked
|
|
549
|
+
|
|
550
|
+
### Reflect (Connect Forward)
|
|
551
|
+
|
|
552
|
+
For each new decision, the agent searches the vault for:
|
|
553
|
+
|
|
554
|
+
- Decisions that depend on this one (downstream impact)
|
|
555
|
+
- Decisions this one supersedes (update the old decision's status)
|
|
556
|
+
- Risks affected by this decision (does it mitigate or increase existing risks?)
|
|
557
|
+
- Stakeholders who should know about this decision (based on project membership and communication preferences)
|
|
558
|
+
- Cross-project implications (does this analytics decision affect payments?)
|
|
559
|
+
|
|
560
|
+
The agent updates project MOCs with new decisions and adjusts the dependency graph. Meeting extraction followed by reflection means a one-hour meeting produces a fully connected set of decision nodes within minutes of the meeting ending.
|
|
561
|
+
|
|
562
|
+
### Reweave (Connect Backward)
|
|
563
|
+
|
|
564
|
+
When context changes, older decisions need re-evaluation. The agent checks:
|
|
565
|
+
|
|
566
|
+
- **Assumption validity**: Does the decision's rationale still hold? The Kafka decision assumed 200k msg/s throughput requirements. If real-time analytics is deprioritized, the assumption is invalid.
|
|
567
|
+
- **Dependency currency**: Are upstream decisions still active? If a decision depends on a superseded decision, it may need revisiting.
|
|
568
|
+
- **Risk evolution**: Have mitigation strategies been implemented? Has the risk landscape changed?
|
|
569
|
+
|
|
570
|
+
Reweaving is where the agent provides the most value in PM: it catches stale decisions that humans forget to review. The review trigger field on decision notes makes this systematic — the agent checks trigger conditions during every weekly reconciliation.
|
|
571
|
+
|
|
572
|
+
### Weekly Reconciliation
|
|
573
|
+
|
|
574
|
+
Every Monday, the agent generates a reconciliation report:
|
|
575
|
+
|
|
576
|
+
- **Action items**: What's due this week? What's overdue? What's blocked?
|
|
577
|
+
- **Stale decisions**: Which decisions haven't been reviewed in 30+ days? Which have triggered review conditions?
|
|
578
|
+
- **Risk currency**: Which risks haven't been reviewed in 14+ days? Which have changed likelihood based on new data?
|
|
579
|
+
- **Stakeholder updates**: Who needs an update this week based on their update frequency preference?
|
|
580
|
+
- **Estimation check**: How did last sprint's actual velocity compare to estimate?
|
|
581
|
+
|
|
582
|
+
## MOC Structure
|
|
583
|
+
|
|
584
|
+
```
|
|
585
|
+
index.md (Hub)
|
|
586
|
+
├── payments-api.md (Project MOC)
|
|
587
|
+
│ → decisions, risks, dependencies, stakeholders
|
|
588
|
+
├── analytics-pipeline.md (Project MOC)
|
|
589
|
+
│ → architecture decisions, technical choices
|
|
590
|
+
├── auth-service-migration.md (Project MOC)
|
|
591
|
+
│ → migration timeline, blocking risks
|
|
592
|
+
├── architecture-decisions.md (Cross-cutting Topic MOC)
|
|
593
|
+
│ → decisions that affect multiple projects
|
|
594
|
+
├── estimation-patterns.md (Cross-cutting Topic MOC)
|
|
595
|
+
│ → velocity data, estimation bias, planning improvements
|
|
596
|
+
├── stakeholder-management.md (Cross-cutting Topic MOC)
|
|
597
|
+
│ → communication patterns, preference tracking
|
|
598
|
+
└── team-health.md (Cross-cutting Topic MOC)
|
|
599
|
+
→ retro themes, workload patterns, satisfaction signals
|
|
600
|
+
```
|
|
601
|
+
|
|
602
|
+
### Example Cross-Cutting MOC
|
|
603
|
+
|
|
604
|
+
```markdown
|
|
605
|
+
---
|
|
606
|
+
description: Patterns in sprint estimation across projects — tracking the 30 percent bias, root causes, and interventions attempted
|
|
607
|
+
type: moc
|
|
608
|
+
topics: ["[[index]]"]
|
|
609
|
+
---
|
|
610
|
+
|
|
611
|
+
# estimation-patterns
|
|
612
|
+
|
|
613
|
+
Estimation accuracy is a systemic challenge, not a project-specific one. The vault tracks estimation data across all three active projects to detect patterns, test interventions, and build organizational memory about what actually takes how long.
|
|
614
|
+
|
|
615
|
+
## Core Findings
|
|
616
|
+
|
|
617
|
+
- [[our sprint estimates are 30 percent optimistic on average]] — the foundational finding: systematic bias holds across projects with small variance
|
|
618
|
+
- [[cross-team dependencies cause more delays than technical complexity]] — one root cause: untracked cross-team work consumes the "missing" capacity
|
|
619
|
+
- [[exec stakeholders need impact summaries not technical details]] — application: adjusted timelines should be the default in stakeholder communication
|
|
620
|
+
|
|
621
|
+
## Interventions Attempted
|
|
622
|
+
|
|
623
|
+
Sprint 12: Added 20% buffer to all estimates. Result: still overran by 15%. The buffer was consumed by scope additions, not estimation error.
|
|
624
|
+
|
|
625
|
+
Sprint 14: Flagged Slack-based scope additions as the specific mechanism. Action item: all feature requests through backlog. Not yet implemented — check sprint 15 results.
|
|
626
|
+
|
|
627
|
+
## Open Questions
|
|
628
|
+
|
|
629
|
+
- Is the 30% bias stable, or does it improve as teams mature? Need 6+ more sprints of data.
|
|
630
|
+
- Would story point re-calibration help, or is the problem at the story scoping level?
|
|
631
|
+
- How much of the overrun is genuine estimation error vs untracked scope additions?
|
|
632
|
+
|
|
633
|
+
---
|
|
634
|
+
|
|
635
|
+
Agent Notes:
|
|
636
|
+
This MOC bridges all three project MOCs. When any project discusses timeline, check the estimation bias first. The 30% correction should be applied in every status update to David. Track sprint-by-sprint velocity in the weekly status notes — the trend matters more than any individual sprint.
|
|
637
|
+
```
|
|
638
|
+
|
|
639
|
+
## Graph Query Examples
|
|
640
|
+
|
|
641
|
+
```bash
|
|
642
|
+
# Find all active decisions for a specific project
|
|
643
|
+
rg -l '^project:.*payments-api' vault/01_thinking/ | xargs rg -l '^status: active'
|
|
644
|
+
|
|
645
|
+
# Find decisions with unmet assumptions (review trigger potentially fired)
|
|
646
|
+
rg '^review_trigger:' vault/01_thinking/ -A0
|
|
647
|
+
|
|
648
|
+
# Find overdue action items
|
|
649
|
+
rg '^deadline: 2026-02' vault/01_thinking/ vault/03_tracking/ | while read line; do
|
|
650
|
+
file=$(echo "$line" | cut -d: -f1)
|
|
651
|
+
deadline=$(echo "$line" | awk '{print $2}')
|
|
652
|
+
status=$(rg '^status:' "$file" 2>/dev/null | awk '{print $2}')
|
|
653
|
+
if [ "$status" != "done" ] && [ "$deadline" \< "2026-02-15" ]; then
|
|
654
|
+
echo "OVERDUE: $file (deadline: $deadline, status: $status)"
|
|
655
|
+
fi
|
|
656
|
+
done
|
|
657
|
+
|
|
658
|
+
# Find risks not reviewed in 14+ days
|
|
659
|
+
rg '^last_reviewed:' vault/01_thinking/ | while read line; do
|
|
660
|
+
file=$(echo "$line" | cut -d: -f1)
|
|
661
|
+
reviewed=$(echo "$line" | awk '{print $2}')
|
|
662
|
+
days_ago=$(( ($(date +%s) - $(date -j -f "%Y-%m-%d" "$reviewed" +%s 2>/dev/null || echo 0)) / 86400 ))
|
|
663
|
+
if [ "$days_ago" -gt 14 ]; then
|
|
664
|
+
echo "STALE RISK: $file (last reviewed: $reviewed, $days_ago days ago)"
|
|
665
|
+
fi
|
|
666
|
+
done
|
|
667
|
+
|
|
668
|
+
# Find all decisions a stakeholder was consulted on
|
|
669
|
+
rg 'stakeholders_consulted:.*marcus-chen' vault/01_thinking/
|
|
670
|
+
|
|
671
|
+
# Trace the decision dependency chain from a specific decision
|
|
672
|
+
# (recursive: what depends on this, and what depends on those)
|
|
673
|
+
./vault/04_meta/scripts/dependency-graph.sh "chose Kafka over RabbitMQ for real-time analytics throughput"
|
|
674
|
+
|
|
675
|
+
# Find recurring retrospective themes across sprints
|
|
676
|
+
rg '^themes:' vault/03_tracking/retrospectives/ | tr ',' '\n' | sort | uniq -c | sort -rn
|
|
677
|
+
```
|
|
678
|
+
|
|
679
|
+
## What Makes This Domain Unique
|
|
680
|
+
|
|
681
|
+
**Decisions are the atomic unit, not facts or insights.** In research, you extract claims. In therapy, you extract patterns. In PM, you extract decisions. The decision note schema is the most structured note type across all domains because decisions carry the most context: what options existed, who was consulted, what was chosen, why, and what would trigger reconsideration. A claim can stand alone. A decision without its rationale and alternatives is incomplete.
|
|
682
|
+
|
|
683
|
+
**Dependency graphs create cascading impact.** No other domain has the same cascading structure. When a research claim is contradicted, the contradiction affects that claim and its synthesis notes. When a PM decision's assumptions change, the impact cascades through every dependent decision, risk assessment, timeline, and stakeholder commitment. The agent must trace these cascades — and it's the only entity that can trace them exhaustively.
|
|
684
|
+
|
|
685
|
+
**Stakeholder communication is a first-class concern.** Research and therapy are individual activities. PM inherently involves multiple people with different information needs, communication preferences, and update frequencies. The stakeholder graph isn't an add-on — it's a core architectural element. Every decision has a "who needs to know?" dimension that the agent can answer by traversing the stakeholder-project-decision graph.
|
|
686
|
+
|
|
687
|
+
## Agent-Native Advantages
|
|
688
|
+
|
|
689
|
+
### Stale Decision Detection
|
|
690
|
+
|
|
691
|
+
Human PMs make decisions and move on. The decision was correct at the time, but the context that motivated it shifts: the headcount changes, the timeline slips, the feature gets deprioritized, the technology landscape evolves. The decision sits in the log, still marked "active," its assumptions quietly expiring.
|
|
692
|
+
|
|
693
|
+
The agent checks assumptions continuously. Every decision note has explicit assumptions and a review trigger condition. During weekly reconciliation, the agent evaluates whether trigger conditions have been met:
|
|
694
|
+
|
|
695
|
+
- "The Kafka decision assumed real-time analytics would launch as planned. David raised deprioritization on Feb 5. Trigger condition met. Three downstream decisions depend on Kafka. Impact analysis: if we revert to RabbitMQ, the Avro schema decision, consumer group topology, and monitoring stack additions all need revisiting."
|
|
696
|
+
|
|
697
|
+
This isn't just "remind me to review the Kafka decision." It's: detect the trigger, trace the dependency chain, assess the cascade, and present the full impact. A human PM might catch the Kafka trigger. They almost certainly wouldn't trace all three downstream dependencies and assess each one's relevance.
|
|
698
|
+
|
|
699
|
+
### Cross-Project Dependency Analysis
|
|
700
|
+
|
|
701
|
+
Sam runs three projects with shared stakeholders, shared infrastructure, and implicit dependencies that nobody tracks explicitly. The auth migration blocking the payments API is documented. But what about:
|
|
702
|
+
|
|
703
|
+
- The analytics pipeline's Kafka schema decision affecting payments if they need shared event streams?
|
|
704
|
+
- The auth team's headcount being shared with the analytics team, creating an implicit resource dependency?
|
|
705
|
+
- A decision in the analytics project to use a specific monitoring approach that conflicts with a payments decision about alerting?
|
|
706
|
+
|
|
707
|
+
The agent maintains the full cross-project graph. When a decision is made in any project, the agent checks for impacts in all other projects. "The analytics team's decision to use domain-bounded consumer groups means the payments team can't share the analytics consumer group for reconciliation events. This creates a new dependency: payments needs its own consumer group configuration, which adds approximately one sprint of work."
|
|
708
|
+
|
|
709
|
+
No human PM can hold three projects' full decision and dependency graphs in working memory simultaneously. The agent can.
|
|
710
|
+
|
|
711
|
+
### Retrospective Pattern Analysis
|
|
712
|
+
|
|
713
|
+
Teams hold retrospectives and capture what worked and what didn't. But retrospective value comes from patterns across retrospectives, not individual sessions. The same issue recurring in three consecutive retros is a systemic problem. A theme appearing in two different projects suggests an organizational pattern.
|
|
714
|
+
|
|
715
|
+
The agent analyzes themes across all retrospectives:
|
|
716
|
+
|
|
717
|
+
```
|
|
718
|
+
RECURRING THEMES (last 6 retros, 3 projects):
|
|
719
|
+
- estimation-accuracy: appeared 5/6 retros, all 3 projects
|
|
720
|
+
- scope-creep: appeared 4/6 retros, payments + analytics
|
|
721
|
+
- cross-team-communication: appeared 3/6 retros, all 3 projects
|
|
722
|
+
- async-vs-sync: appeared 2/6 retros, trending upward
|
|
723
|
+
|
|
724
|
+
RESOLVED THEMES:
|
|
725
|
+
- deployment-process: appeared 3/3 retros before automation, 0/3 after
|
|
726
|
+
```
|
|
727
|
+
|
|
728
|
+
This analysis — which themes persist, which resolve, which span projects — requires holding all retrospective data simultaneously and computing frequencies. A human facilitator might remember "we talked about estimation last time too" but can't produce the systematic cross-project theme analysis that reveals organizational patterns.
|
|
729
|
+
|
|
730
|
+
### Meeting Preparation via Context Aggregation
|
|
731
|
+
|
|
732
|
+
Before any meeting, the agent assembles all relevant context:
|
|
733
|
+
|
|
734
|
+
- Decisions previously made about topics on the agenda
|
|
735
|
+
- Action items from previous meetings that are due or overdue
|
|
736
|
+
- Risk updates since the last meeting
|
|
737
|
+
- Stakeholder positions and communication preferences
|
|
738
|
+
- Cross-project implications of agenda items
|
|
739
|
+
|
|
740
|
+
For Sam's weekly sync with David (VP Eng), the agent generates:
|
|
741
|
+
|
|
742
|
+
"**Prep for David sync, Feb 17:**
|
|
743
|
+
- Payments API: on track IF auth adapter mitigation holds. Auth team reports 1 week behind. Adjusted timeline: mid-March (applying 30% estimation correction). Risk score: critical.
|
|
744
|
+
- Analytics pipeline: Kafka topology finalized. Marcus benchmarking partition counts, results by Feb 21. No new risks.
|
|
745
|
+
- Auth migration: Marcus reports adapter layer 40% complete. Original timeline at risk — Feb 28 milestone unlikely. Mitigation on track.
|
|
746
|
+
- David asked for real-time analytics deprioritization impact summary on Feb 5. Due Feb 20. Drafted.
|
|
747
|
+
- Two action items from David are overdue: headcount allocation review (Jan 31) and tech debt prioritization framework (Feb 7)."
|
|
748
|
+
|
|
749
|
+
This prep takes the agent 30 seconds. It would take Sam 20 minutes of digging through Slack, email, meeting notes, and spreadsheets. And Sam would miss things — the overdue headcount item from three weeks ago, the estimation correction, the cascade from auth to payments.
|
|
750
|
+
|
|
751
|
+
### Decision Amnesia Prevention
|
|
752
|
+
|
|
753
|
+
The most expensive failure in PM is relitigating settled decisions. A new team member asks "why Kafka?" and nobody can reconstruct the rationale. Or worse: the original decision-maker left the company, and the decision now appears arbitrary. The team debates Kafka vs RabbitMQ again, spending two meetings on a question that was thoroughly analyzed five weeks ago.
|
|
754
|
+
|
|
755
|
+
The agent makes decision amnesia impossible. When someone asks "why Kafka?", the agent produces: the original evaluation (three options, detailed pros/cons), the rationale (throughput requirements), the stakeholders consulted (Marcus and Priya), the assumptions that must hold (real-time analytics launching as planned), and the current status of those assumptions (David raised deprioritization — trigger condition potentially met).
|
|
756
|
+
|
|
757
|
+
This isn't just retrieval. The agent adds current context: "This decision was made on Jan 15. Since then, one assumption may have changed: David raised analytics deprioritization on Feb 5. If that proceeds, the throughput requirement drops and the rationale for Kafka weakens. Three downstream decisions depend on Kafka."
|
|
758
|
+
|
|
759
|
+
The new team member gets the full picture in seconds. The team avoids a two-hour re-debate. And if the decision should actually be revisited (because assumptions changed), the agent provides the structured basis for that conversation rather than an argument from foggy memory.
|
|
760
|
+
|
|
761
|
+
### Estimation Accuracy as Organizational Memory
|
|
762
|
+
|
|
763
|
+
Individual sprints have estimation errors. But the pattern across sprints — the systematic 30% bias — is organizational knowledge that no single sprint reveals. The agent tracks estimation accuracy over time, correlating overruns with root causes:
|
|
764
|
+
|
|
765
|
+
- Which types of work are most underestimated? (Integration tasks run 45% over; UI work runs 15% over)
|
|
766
|
+
- Which team members estimate most accurately? (Not to punish, but to calibrate — whose estimates should be scaled by how much?)
|
|
767
|
+
- Does the bias change with sprint planning duration? (Longer planning sessions correlate with 5% better estimates)
|
|
768
|
+
- Do specific types of scope additions predict overruns? (Slack-originated additions correlate with 2x more overrun than backlog-originated additions)
|
|
769
|
+
|
|
770
|
+
This builds organizational learning about estimation that persists beyond any individual's tenure. When a new PM joins, the vault doesn't just say "we estimate badly." It says "we overestimate by 30% on average, driven primarily by untracked scope additions, with integration tasks being the worst category. Here are the 14 sprints of data, the three interventions we've tried, and their results."
|
|
771
|
+
|
|
772
|
+
That's institutional knowledge that would otherwise evaporate every time someone changes roles.
|
|
773
|
+
---
|
|
774
|
+
|
|
775
|
+
Topics:
|
|
776
|
+
- [[domain-compositions]]
|