Conversation
Adds POST /admin/ui/projects/{repo_slug}/rescan route that creates a
new onboarding run and enqueues it, then redirects to the live status
page — same flow as the wizard but without touching the Jira mapping.
Adds CSRF-protected button in the project detail page header.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ity check, rescan - repo_profiler: document _scan_for_subdir_stacks() and monorepo detection - claude_client: document file_landmark_map in arch tool, detect_epic_missing_specifics (Haiku), plan_epic_breakdown full-context params - Capability Profiles: add Monorepo detection note - Clarification Loop: add Missing specifics trigger (Epic) row - Project knowledge injection: document file_landmarks bullet - Dashboard: document Re-run Analysis button Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Users naturally append reason text (e.g. "REGENERATE 1 caption was wrong"). Align _APPROVAL_RE with _CLARIFICATION_RE which already supports this. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
When user sends "REGENERATE 1 <reason>", the trailing text is now stored as an epic-scoped manual_note so Claude incorporates the feedback on the regenerated breakdown instead of ignoring it. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Previously the approval message only showed story titles, so users had no way to verify the specifics without checking the DB. Now each story block includes its description (truncated at 300 chars) so the from/to values and key details are visible before approving. Also clarifies REGENERATE supports optional feedback text. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
EXTENSION_TO_LANGUAGE is used as the gate in _select_files_for_story. Without .html, static site files like frontend/dist/index.html are silently skipped and never reach the keyword scorer — so Claude is never given the right file to edit for frontend/content changes. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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
EXTENSION_TO_LANGUAGEinrepo_analysis.pyis imported byclaude_client.pyand used as the gate for which files enter the keyword scorer in_select_files_for_story. Without.html/.cssin the map, static site files likefrontend/dist/index.htmlare silently skipped — Claude is never given them, and defaults to editing README.Root cause found via SJ-3: story required updating landing page caption in
frontend/dist/index.html(plain HTML static site, no package.json). File scanner reported{'.py':19, '.md':17, '.txt':7}— no HTML. Keyword scorer had no HTML candidates; matched README instead. All three agents correctly blocked the resulting PR.Files changed
app/repo_analysis.py— added.html,.htm,.css,.vue,.svelte🤖 Generated with Claude Code