Repository navigation
feat(studio): knowledge — skills, learned skills, learning review, memory consolidation - #1760
Merged
Merged
Conversation
samuv
added this pull request to stack #1766
September 22, 2026 08:01
samuv
force-pushed
the
studio/knowledge
branch
from
September 22, 2026 09:03
1c5911b to
476e975
Compare
samuv
force-pushed
the
studio/knowledge
branch
from
September 22, 2026 09:13
476e975 to
7dd16a1
Compare
samuv
force-pushed
the
studio/knowledge
branch
from
September 22, 2026 09:23
7dd16a1 to
c63786e
Compare
samuv
force-pushed
the
studio/knowledge
branch
from
September 22, 2026 09:59
c63786e to
f453ccc
Compare
samuv
force-pushed
the
studio/knowledge
branch
from
September 23, 2026 08:56
f453ccc to
36fa902
Compare
samuv
force-pushed
the
studio/knowledge
branch
from
September 23, 2026 09:40
36fa902 to
f022701
Compare
samuv
force-pushed
the
studio/knowledge
branch
from
September 23, 2026 10:47
f022701 to
c341a99
Compare
samuv
force-pushed
the
studio/knowledge
branch
from
September 23, 2026 11:54
c341a99 to
9eaa847
Compare
…mory consolidation Implementation layer of docs/acceptance/studio-knowledge.md, built against plan commit 429f648. BFF: fourteen /api/v1 routes projecting configured skills, versioned learned skills (detail, unified diff, lifecycle history, and activate / archive / reject / rollback carrying the daemon's expectedRevision), the learning-proposal queue (decide, undo promotion), session reflection receipts, and the user model with its daemon-curated consolidation plans. Each surface is gated live on its own snapshot capability with a surface-specific 501 code; the inventory lists degrade to supported: false instead; a stale token is the daemon's conflict relayed, never retried; a missing memory key is a 404. Mutations sit behind the bootstrap's CSRF and session gates. Web: the knowledge workspace (configured and learned views, learned- skill detail with diff, learning review, memory consolidation dialog) ported from the prototype; "Skills" joins the nav. 81 server and 214 web Vitest proofs; smoke-tested against a spawned mecated --mock, which advertises every knowledge capability (inventories, memory, and plan generation exercised live). Tracking: #1736 Signed-off-by: Samuele Verzi <samu@stacklok.com>
samuv
force-pushed
the
studio/knowledge
branch
from
September 23, 2026 12:54
9eaa847 to
7642ef9
Compare
This was referenced Sep 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
What lands
/api/v1routes projecting configured skills, versioned learned skills (detail, unified diff, lifecycle history,activate/archive/reject/rollbackcarrying the daemon'sexpectedRevision), the learning-proposal queue (decide, undo promotion), session reflection receipts, and the user model with its daemon-curated consolidation plans; each surface gated live on its own capability; a missing memory key is a404.Verification
81 server and 214 web Vitest proofs (15 ACs, 0 missing);
task studio:check,task docspass; smoke againstmecated --mock, which advertises every knowledge capability (inventories, memory, plan generation exercised live).Further amendments
Implements the amended knowledge contract (see the plan layer below):
The server offers actions by lifecycle state and refuses a rollback without a target.
The stale-revision proof uses the daemon's real
proposal_conflictcode.The detail page recovers the old and new text from the daemon's diff and renders a line diff.
Plan status. This layer's diff moves its acceptance plan to
landed(header and index), per the plan lifecycle; the transition is authoritative only when this PR merges, andtask ac-trace-strictnow gates the plan.Re-verified on the rebased stack:
task studio:checkpasses (120 server + 254 web Vitest), andtask ac-trace-strictpasses with every Studio plan gated aslanded(141 ACs, 0 failures).Development stage
Contract linkage
gh stack) delivery for the whole Studio series: nothing merges until every layer is reviewed, so the plan's approval-by-merge event is deferred to the end (recorded in each plan's Delivery line), and each implementation layer records the exact plan commit it built against.docs/acceptance/studio-knowledge.md429f6485db43306f39f2b01f4ff6e0df2e74309e(the plan layer below; not yet merged — stacking exception above)Interface conformance
Issue relationship
Relates to #1749 (parent #1736; stack #1766). Non-closing: the step completes when both of its layers merge.
Type of change
Test plan
Baseline checks
task lint)task test)go run ./cmd/mecademo)task docs)Studio gates (this workspace is not covered by
task lint/task test, which are Go-only):task studio:check(Biome, typecheck, Vitest, generated-drift),task ac-trace— all pass; see Verification above.User-facing change
Studio gains the Skills page: configured and learned skills, learning review, memory consolidation.
Special notes for reviewers
Part of a fourteen-layer stack; review bottom-up. Nothing merges until the whole series is reviewed.