Repository navigation
feat(learning): group workloads by repository, operation and tool - #79
Merged
Merged
Conversation
Learning was split across too many groups: most families had no operation, and the group key included the relative directory. Every workload family now has a stored classification of repository digest, tool and operation, with `other` as the fallback, in the additive learning_classification table. Families in one verified repository with the same operation and recognized tool share a group, whatever subdirectory they ran in. The classification lives in its own table because old clients share this database and reject unknown kinds in learning_similarity. A one-time backfill runs through the revision-checked regroup path and recovers deleted worktrees from their stored scope. Pinned profiles stay untouched. The pass reads each family's retained metadata as a whole, so its result does not depend on file order. It skips bad records, and a failed pass is logged and retried after ten minutes instead of holding admissions, because history only improves grouping. Inline sh -c and bash -c programs, *.sh scripts and env wrappers are scanned for new jobs. Only the category is kept. The catalog exposes project and operation, filters by them, and offers a bounded project to operation hierarchy that collapses small projects into one row, through the CLI and the authenticated HTTP route. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Marc Went <marc@went.io>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Marc Went <marc@went.io>
Dunky13
force-pushed
the
dunky13/learning-groups-by-project-tool
branch
from
November 5, 2026 21:23
c9f099e to
05171b9
Compare
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
Workloads share learning within a verified repository, by operation and tool. Stacked on #78. No UI yet: the browse views come in the next PR.
The classification has its own table because old clients share this database and reject unknown kinds in
learning_similarity.Evidence
Measured on a private copy of real history with the commit's binary. The live database was only read.
maincore-1,core-2,./internal/remote,test:weband lint all pass through the queue on0b4cb02. The only commit after that adds the handoff doc.go test -overlay.Merge Danger
Door: one-way for grouping on an upgraded machine
The pass merges profiles in the operator's history once. An operator can split a family back out, but there is no bulk undo. Pinned profiles are untouched and the new table is additive, so older clients keep working.
Blast Radius: scheduling estimates
envandfnmjobs count asshellandjavascript. A reused path can assign a wrong repository through a stored scope.ownership.go, which this PR does not touch.Full limits and next steps are in
docs/handoffs/learning-grouping.md.🤖 Generated with Claude Code