@event4u/agent-config 14.23.0 → 16.0.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/.augment-plugin/marketplace.json +3 -3
- package/.augment-plugin/plugin.json +1 -1
- package/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +144 -152
- package/README.md +1 -1
- package/dist/agent-src/commands/agent-handoff.md +8 -7
- package/dist/agent-src/commands/agents/init.md +1 -1
- package/dist/agent-src/commands/agents/user/accept.md +4 -4
- package/dist/agent-src/commands/agents/user/delete.md +2 -2
- package/dist/agent-src/commands/agents/user/init.md +3 -3
- package/dist/agent-src/commands/agents/user/review.md +3 -3
- package/dist/agent-src/commands/agents/user/show.md +3 -3
- package/dist/agent-src/commands/agents/user/update.md +2 -2
- package/dist/agent-src/commands/agents/user.md +6 -6
- package/dist/agent-src/commands/analytics/prune.md +1 -1
- package/dist/agent-src/commands/analytics/show.md +2 -2
- package/dist/agent-src/commands/analyze/decision.md +2 -2
- package/dist/agent-src/commands/analyze/inbox.md +5 -5
- package/dist/agent-src/commands/analyze/incident.md +3 -3
- package/dist/agent-src/commands/analyze/near-miss.md +3 -3
- package/dist/agent-src/commands/analyze/postmortem.md +4 -4
- package/dist/agent-src/commands/analyze/premortem.md +2 -2
- package/dist/agent-src/commands/analyze.md +2 -2
- package/dist/agent-src/commands/bug/fix.md +1 -1
- package/dist/agent-src/commands/bug/investigate.md +2 -2
- package/dist/agent-src/commands/cost/profile.md +3 -3
- package/dist/agent-src/commands/design.md +1 -1
- package/dist/agent-src/commands/feature/explore.md +1 -1
- package/dist/agent-src/commands/feature/plan.md +2 -2
- package/dist/agent-src/commands/feature/roadmap.md +2 -2
- package/dist/agent-src/commands/ghostwriter/fetch.md +4 -4
- package/dist/agent-src/commands/ghostwriter/list.md +1 -1
- package/dist/agent-src/commands/ghostwriter/show.md +1 -1
- package/dist/agent-src/commands/ghostwriter/write.md +9 -9
- package/dist/agent-src/commands/humanize.md +6 -6
- package/dist/agent-src/commands/jira-ticket.md +1 -1
- package/dist/agent-src/commands/judge/solo.md +1 -1
- package/dist/agent-src/commands/judge.md +1 -1
- package/dist/agent-src/commands/knowledge/cross-repo.md +1 -1
- package/dist/agent-src/commands/knowledge/forget.md +1 -1
- package/dist/agent-src/commands/knowledge/ingest.md +2 -2
- package/dist/agent-src/commands/knowledge/list.md +1 -1
- package/dist/agent-src/commands/memory/add.md +3 -3
- package/dist/agent-src/commands/memory/load.md +4 -4
- package/dist/agent-src/commands/memory/mine-session.md +1 -1
- package/dist/agent-src/commands/memory/promote.md +4 -4
- package/dist/agent-src/commands/memory/propose.md +2 -2
- package/dist/agent-src/commands/mode.md +5 -5
- package/dist/agent-src/commands/post-as/ghostwriter.md +3 -3
- package/dist/agent-src/commands/post-as/me.md +7 -7
- package/dist/agent-src/commands/pr/create.md +1 -1
- package/dist/agent-src/commands/pr/merge.md +1 -1
- package/dist/agent-src/commands/profile/activate.md +1 -1
- package/dist/agent-src/commands/profile/show.md +1 -1
- package/dist/agent-src/commands/research/deep.md +2 -2
- package/dist/agent-src/commands/research/report.md +2 -2
- package/dist/agent-src/commands/review/changes.md +1 -1
- package/dist/agent-src/commands/review/routing.md +1 -1
- package/dist/agent-src/commands/roadmap/create.md +4 -3
- package/dist/agent-src/commands/roadmap/materialize.md +2 -2
- package/dist/agent-src/commands/roadmap/next.md +1 -1
- package/dist/agent-src/commands/roadmap/process-full.md +2 -2
- package/dist/agent-src/commands/security-audit-config.md +3 -3
- package/dist/agent-src/commands/skill/preview.md +1 -1
- package/dist/agent-src/commands/skills/discover.md +1 -1
- package/dist/agent-src/commands/sync/agent-settings.md +2 -2
- package/dist/agent-src/commands/sync/gitignore/fix.md +1 -1
- package/dist/agent-src/commands/tests/create.md +1 -1
- package/dist/agent-src/commands/tests/e2e-heal.md +1 -1
- package/dist/agent-src/commands/tests/e2e-plan.md +1 -1
- package/dist/agent-src/contexts/authority/kernel-rule-edits.md +6 -6
- package/dist/agent-src/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md +1 -2
- package/dist/agent-src/contexts/communication/rules-auto/think-before-action-mechanics.md +2 -2
- package/dist/agent-src/contexts/communication/rules-auto/token-efficiency-mechanics.md +88 -1
- package/dist/agent-src/contexts/communication/rules-auto/user-interaction-mechanics.md +51 -1
- package/dist/agent-src/contexts/contracts/frugality-charter.md +1 -1
- package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +1 -1
- package/dist/agent-src/contexts/execution/auto-orchestration-activation.md +1 -1
- package/dist/agent-src/contexts/execution/autonomy-mechanics.md +1 -1
- package/dist/agent-src/contexts/execution/cheap-question-mechanics.md +1 -1
- package/dist/agent-src/contexts/execution/contract-decision-sheet.md +3 -3
- package/dist/agent-src/contexts/execution/mandated-lines.md +1 -1
- package/dist/agent-src/contexts/execution/non-interactive-contract.md +1 -1
- package/dist/agent-src/contexts/execution/orchestration-telemetry.md +1 -1
- package/dist/agent-src/contexts/execution/plan-confidence-gate.md +5 -5
- package/dist/agent-src/contexts/execution/roadmap-execution-contract.md +1 -1
- package/dist/agent-src/contexts/execution/subagent-modes-detail.md +1 -1
- package/dist/agent-src/contexts/execution/subagent-routing.md +2 -2
- package/dist/agent-src/contexts/execution/subagent-spawn-contract.md +1 -1
- package/dist/agent-src/contexts/execution/user-memory-channels.md +3 -3
- package/dist/agent-src/contexts/execution/verification-mechanics.md +1 -1
- package/dist/agent-src/contexts/judges/persona-voice-rubric.md +2 -2
- package/dist/agent-src/guidelines/abstraction-thresholds.md +88 -0
- package/dist/agent-src/guidelines/agent-infra/5w2h-analysis.md +260 -0
- package/dist/agent-src/guidelines/agent-infra/active-remediation-mechanics.md +99 -0
- package/dist/agent-src/guidelines/agent-infra/agent-interaction-and-decision-quality.md +325 -0
- package/dist/agent-src/guidelines/agent-infra/api-cost-levers.md +177 -0
- package/dist/agent-src/guidelines/agent-infra/artifact-drafting-protocol-mechanics.md +222 -0
- package/dist/agent-src/guidelines/agent-infra/ask-when-uncertain-demos.md +134 -0
- package/dist/agent-src/guidelines/agent-infra/asking-and-brevity-examples.md +198 -0
- package/dist/agent-src/guidelines/agent-infra/break-glass-usage.md +113 -0
- package/dist/agent-src/guidelines/agent-infra/carve-out-predicates.md +17 -0
- package/dist/agent-src/guidelines/agent-infra/comparison-matrix.md +179 -0
- package/dist/agent-src/guidelines/agent-infra/context-hygiene-mechanics.md +165 -0
- package/dist/agent-src/guidelines/agent-infra/corpus-grounding-authoring.md +91 -0
- package/dist/agent-src/guidelines/agent-infra/critical-thinking.md +156 -0
- package/dist/agent-src/guidelines/agent-infra/cross-source-consistency-mechanics.md +109 -0
- package/dist/agent-src/guidelines/agent-infra/developer-judgment.md +82 -0
- package/dist/agent-src/guidelines/agent-infra/direct-answers-demos.md +142 -0
- package/dist/agent-src/guidelines/agent-infra/domain-adoption-gates.md +112 -0
- package/dist/agent-src/guidelines/agent-infra/domain-eval-anti-pattern.md +53 -0
- package/dist/agent-src/guidelines/agent-infra/domain-pack-architecture.md +56 -0
- package/dist/agent-src/guidelines/agent-infra/downstream-changes-mechanics.md +91 -0
- package/dist/agent-src/guidelines/agent-infra/emphasis-budget.md +45 -0
- package/dist/agent-src/guidelines/agent-infra/engineering-memory-data-format.md +210 -0
- package/dist/agent-src/guidelines/agent-infra/evaluator-independence-mechanics.md +92 -0
- package/dist/agent-src/guidelines/agent-infra/existence-question-verdicts.md +80 -0
- package/dist/agent-src/guidelines/agent-infra/failure-signatures.md +70 -0
- package/dist/agent-src/guidelines/agent-infra/false-green.md +233 -0
- package/dist/agent-src/guidelines/agent-infra/first-principles.md +192 -0
- package/dist/agent-src/guidelines/agent-infra/framework-neutrality-patterns.md +66 -0
- package/dist/agent-src/guidelines/agent-infra/frontier-reasoning-operating-profile.md +169 -0
- package/dist/agent-src/guidelines/agent-infra/gate-authoring.md +177 -0
- package/dist/agent-src/guidelines/agent-infra/guarded-baseline.md +39 -0
- package/dist/agent-src/guidelines/agent-infra/installed-tools-manifest.md +142 -0
- package/dist/agent-src/guidelines/agent-infra/inversion-thinking.md +388 -0
- package/dist/agent-src/guidelines/agent-infra/ios-simulator-guide.md +378 -0
- package/dist/agent-src/guidelines/agent-infra/language-and-tone-examples.md +141 -0
- package/dist/agent-src/guidelines/agent-infra/layered-settings.md +317 -0
- package/dist/agent-src/guidelines/agent-infra/linked-projects-onboarding-gate.md +80 -0
- package/dist/agent-src/guidelines/agent-infra/mcp-request-signing.md +197 -0
- package/dist/agent-src/guidelines/agent-infra/memory-access.md +149 -0
- package/dist/agent-src/guidelines/agent-infra/mental-models.md +314 -0
- package/dist/agent-src/guidelines/agent-infra/minimal-safe-diff-mechanics.md +241 -0
- package/dist/agent-src/guidelines/agent-infra/missing-tool-handling.md +66 -0
- package/dist/agent-src/guidelines/agent-infra/model-recommendation.md +101 -0
- package/dist/agent-src/guidelines/agent-infra/naming.md +69 -0
- package/dist/agent-src/guidelines/agent-infra/notes-horizon-mechanics.md +90 -0
- package/dist/agent-src/guidelines/agent-infra/output-patterns.md +117 -0
- package/dist/agent-src/guidelines/agent-infra/recurring-criticism-mechanics.md +96 -0
- package/dist/agent-src/guidelines/agent-infra/reuse-verdict-mechanics.md +71 -0
- package/dist/agent-src/guidelines/agent-infra/review-routing-data-format.md +143 -0
- package/dist/agent-src/guidelines/agent-infra/roadmap-deferred-resolution-provenance.md +54 -0
- package/dist/agent-src/guidelines/agent-infra/roadmap-progress-mechanics.md +274 -0
- package/dist/agent-src/guidelines/agent-infra/role-contracts.md +209 -0
- package/dist/agent-src/guidelines/agent-infra/role-mode-router.md +89 -0
- package/dist/agent-src/guidelines/agent-infra/rule-body-migration-inventory.md +241 -0
- package/dist/agent-src/guidelines/agent-infra/rule-type-governance.md +73 -0
- package/dist/agent-src/guidelines/agent-infra/runtime-layer.md +89 -0
- package/dist/agent-src/guidelines/agent-infra/scqa-framework.md +526 -0
- package/dist/agent-src/guidelines/agent-infra/security-lint-containment.md +121 -0
- package/dist/agent-src/guidelines/agent-infra/self-improvement-pipeline.md +134 -0
- package/dist/agent-src/guidelines/agent-infra/simplicity-and-goal-demos.md +211 -0
- package/dist/agent-src/guidelines/agent-infra/six-hats.md +353 -0
- package/dist/agent-src/guidelines/agent-infra/size-and-scope.md +229 -0
- package/dist/agent-src/guidelines/agent-infra/skill-quality-checklist.md +157 -0
- package/dist/agent-src/guidelines/agent-infra/source-confidentiality-mechanics.md +109 -0
- package/dist/agent-src/guidelines/agent-infra/symptom-driven-harvest-loop.md +104 -0
- package/dist/agent-src/guidelines/agent-infra/systems-thinking.md +220 -0
- package/dist/agent-src/guidelines/agent-infra/tool-description-as-policy.md +35 -0
- package/dist/agent-src/guidelines/agent-infra/tool-integration.md +73 -0
- package/dist/agent-src/guidelines/agent-infra/traceability-field-mechanics.md +50 -0
- package/dist/agent-src/guidelines/agent-infra/untrusted-input-spotlighting.md +166 -0
- package/dist/agent-src/guidelines/agent-infra/verify-before-complete-demos.md +128 -0
- package/dist/agent-src/guidelines/augment-portability-patterns.md +70 -0
- package/dist/agent-src/guidelines/code-clarity.md +350 -0
- package/dist/agent-src/guidelines/component-oriented-and-oop-development.md +189 -0
- package/dist/agent-src/guidelines/cross-role-handoff.md +127 -0
- package/dist/agent-src/guidelines/design-antipatterns-triggers.json +18 -0
- package/dist/agent-src/guidelines/design-antipatterns.md +327 -0
- package/dist/agent-src/guidelines/design-asset-discipline.md +38 -0
- package/dist/agent-src/guidelines/design-canon.md +63 -0
- package/dist/agent-src/guidelines/design-fidelity-mechanics.md +293 -0
- package/dist/agent-src/guidelines/design-fidelity-routing.md +78 -0
- package/dist/agent-src/guidelines/design-handover-extraction.md +117 -0
- package/dist/agent-src/guidelines/design-modes.md +143 -0
- package/dist/agent-src/guidelines/design-reconciliation.md +172 -0
- package/dist/agent-src/guidelines/docs/readme-size-and-splitting.md +209 -0
- package/dist/agent-src/guidelines/e2e/playwright.md +363 -0
- package/dist/agent-src/guidelines/gtm-handoff.md +114 -0
- package/dist/agent-src/guidelines/monorepo-antipatterns.md +141 -0
- package/dist/agent-src/guidelines/php/api-design.md +115 -0
- package/dist/agent-src/guidelines/php/artisan-commands.md +81 -0
- package/dist/agent-src/guidelines/php/blade-ui.md +78 -0
- package/dist/agent-src/guidelines/php/controllers.md +90 -0
- package/dist/agent-src/guidelines/php/database.md +194 -0
- package/dist/agent-src/guidelines/php/eloquent.md +208 -0
- package/dist/agent-src/guidelines/php/flux.md +80 -0
- package/dist/agent-src/guidelines/php/general.md +207 -0
- package/dist/agent-src/guidelines/php/git.md +164 -0
- package/dist/agent-src/guidelines/php/jobs.md +111 -0
- package/dist/agent-src/guidelines/php/livewire.md +71 -0
- package/dist/agent-src/guidelines/php/logging.md +79 -0
- package/dist/agent-src/guidelines/php/naming.md +89 -0
- package/dist/agent-src/guidelines/php/patterns/dependency-injection.md +57 -0
- package/dist/agent-src/guidelines/php/patterns/dtos.md +199 -0
- package/dist/agent-src/guidelines/php/patterns/events.md +67 -0
- package/dist/agent-src/guidelines/php/patterns/factory.md +53 -0
- package/dist/agent-src/guidelines/php/patterns/pipelines.md +66 -0
- package/dist/agent-src/guidelines/php/patterns/policies.md +66 -0
- package/dist/agent-src/guidelines/php/patterns/repositories.md +122 -0
- package/dist/agent-src/guidelines/php/patterns/service-layer.md +64 -0
- package/dist/agent-src/guidelines/php/patterns/strategy.md +247 -0
- package/dist/agent-src/guidelines/php/patterns.md +28 -0
- package/dist/agent-src/guidelines/php/performance.md +92 -0
- package/dist/agent-src/guidelines/php/php-coding-patterns.md +80 -0
- package/dist/agent-src/guidelines/php/resources.md +100 -0
- package/dist/agent-src/guidelines/php/security.md +110 -0
- package/dist/agent-src/guidelines/php/sql.md +97 -0
- package/dist/agent-src/guidelines/php/validations.md +119 -0
- package/dist/agent-src/guidelines/php/websocket.md +100 -0
- package/dist/agent-src/guidelines/prompt-templates.md +189 -0
- package/dist/agent-src/guidelines/redundancy-taxonomy.md +208 -0
- package/dist/agent-src/guidelines/wing4-handoff.md +127 -0
- package/dist/agent-src/personas/README.md +1 -1
- package/dist/agent-src/personas/_template-specialist/persona.md +1 -1
- package/dist/agent-src/personas/product-owner.md +1 -1
- package/dist/agent-src/rules/active-remediation.md +1 -1
- package/dist/agent-src/rules/architecture.md +2 -2
- package/dist/agent-src/rules/artifact-drafting-protocol.md +1 -1
- package/dist/agent-src/rules/ask-when-uncertain.md +2 -2
- package/dist/agent-src/rules/brand-source-of-truth.md +9 -7
- package/dist/agent-src/rules/code-comment-discipline.md +2 -2
- package/dist/agent-src/rules/code-provenance.md +1 -1
- package/dist/agent-src/rules/content-quoting-floor.md +1 -1
- package/dist/agent-src/rules/context-hygiene.md +5 -5
- package/dist/agent-src/rules/cross-source-consistency.md +1 -1
- package/dist/agent-src/rules/design-fidelity.md +36 -46
- package/dist/agent-src/rules/direct-answers.md +2 -2
- package/dist/agent-src/rules/domain-adoption-policy.md +1 -1
- package/dist/agent-src/rules/evaluator-independence.md +1 -1
- package/dist/agent-src/rules/framework-neutrality-in-generic-skills.md +1 -1
- package/dist/agent-src/rules/icon-consistency.md +5 -1
- package/dist/agent-src/rules/improve-before-implement.md +1 -1
- package/dist/agent-src/rules/language-and-tone.md +3 -3
- package/dist/agent-src/rules/minimal-safe-diff.md +1 -1
- package/dist/agent-src/rules/notes-first-reasoning.md +2 -2
- package/dist/agent-src/rules/recurring-criticism.md +1 -1
- package/dist/agent-src/rules/roadmap-progress-sync.md +1 -1
- package/dist/agent-src/rules/role-mode-adherence.md +2 -2
- package/dist/agent-src/rules/security-sensitive-stop.md +1 -1
- package/dist/agent-src/rules/size-enforcement.md +1 -1
- package/dist/agent-src/rules/source-confidentiality.md +2 -2
- package/dist/agent-src/rules/think-before-action.md +1 -1
- package/dist/agent-src/rules/token-efficiency.md +7 -5
- package/dist/agent-src/rules/ui-audit-gate.md +3 -2
- package/dist/agent-src/rules/untrusted-input-defense.md +3 -3
- package/dist/agent-src/rules/user-interaction.md +31 -30
- package/dist/agent-src/skills/activation-design/SKILL.md +2 -2
- package/dist/agent-src/skills/adr-create/SKILL.md +5 -5
- package/dist/agent-src/skills/ai-council/SKILL.md +1 -1
- package/dist/agent-src/skills/ai-council/references/advanced-modes.md +1 -1
- package/dist/agent-src/skills/blade-ui/SKILL.md +1 -1
- package/dist/agent-src/skills/blast-radius-analyzer/SKILL.md +1 -1
- package/dist/agent-src/skills/brand-to-tokens/SKILL.md +24 -3
- package/dist/agent-src/skills/bug-analyzer/SKILL.md +1 -1
- package/dist/agent-src/skills/build-buy-partner/SKILL.md +1 -1
- package/dist/agent-src/skills/churn-prevention/SKILL.md +2 -2
- package/dist/agent-src/skills/code-refactoring/SKILL.md +3 -3
- package/dist/agent-src/skills/code-review/SKILL.md +3 -3
- package/dist/agent-src/skills/command-writing/SKILL.md +3 -3
- package/dist/agent-src/skills/comp-banding/SKILL.md +1 -1
- package/dist/agent-src/skills/competitive-moat-analysis/SKILL.md +1 -1
- package/dist/agent-src/skills/competitive-positioning/SKILL.md +2 -2
- package/dist/agent-src/skills/complexity-first-planning/SKILL.md +1 -1
- package/dist/agent-src/skills/condense-memory/SKILL.md +1 -1
- package/dist/agent-src/skills/content-funnel-design/SKILL.md +2 -2
- package/dist/agent-src/skills/contracts-cognition/SKILL.md +1 -1
- package/dist/agent-src/skills/copilot-agents-optimization/SKILL.md +2 -2
- package/dist/agent-src/skills/corpus-grounding/SKILL.md +2 -2
- package/dist/agent-src/skills/customer-research/SKILL.md +2 -2
- package/dist/agent-src/skills/dashboard-design/SKILL.md +1 -1
- package/dist/agent-src/skills/data-handling-judgment/SKILL.md +1 -1
- package/dist/agent-src/skills/deal-qualification-meddic/SKILL.md +2 -2
- package/dist/agent-src/skills/decision-record/SKILL.md +3 -3
- package/dist/agent-src/skills/decision-review/SKILL.md +8 -8
- package/dist/agent-src/skills/deep-reading-analyst/SKILL.md +22 -22
- package/dist/agent-src/skills/design-intelligence/SKILL.md +4 -4
- package/dist/agent-src/skills/design-intelligence/references/context-and-registers.md +2 -2
- package/dist/agent-src/skills/design-review/SKILL.md +4 -4
- package/dist/agent-src/skills/design-system-capture/references/design-system-json.md +20 -1
- package/dist/agent-src/skills/design-tokens/SKILL.md +17 -2
- package/dist/agent-src/skills/design-variations/SKILL.md +2 -2
- package/dist/agent-src/skills/developer-like-execution/SKILL.md +2 -2
- package/dist/agent-src/skills/discovery-interview/SKILL.md +2 -2
- package/dist/agent-src/skills/doc-coauthoring/SKILL.md +3 -3
- package/dist/agent-src/skills/editorial-calendar/SKILL.md +2 -2
- package/dist/agent-src/skills/error-handling-patterns/SKILL.md +9 -0
- package/dist/agent-src/skills/existing-ui-audit/SKILL.md +44 -1
- package/dist/agent-src/skills/existing-ui-audit/references/anti-slop-cross-reference.md +2 -2
- package/dist/agent-src/skills/expansion-playbook/SKILL.md +2 -2
- package/dist/agent-src/skills/experiment-loop/SKILL.md +1 -1
- package/dist/agent-src/skills/experiment-loop/references/protocol.md +1 -1
- package/dist/agent-src/skills/fe-design/SKILL.md +3 -3
- package/dist/agent-src/skills/fe-design/references/design-patterns.md +1 -1
- package/dist/agent-src/skills/fe-design/references/design-read-and-memory.md +3 -3
- package/dist/agent-src/skills/fe-design/references/source-led-port.md +1 -1
- package/dist/agent-src/skills/feature-planning/SKILL.md +1 -1
- package/dist/agent-src/skills/flux/SKILL.md +1 -1
- package/dist/agent-src/skills/forecast-accuracy/SKILL.md +2 -2
- package/dist/agent-src/skills/forecasting/SKILL.md +2 -2
- package/dist/agent-src/skills/fundraising-narrative/SKILL.md +2 -2
- package/dist/agent-src/skills/funnel-analysis/SKILL.md +2 -2
- package/dist/agent-src/skills/gtm-launch/SKILL.md +2 -2
- package/dist/agent-src/skills/hiring-loop-design/SKILL.md +1 -1
- package/dist/agent-src/skills/html-deck/SKILL.md +5 -5
- package/dist/agent-src/skills/humanizer/SKILL.md +1 -1
- package/dist/agent-src/skills/humanizer/data/patterns.md +1 -1
- package/dist/agent-src/skills/iconography/SKILL.md +3 -3
- package/dist/agent-src/skills/judge-synthesis/SKILL.md +1 -1
- package/dist/agent-src/skills/laravel-api-endpoint/SKILL.md +2 -2
- package/dist/agent-src/skills/launch-readiness/SKILL.md +3 -3
- package/dist/agent-src/skills/learning-to-rule-or-skill/SKILL.md +6 -6
- package/dist/agent-src/skills/livewire/SKILL.md +1 -1
- package/dist/agent-src/skills/market-entry-analysis/SKILL.md +1 -1
- package/dist/agent-src/skills/mcp-builder/SKILL.md +1 -1
- package/dist/agent-src/skills/memory-consolidation/SKILL.md +3 -3
- package/dist/agent-src/skills/messaging-architecture/SKILL.md +2 -2
- package/dist/agent-src/skills/monorepo-workspace/SKILL.md +1 -1
- package/dist/agent-src/skills/onboarding-design/SKILL.md +2 -2
- package/dist/agent-src/skills/onboarding-program/SKILL.md +1 -1
- package/dist/agent-src/skills/one-on-one-cadence/SKILL.md +1 -1
- package/dist/agent-src/skills/org-design/SKILL.md +1 -1
- package/dist/agent-src/skills/overbuild-review-lens/SKILL.md +3 -3
- package/dist/agent-src/skills/override-management/SKILL.md +1 -1
- package/dist/agent-src/skills/perf-feedback-craft/SKILL.md +1 -1
- package/dist/agent-src/skills/persona-writing/SKILL.md +1 -1
- package/dist/agent-src/skills/php-coder/SKILL.md +1 -1
- package/dist/agent-src/skills/pipeline-strategy/SKILL.md +2 -2
- package/dist/agent-src/skills/playwright-testing/SKILL.md +3 -3
- package/dist/agent-src/skills/po-discovery/SKILL.md +1 -1
- package/dist/agent-src/skills/positioning-strategy/SKILL.md +2 -2
- package/dist/agent-src/skills/privacy-review/SKILL.md +1 -1
- package/dist/agent-src/skills/prompt-optimizer/SKILL.md +3 -3
- package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +1 -1
- package/dist/agent-src/skills/reasoning-orchestrator/SKILL.md +2 -2
- package/dist/agent-src/skills/receiving-code-review/SKILL.md +1 -1
- package/dist/agent-src/skills/refine-ticket/SKILL.md +2 -2
- package/dist/agent-src/skills/release-comms/SKILL.md +2 -2
- package/dist/agent-src/skills/retention-loops/SKILL.md +2 -2
- package/dist/agent-src/skills/review-routing/SKILL.md +2 -2
- package/dist/agent-src/skills/roadmap-management/SKILL.md +1 -1
- package/dist/agent-src/skills/roadmap-management/references/archival.md +1 -1
- package/dist/agent-src/skills/roadmap-writing/SKILL.md +5 -5
- package/dist/agent-src/skills/rule-writing/SKILL.md +6 -6
- package/dist/agent-src/skills/runway-cognition/SKILL.md +2 -2
- package/dist/agent-src/skills/scenario-modeling/SKILL.md +2 -2
- package/dist/agent-src/skills/skill-writing/SKILL.md +2 -2
- package/dist/agent-src/skills/skill-writing/references/procedure.md +1 -1
- package/dist/agent-src/skills/skill-writing/references/section-patterns.md +3 -3
- package/dist/agent-src/skills/spreadsheet-authoring/SKILL.md +1 -1
- package/dist/agent-src/skills/stakeholder-tradeoff/SKILL.md +3 -3
- package/dist/agent-src/skills/subagent-orchestration/SKILL.md +1 -1
- package/dist/agent-src/skills/supply-chain-intake/SKILL.md +1 -1
- package/dist/agent-src/skills/systematic-debugging/SKILL.md +2 -2
- package/dist/agent-src/skills/tailwind-engineer/SKILL.md +11 -5
- package/dist/agent-src/skills/throughput-vs-morale-tradeoff/SKILL.md +1 -1
- package/dist/agent-src/skills/token-optimizer/SKILL.md +1 -1
- package/dist/agent-src/skills/typography-system/SKILL.md +2 -2
- package/dist/agent-src/skills/ui-component-architect/SKILL.md +28 -8
- package/dist/agent-src/skills/unit-economics-modeling/SKILL.md +2 -2
- package/dist/agent-src/skills/upstream-contribute/SKILL.md +1 -1
- package/dist/agent-src/skills/validate-feature-fit/SKILL.md +2 -2
- package/dist/agent-src/skills/verify-repair-loop/SKILL.md +2 -2
- package/dist/agent-src/skills/vision-articulation/SKILL.md +1 -1
- package/dist/agent-src/skills/voc-extract/SKILL.md +2 -2
- package/dist/agent-src/skills/voice-and-tone-design/SKILL.md +2 -2
- package/dist/agent-src/skills/wireframe/SKILL.md +1 -1
- package/dist/agent-src/skills/workspace-link/SKILL.md +1 -1
- package/dist/agent-src/templates/agent-settings.md +6 -6
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/dist/agent-src/templates/contexts/knowledge-pages.md +2 -3
- package/dist/agent-src/templates/copilot-instructions.md +1 -1
- package/dist/agent-src/templates/roadmaps.md +1 -1
- package/dist/agent-src/templates/scripts/README.md +2 -2
- package/dist/agent-src/user-types/_template/user-type.md +1 -1
- package/dist/cli-delegate/check_update_banner.js +12 -1
- package/dist/cli-delegate/{chunk-NLP54U3J.js → chunk-2XY7ILBT.js} +13 -1
- package/dist/cli-delegate/{chunk-IAI3XL43.js → chunk-3FKR64R5.js} +22 -6
- package/dist/cli-delegate/{chunk-J3RFNKG4.js → chunk-55ACLDUE.js} +2 -2
- package/dist/cli-delegate/{chunk-PKOBQADP.js → chunk-57PN4GYJ.js} +1 -1
- package/dist/cli-delegate/{chunk-KCNTUSPI.js → chunk-AK6HODNQ.js} +4 -4
- package/dist/cli-delegate/{chunk-2FTMENJL.js → chunk-GYC3VRYN.js} +1 -1
- package/dist/cli-delegate/{chunk-LWTYTX6F.js → chunk-H32DGUJH.js} +15 -84
- package/dist/cli-delegate/{chunk-6RJA2F5A.js → chunk-IVBPRCQO.js} +1 -1
- package/dist/cli-delegate/chunk-NUHLI2RX.js +80 -0
- package/dist/cli-delegate/{chunk-TYSY33MD.js → chunk-QJWAUMJW.js} +12 -2
- package/dist/cli-delegate/{chunk-2KKXJW25.js → chunk-S3VFXMTM.js} +1 -1
- package/dist/cli-delegate/{chunk-I6RHFQEG.js → chunk-YUM5KURG.js} +17 -1
- package/dist/cli-delegate/cmd_analyze_session.js +1 -1
- package/dist/cli-delegate/cmd_brand_status.js +1 -1
- package/dist/cli-delegate/cmd_conformance.js +834 -275
- package/dist/cli-delegate/cmd_doctor.js +3 -3
- package/dist/cli-delegate/cmd_explain.js +5 -3
- package/dist/cli-delegate/cmd_export.js +4 -4
- package/dist/cli-delegate/cmd_handoff.js +6 -6
- package/dist/cli-delegate/cmd_mcp_available.js +1 -1
- package/dist/cli-delegate/cmd_memory_get.js +1 -1
- package/dist/cli-delegate/cmd_migrate.js +2 -2
- package/dist/cli-delegate/cmd_packs_active.js +3 -2
- package/dist/cli-delegate/cmd_prune.js +4 -4
- package/dist/cli-delegate/cmd_route_audit.js +3 -3
- package/dist/cli-delegate/cmd_route_explain.js +1 -1
- package/dist/cli-delegate/cmd_session_recycle.js +3 -3
- package/dist/cli-delegate/cmd_settings_get.js +15 -9
- package/dist/cli-delegate/cmd_settings_migrate.js +4 -4
- package/dist/cli-delegate/cmd_settings_set.js +54 -11
- package/dist/cli-delegate/cmd_sync.js +4 -4
- package/dist/cli-delegate/cmd_uninstall.js +4 -4
- package/dist/cli-delegate/cmd_update.js +1 -1
- package/dist/cli-delegate/cmd_upgrade.js +1 -1
- package/dist/cli-delegate/cmd_validate.js +4 -4
- package/dist/cli-delegate/cmd_versions.js +1 -1
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +25 -78
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +3 -3
- package/dist/discovery/dormancy-report.md +1 -1
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +5 -7
- package/dist/discovery/trust-report.md +2 -2
- package/dist/discovery/workspaces.json +4 -6
- package/dist/hooks/dispatch.js +9684 -9304
- package/dist/install/install.mjs +36 -8
- package/dist/mcp/registry-manifest.json +3 -3
- package/dist/mcp/server.json +2 -2
- package/dist/mcp/server.mjs +2147 -1470
- package/dist/router.json +1 -1
- package/dist/scripts/_lib/agent_settings.js +73 -0
- package/dist/scripts/_lib/agent_src.js +20 -0
- package/dist/scripts/_lib/guidelines_lane.js +158 -0
- package/dist/scripts/_lib/installed_lock.js +1 -1
- package/dist/scripts/condense.js +2 -5
- package/dist/server/io/yamlIO.js +175 -17
- package/dist/server/schemas/settings.js +18 -4
- package/dist/shared/settingsSurface.js +6 -1
- package/docs/contracts/settings-classes.md +18 -9
- package/docs/guidelines/abstraction-thresholds.md +35 -0
- package/docs/guidelines/agent-infra/active-remediation-mechanics.md +3 -3
- package/docs/guidelines/agent-infra/false-green.md +2 -2
- package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +1 -1
- package/docs/guidelines/agent-infra/skill-quality-checklist.md +1 -1
- package/docs/guidelines/design-fidelity-mechanics.md +4 -0
- package/docs/guidelines/design-fidelity-routing.md +78 -0
- package/docs/guidelines/design-reconciliation.md +172 -0
- package/docs/guidelines/gtm-handoff.md +2 -2
- package/docs/guidelines/wing4-handoff.md +2 -2
- package/package.json +7 -3
- package/src/config/agent-settings.template.yml +55 -8
- package/src/config/ci-local-parity.yml +34 -0
- package/src/config/continuity-surface.json +11 -32
- package/src/config/gate-coverage.yml +31 -8
- package/src/config/gate-reachability-exemptions.json +1 -0
- package/src/config/gate-violation-baselines.json +3 -3
- package/src/config/hook-token-budget.json +1 -1
- package/src/config/host-injection-effect.json +2 -2
- package/src/config/pack-size-budget.json +55 -4
- package/src/config/platform-anchor.json +47 -0
- package/src/config/preamble-payload-budget.json +12 -8
- package/src/config/preamble-payload-exceptions.json +28 -0
- package/src/config/publish-surface.json +4 -2
- package/src/config/ratification-policy.json +7 -0
- package/src/config/rule-stub-ceilings.json +16 -9
- package/src/scripts/_cli/cmd_settings_get.ts +22 -7
- package/src/scripts/_dispatch.bash +3 -1
- package/src/scripts/_lib/agent_settings.ts +85 -0
- package/src/scripts/_lib/agent_src.ts +21 -0
- package/src/scripts/_lib/artifact_maturity.ts +242 -0
- package/src/scripts/_lib/base_ref_payload.ts +315 -0
- package/src/scripts/_lib/conformance_report.ts +403 -0
- package/src/scripts/_lib/continuity_writer.ts +72 -13
- package/src/scripts/_lib/design_system_import.ts +20 -0
- package/src/scripts/_lib/design_tolerance.ts +281 -0
- package/src/scripts/_lib/dropped_decision.ts +142 -0
- package/src/scripts/_lib/guidelines_lane.ts +164 -0
- package/src/scripts/_lib/installed_lock.ts +1 -1
- package/src/scripts/_lib/measured_payload_ceiling.ts +424 -0
- package/src/scripts/_lib/obligation_frequency.ts +2 -3
- package/src/scripts/_lib/payload_catalogue_completeness.ts +211 -0
- package/src/scripts/_lib/platform_anchor.ts +1053 -0
- package/src/scripts/_lib/ratification_artifact.ts +278 -0
- package/src/scripts/_lib/release_findings_ingest.ts +324 -0
- package/src/scripts/_lib/release_tag_dispatch.ts +63 -0
- package/src/scripts/_lib/review_baseline.ts +254 -0
- package/src/scripts/_lib/review_skipped_record.ts +61 -1
- package/src/scripts/_lib/security_lint.ts +23 -2
- package/src/scripts/_lib/self_repair.ts +21 -0
- package/src/scripts/_lib/session_index_trust.ts +42 -1
- package/src/scripts/_lib/standing_bound_ratchet.ts +267 -88
- package/src/scripts/_lib/tolerance_shadow.ts +177 -0
- package/src/scripts/_lib/turn_end_refusals.ts +51 -4
- package/src/scripts/ai_council/redact_low_impact_entry.ts +8 -0
- package/src/scripts/autonomy_friction_traffic.ts +379 -0
- package/src/scripts/check_beta_review_markers.ts +35 -4
- package/src/scripts/check_finding_dispositions.ts +167 -16
- package/src/scripts/check_held_object_arrivals.ts +381 -0
- package/src/scripts/check_kernel_edit_ratified.ts +462 -0
- package/src/scripts/check_loss_class_declared.ts +793 -46
- package/src/scripts/check_platform_anchor.ts +390 -0
- package/src/scripts/check_preamble_payload_budget.ts +672 -107
- package/src/scripts/check_projected_rule_routes.ts +395 -0
- package/src/scripts/check_release_published.ts +1 -1
- package/src/scripts/check_reply_consistency.ts +86 -17
- package/src/scripts/code_graph/cli.ts +6 -0
- package/src/scripts/condense.ts +2 -6
- package/src/scripts/generate_host_cost_table.ts +354 -0
- package/src/scripts/hook_manifest.json +1 -1
- package/src/scripts/hook_manifest.yaml +74 -30
- package/src/scripts/hooks/block_kernel_rule_writes.ts +12 -2
- package/src/scripts/hooks/category_a.ts +1 -1
- package/src/scripts/hooks/chain_nudge_hook.ts +311 -25
- package/src/scripts/hooks/concern_registry.ts +2 -0
- package/src/scripts/hooks/end_review_nudge_hook.ts +101 -21
- package/src/scripts/hooks/review_baseline_hook.ts +130 -0
- package/src/scripts/hooks/session_eol_hook.ts +68 -154
- package/src/scripts/hooks/source_first_gate_hook.ts +12 -0
- package/src/scripts/hooks/turn_end_gate_hook.ts +232 -14
- package/src/scripts/hooks/ui_route_nudge_hook.ts +52 -15
- package/src/scripts/hooks_doctor.ts +4 -1
- package/src/scripts/hot_context_hook.ts +41 -401
- package/src/scripts/install.ts +1 -1
- package/src/scripts/interruption_report.ts +8 -2
- package/src/scripts/janitor.ts +8 -1
- package/src/scripts/lint_evidence_artifacts.ts +1 -0
- package/src/scripts/lint_knowledge_scale.ts +0 -26
- package/src/scripts/measure_turn_end_gate.ts +302 -5
- package/src/scripts/memory_lookup.ts +9 -9
- package/src/scripts/release.ts +52 -64
- package/src/scripts/release_drill.ts +193 -14
- package/src/scripts/release_env.ts +1 -1
- package/src/scripts/release_publication.ts +1 -1
- package/src/scripts/report_held_object_arrivals.ts +456 -0
- package/src/scripts/report_standing_payload_by_host.ts +7 -7
- package/src/scripts/session_memory_index.ts +5 -0
- package/src/scripts/sync_agent_settings.ts +394 -12
- package/src/server/io/yamlIO.ts +175 -17
- package/src/server/schemas/settings.ts +25 -5
- package/src/shared/settingsSurface.ts +13 -2
- package/src/templates/compact-instructions.md +8 -3
- package/dist/agent-src/commands/chat-history/import.md +0 -170
- package/dist/agent-src/commands/chat-history.md +0 -63
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
# asking-and-brevity-examples
|
|
2
|
+
|
|
3
|
+
Companion examples for three always-rules:
|
|
4
|
+
[`ask-when-uncertain`](../../rules/ask-when-uncertain.md),
|
|
5
|
+
[`no-cheap-questions`](../../rules/no-cheap-questions.md),
|
|
6
|
+
[`direct-answers`](../../rules/direct-answers.md).
|
|
7
|
+
|
|
8
|
+
The rules carry the Iron Laws and the obligation surface. This file
|
|
9
|
+
carries the illustrative material (example questions, rationale
|
|
10
|
+
tables, failure-mode catalogs) that does not need to live in the
|
|
11
|
+
always-loaded rule body — extracted to fit the always-rule budget.
|
|
12
|
+
|
|
13
|
+
## Vague-request triggers — example questions
|
|
14
|
+
|
|
15
|
+
Companion to `ask-when-uncertain` § Vague-request triggers. This
|
|
16
|
+
section is the canonical home for the nine trigger patterns, the
|
|
17
|
+
missing-info each one hides, and the example clarifying question —
|
|
18
|
+
the rule cites it instead of restating the catalog.
|
|
19
|
+
|
|
20
|
+
| Pattern | Missing info | Example clarifying question |
|
|
21
|
+
|---|---|---|
|
|
22
|
+
| "improve / optimize this" | metric — speed, readability, memory? | "Optimize for what — execution speed or readability?" |
|
|
23
|
+
| "add caching" | store, scope, invalidation | "Which cache driver, and what invalidates it?" |
|
|
24
|
+
| "make it better / cleaner" | by what standard? | "What specifically feels wrong in the current code?" |
|
|
25
|
+
| "clean up this file" | dead code, format, refactor? | "Remove unused code, reformat, or restructure?" |
|
|
26
|
+
| "fix this" (no symptom) | what output is wrong? | "What output/behavior is wrong right now?" |
|
|
27
|
+
| "refactor X" | target pattern, boundaries | "Refactor toward what — smaller methods, extract class, or something else?" |
|
|
28
|
+
| "use best practices" | whose, for what? | "Best practices for what specifically — testing, naming, structure?" |
|
|
29
|
+
| "handle errors properly" | which errors — log/retry/propagate? | "For which failure modes, and what should happen on error?" |
|
|
30
|
+
| "add a UI / component / tile / page" in mixed-framework repo | which stack? | "This repo uses {A} and {B} for UI — which one for this?" |
|
|
31
|
+
|
|
32
|
+
## One-question-per-turn — why serial always wins
|
|
33
|
+
|
|
34
|
+
Companion to `ask-when-uncertain` § How to ask. The rule states the
|
|
35
|
+
Iron Law and the self-check; this file expands the rationale.
|
|
36
|
+
|
|
37
|
+
| Situation | Why serial always wins |
|
|
38
|
+
|---|---|
|
|
39
|
+
| Design / architecture decisions | Answer to Q1 reframes Q2 |
|
|
40
|
+
| Naming / command-syntax / API shape | Later choices depend on it |
|
|
41
|
+
| Scope / PR boundaries | Changes what the other questions even mean |
|
|
42
|
+
| Tool / library selection | Downstream choices branch from it |
|
|
43
|
+
| "Which approach: A vs B vs C" | Each answer opens a different follow-up |
|
|
44
|
+
| Even "independent" yes/no pairs | User still has to parse two contexts |
|
|
45
|
+
| Any question the user has to **think** about, not just pick | Thinking load compounds when stacked |
|
|
46
|
+
|
|
47
|
+
The shorthand: if the user has to *think* about an answer, that
|
|
48
|
+
answer almost always reframes whatever question would have come
|
|
49
|
+
next. Serial preserves the framing; parallel destroys it.
|
|
50
|
+
|
|
51
|
+
## Cheap-question class catalog — extended examples
|
|
52
|
+
|
|
53
|
+
Companion to `no-cheap-questions` § What counts as cheap. This
|
|
54
|
+
section is the canonical home for the nine cheap-question classes
|
|
55
|
+
and their per-class patterns — the rule cites it instead of
|
|
56
|
+
restating the catalog.
|
|
57
|
+
|
|
58
|
+
| Class | Pattern · why cheap | Concrete example |
|
|
59
|
+
|---|---|---|
|
|
60
|
+
| **Sequencing** | "Step 2 or 3 next?" when roadmap orders them — answer is in the roadmap | Roadmap says "2.1 then 2.2" → don't ask "should I do 2.2 next?" |
|
|
61
|
+
| **Format-only** | "Table or paragraph?" — no semantic trade-off | User asked for a summary; format is a non-decision |
|
|
62
|
+
| **Commit asks** | "Commit now?" — `commit-policy`: never ask | The commit-policy Iron Law forbids the question |
|
|
63
|
+
| **CI / test asks** | "Run tests now?" — `verify-before-complete` decides | Verification is mandatory before completion claims; not a choice |
|
|
64
|
+
| **Fenced-step re-asks** | "Start Phase 1?" after "plan only" — `scope-control § fenced step` | The fence stands until the user explicitly lifts it |
|
|
65
|
+
| **Iron-Law option** | Option breaches `commit-policy`, `scope-control § git-ops`, or `non-destructive-by-default` — does not exist | Don't surface "force-push to main?" as Option 2 |
|
|
66
|
+
| **Context-derived** | Answer follows from prior turn / standing instruction / roadmap — act, state assumption inline | "Use the same branch?" after user said "stay on this branch" |
|
|
67
|
+
| **Dominant option** | One choice obviously correct; alternatives carry no upside — pick it | "Run the linter or skip it?" when the linter is part of CI |
|
|
68
|
+
| **Re-ask after decline** | Same path after user said no — `scope-control § decline = silence` | User declined a separate branch → don't propose it again on the same task |
|
|
69
|
+
|
|
70
|
+
## Direct-answers — severity-tiered claim examples
|
|
71
|
+
|
|
72
|
+
Companion to `direct-answers` § Iron Law 2 (no invented facts). This
|
|
73
|
+
section is the canonical home for the severity tiers, per-tier
|
|
74
|
+
verification actions, and the override carve-out — the rule cites it
|
|
75
|
+
instead of restating the table.
|
|
76
|
+
|
|
77
|
+
| Severity | Examples | Verification action |
|
|
78
|
+
|---|---|---|
|
|
79
|
+
| **High — load-bearing** | "Method `X::y()` exists at `path/to/file.php:142`", "version 12.4.1 added the API", "this test passes" | MUST verify with `view`, `grep`, `codebase-retrieval`, or fresh command output **before** claiming. Too expensive → ask. |
|
|
80
|
+
| **Medium — project-shape** | "This project uses Pest for testing", "controllers live under `app/Http/Controllers`" | Verify if one tool call reaches it; otherwise hedge: *"I'd guess X — not checked"*. |
|
|
81
|
+
| **Low — well-known idioms** | "PHP `array_map` returns a new array", "git tags are immutable", "JS arrays are zero-indexed" | Inference acceptable. Mark as inference if not 100% sure. |
|
|
82
|
+
|
|
83
|
+
**Override:** "just guess" / "rough estimate" / "skip verify" in the
|
|
84
|
+
user's turn drops every claim to **Low** for that turn only. Reverts
|
|
85
|
+
on the next turn unless the user repeats the override.
|
|
86
|
+
|
|
87
|
+
Hedge-language patterns:
|
|
88
|
+
|
|
89
|
+
- ✅ "haven't verified X — likely from {known-similar-codebase}"
|
|
90
|
+
- ✅ "guess, not checked — `path/to/file.php:142` is my best read"
|
|
91
|
+
- ❌ "probably" alone — name what's unverified
|
|
92
|
+
- ❌ "vermutlich" without hedge target <!-- md-language-check: ignore -->
|
|
93
|
+
|
|
94
|
+
### Volatile-fact freshness — which claims need a live source
|
|
95
|
+
|
|
96
|
+
Generalizes `direct-answers` Iron Law 2's git/PR live-state clause to any
|
|
97
|
+
research or knowledge claim, not just repo state.
|
|
98
|
+
|
|
99
|
+
| Class | Examples | Rule |
|
|
100
|
+
|---|---|---|
|
|
101
|
+
| **Fresh-lookup** | current role/status of a person or org, prices/versions/quotas, laws & regulatory policy, an unrecognized entity (tool, package, product), a binary event (release, deprecation, incident) | Never answer from model memory — search or cite a live source, every time. These change silently and staleness is invisible until wrong. |
|
|
102
|
+
| **Stable** | math/CS fundamentals, settled historical facts, language/framework basics pinned by the project's own lockfiles | Model knowledge is acceptable; no live lookup required. |
|
|
103
|
+
|
|
104
|
+
The line is whether the fact **could have changed since training** in a way
|
|
105
|
+
that matters for the claim. When in doubt, treat it as fresh-lookup — the
|
|
106
|
+
cost of one extra search is far lower than a stale claim stated with
|
|
107
|
+
confidence.
|
|
108
|
+
|
|
109
|
+
### No duration estimates (Iron Law 2 family)
|
|
110
|
+
|
|
111
|
+
An LLM has no wall-clock and no latency training signal, so a duration estimate
|
|
112
|
+
is a fabricated fact wearing a number:
|
|
113
|
+
|
|
114
|
+
- Never predict how long **the agent's own work** will take ("this refactor is
|
|
115
|
+
~2 hours", "I'll have it in a few minutes").
|
|
116
|
+
- Never predict how long **the user's work** will take ("this is a 2–3 week
|
|
117
|
+
project", "should take you an afternoon").
|
|
118
|
+
- Instead: break the work into **actionable steps** and let the user judge
|
|
119
|
+
timing against their own context — they have the clock, the agent does not.
|
|
120
|
+
|
|
121
|
+
A step list is honest ("A → B → C, C depends on B"); a schedule is invention.
|
|
122
|
+
|
|
123
|
+
**Carve-out — world-knowledge ranges.** An industry-typical duration sourced
|
|
124
|
+
from public benchmarks in strategy-advisory output ("integrations of this
|
|
125
|
+
class typically run 4–8 weeks") is a statement about the world, not a
|
|
126
|
+
prediction of the agent's or the user's own latency — allowed, but it MUST
|
|
127
|
+
carry an "industry-typical, not a prediction" qualifier. Unqualified, it
|
|
128
|
+
reads as the banned schedule.
|
|
129
|
+
|
|
130
|
+
### Never cite the rule as the reason
|
|
131
|
+
|
|
132
|
+
When declining or constraining an action, give the **actual, substantive
|
|
133
|
+
reason** — never "my rules / guidelines / instructions require X":
|
|
134
|
+
|
|
135
|
+
- ❌ "I can't do that, my guidelines don't allow it." / "A rule requires me to ask first."
|
|
136
|
+
- ✅ "Sending this would post publicly and can't be undone, so confirm the recipient first." / "This edits a production branch — I need your go-ahead."
|
|
137
|
+
|
|
138
|
+
Appealing to a hidden rule (a) replaces real reasoning the user can evaluate,
|
|
139
|
+
and (b) widens the prompt-extraction surface (it advertises that hidden
|
|
140
|
+
instructions exist and invites probing them). State the real-world consequence,
|
|
141
|
+
not the rule's existence.
|
|
142
|
+
|
|
143
|
+
## Direct-answers — failure modes the user will call out
|
|
144
|
+
|
|
145
|
+
Companion to `direct-answers` § Failure modes. The rule lists the
|
|
146
|
+
modes; this file adds the trigger phrases and the in-language
|
|
147
|
+
correction pattern.
|
|
148
|
+
|
|
149
|
+
| Failure | User's typical callout | Correct response |
|
|
150
|
+
|---|---|---|
|
|
151
|
+
| Iron Law 1 violation | "skip the flattery", "ohne smalltalk" | drop the opener; deliver substance |
|
|
152
|
+
| Iron Law 2 violation | "have you actually checked?", "wo steht das?" | re-verify with a tool call; correct or retract the claim |
|
|
153
|
+
| Iron Law 3 violation | "kürzer", "less prose", "tldr" | trim to one sentence + the answer | <!-- md-language-check: ignore -->
|
|
154
|
+
| Emoji blacklist hit | "ohne emojis", "no decoration" | re-render plain |
|
|
155
|
+
|
|
156
|
+
Acknowledge once, in the user's language, switch behavior, no
|
|
157
|
+
excuses (mirrors `language-and-tone` § slip handling).
|
|
158
|
+
|
|
159
|
+
### Bullet floor
|
|
160
|
+
|
|
161
|
+
Companion to `direct-answers` § Iron Law 3. Multi-step content earns
|
|
162
|
+
bullets; each bullet is a complete 1–2-sentence statement, never a
|
|
163
|
+
fragment masquerading as a list item ("Faster." / "Better UX." with no
|
|
164
|
+
subject or verb). A decline or refusal is never rendered as a bulleted
|
|
165
|
+
list of reasons — declines are short prose, one or two sentences, because
|
|
166
|
+
a bulleted refusal reads as a checklist to argue against rather than a
|
|
167
|
+
direct answer.
|
|
168
|
+
|
|
169
|
+
## No Cheap Questions — Iron Law 3 detail (paternalistic state options)
|
|
170
|
+
|
|
171
|
+
Companion to `no-cheap-questions` § Iron Law 3. The rule states the
|
|
172
|
+
prohibition; this file lists the patterns and the carve-outs.
|
|
173
|
+
|
|
174
|
+
**Forbidden patterns** (non-exhaustive):
|
|
175
|
+
|
|
176
|
+
- "Stop hier — du hast genug für heute" <!-- md-language-check: ignore -->
|
|
177
|
+
- "Take a break and come back fresh"
|
|
178
|
+
- "Weitermachen wenn frisch" <!-- md-language-check: ignore -->
|
|
179
|
+
- "Du wirkst genervt, sollen wir pausieren?" <!-- md-language-check: ignore -->
|
|
180
|
+
- "Sleep on it"
|
|
181
|
+
- "That's a good stopping point" as a numbered option
|
|
182
|
+
- Any option whose recommendation rests on inferred fatigue,
|
|
183
|
+
frustration, or end-of-day mood.
|
|
184
|
+
|
|
185
|
+
**Carve-outs** — allowed because they cite **observable, in-message**
|
|
186
|
+
evidence, not inferred state:
|
|
187
|
+
|
|
188
|
+
- User said "ich bin müde / done for today / let's stop" **this turn** <!-- md-language-check: ignore -->
|
|
189
|
+
→ ack and stop (instruction, not option).
|
|
190
|
+
- Hard Floor confirmation per `non-destructive-by-default` → "confirm
|
|
191
|
+
or abort" is the option, not "rest".
|
|
192
|
+
- Context-window / freshness threshold tripped per `context-hygiene` →
|
|
193
|
+
cite the threshold ("fresh chat at 75%"), do not infer mood.
|
|
194
|
+
|
|
195
|
+
**The rule of thumb**: every numbered option must be a technical /
|
|
196
|
+
scope / sequencing choice with a real trade-off, not a mood-management
|
|
197
|
+
nudge. If the only remaining differentiator is "you might be tired" →
|
|
198
|
+
drop the option, recommend a concrete next step instead.
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
# Break-Glass Usage
|
|
2
|
+
|
|
3
|
+
Guideline for operating the agent under a controlled emergency state —
|
|
4
|
+
when a production incident requires faster stabilization than normal
|
|
5
|
+
verification allows.
|
|
6
|
+
|
|
7
|
+
Break-glass is **a narrowing, not a bypass**. The rules still apply; the
|
|
8
|
+
gate is just smaller. Never decide to "break glass" unilaterally.
|
|
9
|
+
|
|
10
|
+
## When break-glass is justified
|
|
11
|
+
|
|
12
|
+
All of the following must hold:
|
|
13
|
+
|
|
14
|
+
- **Active customer-impacting incident** — data loss, outage, security
|
|
15
|
+
exposure, billing regression. Not "we have a deadline".
|
|
16
|
+
- **Explicit user invocation** — the user says "break-glass" or
|
|
17
|
+
"hotfix, skip the full suite". Ambiguous wording is not enough; ask.
|
|
18
|
+
- **No viable rollback path** that would be faster than the forward fix.
|
|
19
|
+
|
|
20
|
+
Not a break-glass situation:
|
|
21
|
+
|
|
22
|
+
- Friday afternoon and you want to ship a feature.
|
|
23
|
+
- CI is slow and you want to skip tests.
|
|
24
|
+
- You can't reproduce a flaky test locally.
|
|
25
|
+
- A reviewer is asleep and you want to self-approve.
|
|
26
|
+
|
|
27
|
+
## How to invoke
|
|
28
|
+
|
|
29
|
+
The user sets one of:
|
|
30
|
+
|
|
31
|
+
1. **Conversation flag** — says "break-glass: true" or "this is a hotfix".
|
|
32
|
+
2. **PR label** — `break-glass` on the PR (optional; the agent still
|
|
33
|
+
requires explicit invocation in the current turn).
|
|
34
|
+
3. **Commit trailer** — `Break-Glass: <incident-id>` in the commit
|
|
35
|
+
message of the hotfix.
|
|
36
|
+
|
|
37
|
+
The agent confirms: "Entering break-glass — narrowing verification to
|
|
38
|
+
targeted test + smoke check. Follow-up PR required within 24h. Confirm?"
|
|
39
|
+
If the user agrees, proceed. If not, stay in the normal gate.
|
|
40
|
+
|
|
41
|
+
## What narrows
|
|
42
|
+
|
|
43
|
+
| Layer | Normal gate | Break-glass |
|
|
44
|
+
|---|---|---|
|
|
45
|
+
| Tests | Targeted + full suite | Targeted only — covering the regression |
|
|
46
|
+
| Quality tools | PHPStan + Rector + ECS | Deferred to follow-up PR |
|
|
47
|
+
| Migrations review | Full dry-run + rollback check | Dry-run only, rollback note mandatory |
|
|
48
|
+
| Code review | ≥ 1 reviewer from required roles | 1 reviewer, can be post-merge |
|
|
49
|
+
| Changelog | Required | Deferred to follow-up PR |
|
|
50
|
+
|
|
51
|
+
Zero tests is **never** acceptable. If the incident fix genuinely cannot
|
|
52
|
+
be tested in the available time, document that explicitly and attach a
|
|
53
|
+
reproducer to the follow-up ticket.
|
|
54
|
+
|
|
55
|
+
## What does NOT narrow
|
|
56
|
+
|
|
57
|
+
These rules stay fully in force, break-glass or not:
|
|
58
|
+
|
|
59
|
+
- [`minimal-safe-diff`](../../rules/minimal-safe-diff.md) — the hotfix is
|
|
60
|
+
still the **smallest** change that stops the bleeding. No drive-by
|
|
61
|
+
cleanups.
|
|
62
|
+
- [`security-sensitive-stop`](../../rules/security-sensitive-stop.md) — a
|
|
63
|
+
security-relevant change still needs the threat-model pass.
|
|
64
|
+
- [`scope-control`](../../rules/scope-control.md) — never mix the
|
|
65
|
+
hotfix with unrelated refactors from another branch.
|
|
66
|
+
- [`ask-when-uncertain`](../../rules/ask-when-uncertain.md) — more
|
|
67
|
+
asking, not less, when the blast radius is live.
|
|
68
|
+
|
|
69
|
+
## Required artifacts
|
|
70
|
+
|
|
71
|
+
The hotfix PR must include, in the description:
|
|
72
|
+
|
|
73
|
+
1. **Incident link** — ticket, Sentry issue, or Statuspage entry.
|
|
74
|
+
2. **Skipped validations** — bullet list of what was deferred (e.g.
|
|
75
|
+
"full PHPUnit suite", "PHPStan", "Rector").
|
|
76
|
+
3. **Evidence attached in-PR** — targeted test output, smoke-check log or
|
|
77
|
+
curl response, migration dry-run if applicable.
|
|
78
|
+
4. **Follow-up commitment** — link to the follow-up ticket or PR that
|
|
79
|
+
will run the full gate. Due within 24h.
|
|
80
|
+
|
|
81
|
+
## After the incident
|
|
82
|
+
|
|
83
|
+
Within 24 hours:
|
|
84
|
+
|
|
85
|
+
1. Open the **follow-up PR** — runs the full verification gate against
|
|
86
|
+
the same branch or a rebase onto main.
|
|
87
|
+
2. Write a short **incident note** (2–5 lines) — what failed, what the
|
|
88
|
+
hotfix did, what was deferred. Store in the project's postmortem
|
|
89
|
+
location.
|
|
90
|
+
3. If the incident exposed a recurring failure mode, add an entry to
|
|
91
|
+
`historical-bug-patterns.yml` (see
|
|
92
|
+
[`review-routing-data-format`](review-routing-data-format.md)).
|
|
93
|
+
|
|
94
|
+
## Anti-patterns — reject them
|
|
95
|
+
|
|
96
|
+
- "Break-glass" used as a label for every urgent task — the word stops
|
|
97
|
+
meaning anything.
|
|
98
|
+
- Shipping the hotfix **and** a refactor in the same commit "since the
|
|
99
|
+
file was open".
|
|
100
|
+
- Skipping the follow-up PR because "the hotfix was fine". The gate
|
|
101
|
+
runs once, not zero times.
|
|
102
|
+
- Logging the incident as "false alarm" when the hotfix actually
|
|
103
|
+
changed behavior. If behavior changed, write the note.
|
|
104
|
+
|
|
105
|
+
## See also
|
|
106
|
+
|
|
107
|
+
- [`minimal-safe-diff`](../../rules/minimal-safe-diff.md) — break-glass
|
|
108
|
+
exception section.
|
|
109
|
+
- [`verify-before-complete`](../../rules/verify-before-complete.md) —
|
|
110
|
+
break-glass reduction section.
|
|
111
|
+
- [`security-sensitive-stop`](../../rules/security-sensitive-stop.md).
|
|
112
|
+
- [`review-routing-data-format`](review-routing-data-format.md) —
|
|
113
|
+
where to register newly-discovered failure modes.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Decidable Carve-Out Predicates
|
|
2
|
+
|
|
3
|
+
Companion to [`frugality-charter`](../../contexts/contracts/frugality-charter.md). Each carve-out below carries a one-sentence test. If the test cannot be answered yes/no from the artifact alone, the carve-out does not fire and default-terse rules apply.
|
|
4
|
+
|
|
5
|
+
## Predicates
|
|
6
|
+
|
|
7
|
+
- **Iron-Law literal** — the prose is an ALL-CAPS fenced block inside a rule whose title appears in [`docs/contracts/kernel-membership.md`](../../contracts/kernel-membership.md).
|
|
8
|
+
|
|
9
|
+
- **Numbered-options with genuine trade-off** — the options differ in consequence (a chosen path produces a measurably different artifact or state), not in sequencing or output format. Per [`no-cheap-questions § What counts as cheap`](../../rules/no-cheap-questions.md#what-counts-as-cheap).
|
|
10
|
+
|
|
11
|
+
- **Security-sensitive prompt** — the prompt requires credential input OR modifies auth / tenant / secret state, matching a trigger in [`security-sensitive-stop`](../../rules/security-sensitive-stop.md).
|
|
12
|
+
|
|
13
|
+
- **Structured CLI contract** — the script's stdout is consumed by another script (a downstream parser exists under `scripts/` or `.augment/scripts/`), so the format is part of an interface contract, not narration.
|
|
14
|
+
|
|
15
|
+
## How to use
|
|
16
|
+
|
|
17
|
+
Writer skills (`skill-writing`, `rule-writing`, `command-writing`, `guideline-writing`, `context-authoring`, `agent-docs-writing`, `conventional-commits-writing`, `readme-writing`, `readme-writing-package`, `adr-create`, `persona-writing`, `roadmap-writing`) cite this file when an artifact's pre-save check needs a decidable test for a carve-out exception. The default is **terse** — predicates here only fire when the artifact provides the yes/no evidence.
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
# Multi-Source Comparison Matrix
|
|
2
|
+
|
|
3
|
+
Reference guideline for Wing-1 deep-thinking work — the cross-source
|
|
4
|
+
synthesis lens. Use when analyzing multiple articles, papers, or
|
|
5
|
+
perspectives on the same topic: systematically compare claims, evidence
|
|
6
|
+
quality, and viewpoints to synthesize an integrated understanding rather
|
|
7
|
+
than a stack of independent summaries. Adopted under the
|
|
8
|
+
**Reference-Guideline Sunset Policy** and cross-referenced from:
|
|
9
|
+
|
|
10
|
+
- [`deep-reading-analyst`](../../skills/deep-reading-analyst/SKILL.md)
|
|
11
|
+
— L4 Research analysis depth (web-search 2–3 related sources, compare,
|
|
12
|
+
synthesize).
|
|
13
|
+
- [`critical-thinking`](critical-thinking.md) — per-source argument
|
|
14
|
+
quality feeds the evidence-strength column here.
|
|
15
|
+
- [`systems-thinking`](systems-thinking.md) — interdisciplinary matrix
|
|
16
|
+
pairs with cross-domain pattern recognition.
|
|
17
|
+
|
|
18
|
+
> **Core principle:** Compare to synthesize, not to tally. Weight sources
|
|
19
|
+
> by credibility, separate what is settled from what is debated, and name
|
|
20
|
+
> your own interpretive bias.
|
|
21
|
+
|
|
22
|
+
## When to use
|
|
23
|
+
|
|
24
|
+
- Reading 3+ sources on the same topic.
|
|
25
|
+
- Encountering conflicting information across sources.
|
|
26
|
+
- Trying to synthesize best practices from competing approaches.
|
|
27
|
+
- Building comprehensive understanding before a decision.
|
|
28
|
+
|
|
29
|
+
## Standard Comparison Matrix
|
|
30
|
+
|
|
31
|
+
```markdown
|
|
32
|
+
# Comparative Analysis: [Topic]
|
|
33
|
+
|
|
34
|
+
## Sources Overview
|
|
35
|
+
|
|
36
|
+
| Source | Type | Author Expertise | Date | Bias/Lens |
|
|
37
|
+
|--------|------|-----------------|------|-----------|
|
|
38
|
+
| [Source 1] | [Article/Paper/Book] | [Credentials] | [Date] | [Perspective] |
|
|
39
|
+
| [Source 2] | [...] | [...] | [...] | [...] |
|
|
40
|
+
| [Source 3] | [...] | [...] | [...] | [...] |
|
|
41
|
+
|
|
42
|
+
## Key Claims Matrix
|
|
43
|
+
|
|
44
|
+
| Claim/Question | Source 1 | Source 2 | Source 3 | Consensus? |
|
|
45
|
+
|----------------|----------|----------|----------|------------|
|
|
46
|
+
| [Question 1] | [Position] | [Position] | [Position] | ✅/❌ |
|
|
47
|
+
| [Question 2] | [Position] | [Position] | [Position] | ✅/❌ |
|
|
48
|
+
|
|
49
|
+
## Evidence Quality
|
|
50
|
+
|
|
51
|
+
| Source | Evidence Type | Strength (1-5) | Notes |
|
|
52
|
+
|--------|---------------|----------------|-------|
|
|
53
|
+
| Source 1 | [Data/Anecdote/Study] | ⭐⭐⭐⭐ | [Assessment] |
|
|
54
|
+
| Source 2 | [...] | ⭐⭐⭐ | [...] |
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Agreement vs. Disagreement
|
|
58
|
+
|
|
59
|
+
- **Universal agreement** — points all sources converge on.
|
|
60
|
+
- **Partial consensus** — where two align and one diverges.
|
|
61
|
+
- **Complete divergence** — where views split, listed per source.
|
|
62
|
+
|
|
63
|
+
## Synthesized Insights
|
|
64
|
+
|
|
65
|
+
- **What we know with confidence** — convergent evidence across sources.
|
|
66
|
+
- **Open questions** — where sources disagree or lack data.
|
|
67
|
+
- **Integrated framework** — synthesis combining the best of each source.
|
|
68
|
+
- **Source-specific contributions** — what only each source provides.
|
|
69
|
+
- **Recommended reading order** — sequence for someone new to the topic,
|
|
70
|
+
with the reason per step.
|
|
71
|
+
|
|
72
|
+
## Matrix variants
|
|
73
|
+
|
|
74
|
+
Pick the shape that fits what the sources actually differ on:
|
|
75
|
+
|
|
76
|
+
### Method comparison
|
|
77
|
+
|
|
78
|
+
When sources describe different methods/approaches:
|
|
79
|
+
|
|
80
|
+
```markdown
|
|
81
|
+
| Method | Source | Best For | Limitations | Difficulty | Results |
|
|
82
|
+
|--------|--------|----------|-------------|------------|---------|
|
|
83
|
+
| [Method A] | [Source 1] | [Use case] | [Weakness] | Easy | [Outcome] |
|
|
84
|
+
| [Method B] | [Source 2] | [Use case] | [Weakness] | Hard | [Outcome] |
|
|
85
|
+
|
|
86
|
+
Recommendation: use [X] when [condition]; combine [X + Y] for [scenario].
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Viewpoint spectrum
|
|
90
|
+
|
|
91
|
+
When sources sit at different positions on a spectrum:
|
|
92
|
+
|
|
93
|
+
```markdown
|
|
94
|
+
[Extreme Position A] ←―――――――――――→ [Extreme Position B]
|
|
95
|
+
↑ ↑ ↑
|
|
96
|
+
[Source 1] [Source 2] [Source 3]
|
|
97
|
+
|
|
98
|
+
Per position: core belief · reasoning · strongest point · weakest point.
|
|
99
|
+
My position: where you land after reviewing all perspectives, and why.
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Evolution over time
|
|
103
|
+
|
|
104
|
+
When tracking how understanding of a topic evolved:
|
|
105
|
+
|
|
106
|
+
```markdown
|
|
107
|
+
| Period | Representative Source | Key Insight | What Changed Next |
|
|
108
|
+
|--------|----------------------|-------------|-------------------|
|
|
109
|
+
| [Era 1] | [Source/Author] | [Prevailing view] | [Paradigm shift] |
|
|
110
|
+
|
|
111
|
+
Pattern analysis: what stayed constant · what repeatedly changed ·
|
|
112
|
+
current frontier.
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### Interdisciplinary
|
|
116
|
+
|
|
117
|
+
When the same topic is analyzed from different fields:
|
|
118
|
+
|
|
119
|
+
```markdown
|
|
120
|
+
| Discipline | Source | Core Question | Key Findings | Limitations |
|
|
121
|
+
|------------|--------|---------------|--------------|-------------|
|
|
122
|
+
| Economics | [Source] | [Question] | [Insight] | [Blind spot] |
|
|
123
|
+
| Psychology | [Source] | [Question] | [Insight] | [Blind spot] |
|
|
124
|
+
|
|
125
|
+
Synthesis: complementary insights · contradictions + resolution ·
|
|
126
|
+
blind spots one field fills for another.
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Practical / how-to
|
|
130
|
+
|
|
131
|
+
For how-to content from multiple sources: common steps all sources agree
|
|
132
|
+
on, a variations table per aspect, reported results/credibility per
|
|
133
|
+
source, then a personalized recommendation for the reader's context.
|
|
134
|
+
|
|
135
|
+
## Conflict resolution
|
|
136
|
+
|
|
137
|
+
When sources directly contradict, investigate before picking a winner.
|
|
138
|
+
Five common reasons a contradiction is only apparent:
|
|
139
|
+
|
|
140
|
+
1. **Different definitions** — they define the key term differently;
|
|
141
|
+
not actually contradicting if talking about different things.
|
|
142
|
+
2. **Different contexts** — different time/place/population; both can be
|
|
143
|
+
right in their own context.
|
|
144
|
+
3. **Different evidence** — quality difference explains the disagreement.
|
|
145
|
+
4. **Different values/goals** — different optimization targets lead to
|
|
146
|
+
different conclusions.
|
|
147
|
+
5. **One is wrong** — one source has flawed reasoning.
|
|
148
|
+
|
|
149
|
+
Resolution lands on one of: which source is more reliable for *this*
|
|
150
|
+
claim and why · how both can be true depending on context · this remains
|
|
151
|
+
unresolved and needs more evidence.
|
|
152
|
+
|
|
153
|
+
## Pitfalls
|
|
154
|
+
|
|
155
|
+
- ❌ Forcing false equivalence — not all views are equally valid.
|
|
156
|
+
- ❌ Cherry-picking to support a predetermined view.
|
|
157
|
+
- ❌ Ignoring publication quality / expertise differences.
|
|
158
|
+
- ❌ Over-detailed comparison that misses the forest for the trees.
|
|
159
|
+
|
|
160
|
+
## Best practices
|
|
161
|
+
|
|
162
|
+
- ✅ Weight sources by credibility.
|
|
163
|
+
- ✅ Look for convergent evidence.
|
|
164
|
+
- ✅ Note what is settled vs. debated.
|
|
165
|
+
- ✅ Name your own biases in interpretation.
|
|
166
|
+
|
|
167
|
+
## How to populate
|
|
168
|
+
|
|
169
|
+
1. Read each source independently first.
|
|
170
|
+
2. Identify common themes / questions across sources.
|
|
171
|
+
3. Choose the matrix shape based on what you are comparing.
|
|
172
|
+
4. Fill in each source's position.
|
|
173
|
+
5. Analyze patterns and synthesize — do not stop at the table.
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## ADOPT citation
|
|
178
|
+
|
|
179
|
+
Adapted from an external reference.
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
# Context Hygiene — Mechanics
|
|
2
|
+
|
|
3
|
+
> Suggestion templates, state-dump format, read-loop self-checks, and host fallbacks for the `context-hygiene` rule
|
|
4
|
+
|
|
5
|
+
_Origin: migrated from `src/rules/context-hygiene.md` per the P4 pattern of `road-to-kernel-and-router.md`. The freshness thresholds, the 3-failure rule (with failure-identity and hard-blocker classes), the tool-loop cap, and the read-loop 15/25 Iron Law stay in the rule; this file carries the templates and per-host procedures._
|
|
6
|
+
|
|
7
|
+
## Conversation-freshness suggestion — how to phrase it
|
|
8
|
+
|
|
9
|
+
Estimate token cost: responses × ~1,500 tokens.
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
> ⚡ This conversation has ~{N} messages (~{N×1500} tokens history cost — charged on EVERY request).
|
|
13
|
+
> A fresh chat saves ~{N×1500} input tokens per request.
|
|
14
|
+
>
|
|
15
|
+
> 1. Start fresh — I'll initiate a session handoff
|
|
16
|
+
> 2. Continue here
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
**If the user picks 1:** Initiate a session handoff or start fresh.
|
|
20
|
+
|
|
21
|
+
## Read-loop self-check (fires at the 15-min warning)
|
|
22
|
+
|
|
23
|
+
1. Source expectation known? If no → read **once**, then act.
|
|
24
|
+
2. Can a single failing test name the error? If yes → run it now.
|
|
25
|
+
3. Regression in working code? → `git log` + `git show <sha> -- <file>`.
|
|
26
|
+
4. Guessing at mock / payload shape? → read the producer **once**.
|
|
27
|
+
|
|
28
|
+
## Read-loop abort block (the 25-min stop)
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
> ⛔ Loop: N read-only turns, ~M min. Read: <files>. Hypothesis: <X>.
|
|
32
|
+
> 1. Different approach (suggestion: <Y>)
|
|
33
|
+
> 2. Point me at the right spot
|
|
34
|
+
> 3. Fresh chat with state dump
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Non-bypassable. An autonomous mandate (`/work`, `/roadmap:process-*`,
|
|
38
|
+
"entscheide selbst") does **not** lift the abort — it is the safety
|
|
39
|
+
net that protects autonomy from becoming a token sink.
|
|
40
|
+
|
|
41
|
+
Debug procedure for "I'm in a read loop fixing tests" →
|
|
42
|
+
`systematic-debugging` § Debug micro-loop (one test, one fix, one re-run).
|
|
43
|
+
|
|
44
|
+
## State dump format
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
## State Dump: [Task]
|
|
48
|
+
### Tried: 1. [Approach] → [Why failed] 2. ... 3. ...
|
|
49
|
+
### Known: [Key facts]
|
|
50
|
+
### Hypothesis: [Best guess for root cause]
|
|
51
|
+
### Recommendation: [Next approach for fresh session]
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Use `/agent-handoff` to generate a context summary for a fresh conversation.
|
|
55
|
+
|
|
56
|
+
## Augment-specific: ignored-skills recovery
|
|
57
|
+
|
|
58
|
+
Skills excluded via `.augmentignore` don't appear in `<available_skills>`.
|
|
59
|
+
If you need an ignored skill: read its SKILL.md directly, apply guidance, then ask:
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
> 💡 I loaded `{name}` manually — currently ignored in `.augmentignore`.
|
|
63
|
+
> 1. Remove from ignore — relevant for this project
|
|
64
|
+
> 2. Keep ignored — one-off
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Copilot fallback
|
|
68
|
+
|
|
69
|
+
GitHub Copilot has no `PostToolUse` hook surface, so
|
|
70
|
+
`scripts/context_hygiene_hook.ts` cannot run structurally and
|
|
71
|
+
`agents/state/context-hygiene.json` is not maintained automatically
|
|
72
|
+
(tool-call count, loop signal, freshness milestones at 20/40/60).
|
|
73
|
+
|
|
74
|
+
The cooperative path: track turns and tool-loop signals from memory
|
|
75
|
+
during the conversation and apply the suggest-a-new-chat / 3-failure
|
|
76
|
+
stop / loop-detection rules. To refresh the state file manually so the
|
|
77
|
+
dashboard or another tool can read the latest counters, run:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
./scripts-run src/scripts/context_hygiene_hook < /dev/null
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
The script reads from stdin if a JSON envelope is provided and
|
|
84
|
+
otherwise writes a no-op snapshot under the shared dispatcher lock.
|
|
85
|
+
Exit code is always 0 — hooks must never block the agent loop.
|
|
86
|
+
|
|
87
|
+
## See also
|
|
88
|
+
|
|
89
|
+
- `context-hygiene` (rule) — thresholds, 3-failure rule, tool-loop cap, read-loop Iron Law.
|
|
90
|
+
- `systematic-debugging` § Debug micro-loop — the one-test-one-fix-one-rerun procedure.
|
|
91
|
+
|
|
92
|
+
## The CI waiter — use the helper, never the hand-written loop
|
|
93
|
+
|
|
94
|
+
`./scripts-run src/scripts/ci_settle <pr> [--timeout-min N] [--interval-sec N]`
|
|
95
|
+
|
|
96
|
+
Exit codes: **0** settled green · **1** settled red, with the failing checks
|
|
97
|
+
named · **2** did not settle, or the API could not be read — never a verdict.
|
|
98
|
+
|
|
99
|
+
Four states classify as *not settled*, and each one is a way the hand-written
|
|
100
|
+
form goes wrong: an API error, a non-zero `gh` exit, unparseable output, and
|
|
101
|
+
**zero registered checks** (a run that has not registered its checks yet looks
|
|
102
|
+
exactly like a finished one with nothing to report).
|
|
103
|
+
|
|
104
|
+
**Why it exists.** Measured 2026-08-20:
|
|
105
|
+
|
|
106
|
+
```bash
|
|
107
|
+
until ! gh pr checks 1459 | grep -q "pending"; do sleep 60; done
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
The API then failed. Its error text — `error connecting to api.github.com` —
|
|
111
|
+
contains no `pending`, so the loop exited, the session reported a settle that
|
|
112
|
+
had not happened, and the claim had to be retracted to the user in the next
|
|
113
|
+
reply. The bug is not the sleep or the grep: **absence of the word `pending`
|
|
114
|
+
was treated as evidence of completion**, and an error is neither settled nor
|
|
115
|
+
pending. The exit condition is the part that is easy to get wrong, so it lives
|
|
116
|
+
in one place rather than in every agent's head.
|
|
117
|
+
|
|
118
|
+
## Waiting is one waiter — why the loop test misses it
|
|
119
|
+
|
|
120
|
+
Migrated from [`context-hygiene`](../../rules/context-hygiene.md)
|
|
121
|
+
§ *Waiting is one waiter, never a fleet* under the P4 pattern
|
|
122
|
+
(`road-to-standing-payload-diet` step 1.3). The rule keeps the Iron Law, the
|
|
123
|
+
one-waiter instruction and the enforcement verdict; the argument for them is
|
|
124
|
+
here.
|
|
125
|
+
|
|
126
|
+
The loop test in that rule fails on waiting in **both** of its clauses:
|
|
127
|
+
|
|
128
|
+
- **"Same parameters" fails.** A `sleep 240` followed by `sleep 420` followed by
|
|
129
|
+
`sleep 595` are three different calls by any parameter comparison, so nothing
|
|
130
|
+
reads them as repetition.
|
|
131
|
+
- **"Repetition without new information" fails too**, and this is the subtler
|
|
132
|
+
half: the poll genuinely returns a different value each round — 31 green, then
|
|
133
|
+
34, then 36 — which *feels* like progress. It is not information unless a
|
|
134
|
+
different digit would make you act differently. It would not: the only actions
|
|
135
|
+
available were wait, or stop and report, and 34 licensed neither more than 31
|
|
136
|
+
did. **The discriminator is the decision, not the digits.**
|
|
137
|
+
|
|
138
|
+
So state it separately: pick **one** waiter for the condition and let it finish.
|
|
139
|
+
Where the harness re-invokes on completion, waiting costs nothing and polling
|
|
140
|
+
costs a turn per expiry — and every stacked waiter is a turn that arrives *after*
|
|
141
|
+
the answer already did. Where it does not, one `until <condition>` loop is still
|
|
142
|
+
one call rather than N.
|
|
143
|
+
|
|
144
|
+
**Measured once, at n=1, and worth naming for its shape rather than its
|
|
145
|
+
frequency** (2026-08-12): a CI wait started roughly 35 background commands —
|
|
146
|
+
a fresh timer *and* a fresh condition-watcher per round, none cancelled when the
|
|
147
|
+
next pair started. CI settled with about fifteen still live; each then expired
|
|
148
|
+
and produced an empty turn. Nothing was corrupted, which is exactly why it ran
|
|
149
|
+
so long: every individual step looked reasonable.
|
|
150
|
+
|
|
151
|
+
**Enforcement: none, and the reason is structural.** The `context-hygiene` hook
|
|
152
|
+
counts tool calls; a waiter is indistinguishable from any other call at that
|
|
153
|
+
layer, and nothing in the envelope says two live waiters are watching one
|
|
154
|
+
condition. This is model-carried on every host.
|
|
155
|
+
|
|
156
|
+
## The declared-protocol cap — why 8, and when it changes
|
|
157
|
+
|
|
158
|
+
Migrated from [`context-hygiene`](../../rules/context-hygiene.md)
|
|
159
|
+
§ *Declared read protocol* under the same pattern. The rule keeps the cap and the
|
|
160
|
+
three-field declaration contract; the honesty note about the number is here.
|
|
161
|
+
|
|
162
|
+
> **The 8 is a guess, and specifically a LOWER BOUND.** One observed run — the coherence audit that motivated this clause — needed 8+ read turns and was legibly the protocol working, not a loop. So 8 is "the number that was enough once", not a measured optimum: n=1 says almost nothing about where the tail of the distribution sits, and nobody knows how many sessions silently hit the old 5 and should have continued. Calling this a derivation would be false advertising, which is the same failure class as the "17 rules carry absolutes" figure this rule's own roadmap refuted.
|
|
163
|
+
> **Revisit-if — whichever comes first:** (a) **≥ 10 declared-protocol sessions** have been observed, at which point set the cap from their p95 and delete this note; or (b) **90 days** elapse with fewer than 10, which is itself the answer — declared protocols are rare, the cap is not load-bearing, and it drops back to the undeclared 5. A condition like "once a distribution exists" was rejected as unfalsifiable: it is gradual, never feels urgent, and absence of complaints is indistinguishable from absence of measurement. <!-- enforcement-count-ok: not an enforcement denominator — the 10 is a revisit threshold for observed declared-protocol read sessions and the 90 a calendar deadline; neither is a count of rules, obligations, or covered platforms, so there is no resolver output to cite instead -->
|
|
164
|
+
|
|
165
|
+
|