mirror of
https://github.com/catlog22/Claude-Code-Workflow.git
synced 2026-02-13 02:41:50 +08:00
feat: Implement association tree for LSP-based code relationship discovery
- Add `association_tree` module with components for building and processing call association trees using LSP call hierarchy capabilities. - Introduce `AssociationTreeBuilder` for constructing call trees from seed locations with depth-first expansion. - Create data structures: `TreeNode`, `CallTree`, and `UniqueNode` for representing nodes and relationships in the call tree. - Implement `ResultDeduplicator` to extract unique nodes from call trees and assign relevance scores based on depth, frequency, and kind. - Add unit tests for `AssociationTreeBuilder` and `ResultDeduplicator` to ensure functionality and correctness.
This commit is contained in:
@@ -378,6 +378,7 @@ function renderIssueCard(issue) {
|
||||
};
|
||||
|
||||
const isArchived = issue._isArchived;
|
||||
const archivedDate = issue.archived_at ? new Date(issue.archived_at).toLocaleDateString() : null;
|
||||
|
||||
return `
|
||||
<div class="issue-card ${isArchived ? 'archived' : ''}" onclick="openIssueDetail('${issue.id}'${isArchived ? ', true' : ''})">
|
||||
@@ -385,7 +386,12 @@ function renderIssueCard(issue) {
|
||||
<div class="flex items-center gap-2">
|
||||
<span class="issue-id font-mono text-sm">${highlightMatch(issue.id, issueData.searchQuery)}</span>
|
||||
<span class="issue-status ${statusColors[issue.status] || ''}">${issue.status || 'unknown'}</span>
|
||||
${isArchived ? '<span class="issue-archived-badge">' + (t('issues.archived') || 'Archived') + '</span>' : ''}
|
||||
${isArchived ? `
|
||||
<span class="issue-archived-badge" title="Archived on ${archivedDate || 'Unknown'}">
|
||||
<i data-lucide="archive" class="w-3 h-3"></i>
|
||||
<span>${t('issues.archived') || 'Archived'}</span>
|
||||
</span>
|
||||
` : ''}
|
||||
</div>
|
||||
<span class="issue-priority" title="${t('issues.priority') || 'Priority'}: ${issue.priority || 3}">
|
||||
${renderPriorityStars(issue.priority || 3)}
|
||||
@@ -418,6 +424,13 @@ function renderIssueCard(issue) {
|
||||
</a>
|
||||
` : ''}
|
||||
</div>
|
||||
|
||||
${isArchived && archivedDate ? `
|
||||
<div class="issue-archived-footer">
|
||||
<i data-lucide="clock" class="w-3 h-3"></i>
|
||||
<span>Archived on ${archivedDate}</span>
|
||||
</div>
|
||||
` : ''}
|
||||
</div>
|
||||
`;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user