Skip to content

docs: a learning must generalize past the change that taught it (1.0.2)#25

Merged
mattmaynes merged 2 commits into
mainfrom
learning-generality
Jun 27, 2026
Merged

docs: a learning must generalize past the change that taught it (1.0.2)#25
mattmaynes merged 2 commits into
mainfrom
learning-generality

Conversation

@mattmaynes

Copy link
Copy Markdown
Collaborator

What

Refines the Spectra protocol's definition of a learning so overview/learnings.md collects only guidance that continually improves the development lifecycle - not one-off corrections that apply to a single feature and won't recur.

Why

The old section 6 text guarded two failure modes (a learning isn't a feature description; don't manufacture one) but never required a learning to generalize. A genuine "do it differently" correction that only ever applied to the feature that produced it passed every existing test and got logged - diluting the lessons that actually transfer. The missing axis was transferability.

Changes

  • spectra/protocol.md section 6 - rewritten definition: a learning is a rule you'd apply differently next time that outlives the change that taught it; a lesson specific to the feature you just shipped belongs in features.md / architecture.md.
  • spectra/protocol.md section 3 - tightened the feedback-doc Learning field to "the general rule to apply next time, not just this one fix."
  • docs/feedback/0014-learnings-must-generalize.md - captures the friction.
  • docs/overview/learnings.md - logs the learning itself (extends feedback/0005 with the generality axis) and reframes the header.
  • Version bump to 1.0.2 across the plugin manifests + marketplace; README token figures regenerated.

docs/spectra/protocol.md is a symlink to the shippable source, so both update together.

Testing

./test.sh passes (token figures refreshed via scripts/token-report.sh --write).

🤖 Generated with Claude Code

Refine the protocol's definition of a learning so it captures only
guidance that continually improves the development lifecycle, not
one-off corrections specific to a single feature.

The old section 6 text blocked two failure modes - a learning isn't a
feature description and you shouldn't manufacture one - but never
required a learning to generalize. A real correction that applied only
to the feature that produced it passed every test and got logged,
diluting the store. Add the missing transferability axis: a learning
must outlive the change that taught it.

- Rewrite the section 6 definition and tighten the section 3
  feedback-doc Learning field.
- Capture the friction in feedback/0014 and log the learning itself
  (it extends feedback/0005 with the generality axis).
- Bump to 1.0.2 and refresh README token figures.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

@mattmaynes mattmaynes left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Spectra Architect - review of the learning-generality refinement.

The new §6 definition cleanly adds the transferability axis on top of feedback/0005's description-vs-lesson axis, the learnings.md entry correctly cites 0005 as the prior art it extends, and the dogfooded entry itself clears the new bar (it is a meta-rule about Reflect, general to every future change). The feedback -> learning -> applied data-flow stays sound. Two internal-consistency nits below; no major/blocker findings.

Comment thread spectra/protocol.md Outdated
Comment thread spectra/protocol.md Outdated
Per architect persona review on PR #25:

- Section 6 gate "No feedback and no recurring rule" read as a
  conjunction of absences, so feedback without a generalizing rule
  would still pass. Make the two requirements independent gates: "No
  feedback, no learning; nothing that generalizes, no learning."
- Section 3 Learning field claimed it unconditionally feeds
  learnings.md, contradicting section 6's diversion of feature-specific
  lessons. Make the routing conditional on generalizing.

Refresh README token figures.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mattmaynes mattmaynes merged commit ce72861 into main Jun 27, 2026
3 checks passed
@mattmaynes mattmaynes deleted the learning-generality branch June 27, 2026 15:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant