-
Notifications
You must be signed in to change notification settings - Fork 0
Feature/#77 - 사이드바 Secret 개수 집계 및 표시 #80
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
c818188
27d5258
8658a27
a766063
21beb4f
b2f3e81
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -49,10 +49,14 @@ extension DVSecretType { | |
| } | ||
| } | ||
|
|
||
| /// 그리드 열이 좁아져도 라벨이 줄바꿈되지 않도록 고정한다. | ||
| /// 줄바꿈을 허용하면 행 높이가 커지면서 그리드 전체 높이가 연쇄적으로 늘어난다. | ||
| private var typeLabel: some View { | ||
| Text(labelText) | ||
| .dvFont(.headingLG) | ||
| .foregroundStyle(Color.dv(.gray900)) | ||
| .multilineTextAlignment(.center) | ||
| .lineLimit(1) | ||
| .fixedSize(horizontal: true, vertical: false) | ||
|
Comment on lines
+52
to
+60
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "== locate files =="
git ls-files | rg 'DVSecretType|SelectSecretType|SecretType' || true
echo "== file sizes =="
for f in $(git ls-files | rg 'Projects/DVDesign/Sources/(Components/DVSecretType|.*SelectSecretType|.*SecretType).*\.swift' || true); do
wc -l "$f"
done
echo "== DVSecretType outline and relevant contents =="
if [ -f Projects/DVDesign/Sources/Components/DVSecretType.swift ]; then
ast-grep outline Projects/DVDesign/Sources/Components/DVSecretType.swift || true
sed -n '1,140p' Projects/DVDesign/Sources/Components/DVSecretType.swift
fi
echo "== SelectSecretType relevant references =="
rg -n "SelectSecretTypeView|typeLabel|labelText|type\.displayName|secret type|SecretType" Projects/DVDesign/Sources -g '*.swift' -C 3 || trueRepository: DevaultProject/Devault-macOS Length of output: 5611 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "== SelectSecretTypeView relevant contents =="
sed -n '1,180p' Projects/DVPresentation/Sources/Features/SelectSecretType/SelectSecretTypeView.swift
echo "== DVSecretType preview usage =="
sed -n '1,140p' Projects/DVDesign/SampleApp/Sources/DVSecretTypePreviewView.swift
echo "== SecretType definitions =="
for f in Projects/DVDomain/Sources/Entity/SecretType.swift Projects/DVPresentation/Sources/Features/CreateSecret/Model/CreatableSecretType.swift; do
echo "--- $f"
sed -n '1,220p' "$f"
done
echo "== grid modifiers / DVSecretType usages =="
rg -n "DVSecretType|AnyGridItem|CollectionGrid|LazyVGrid|horizontalSizeClass|Fixed|gridColumn|lineLimit|fixedSize|truncationMode|\.center" Projects/DVPresentation Projects/DVDesign -g '*.swift' -C 2 || true
echo "== deterministic SwiftUI modifier order behavior probe =="
cat > /tmp/swiftui_fixedsize_order_probe.swift <<'SWIFT'
struct TextExtensions {
static func lineLimit(_ value: Int? = 0) {}
static func fixedSize(horizontal: Bool = true, vertical: Bool = false) {}
static func truncationMode(_ mode: String = "tail") {}
}
// This is a source-only compile probe, not the repository code.
// A Text would accept lineLimit → truncationMode → fixedSize;
// lineLimit without truncationMode and with fixedSize often preserves intrinsic label width.
SWIFT
swiftc --version 2>/dev/null || trueRepository: DevaultProject/Devault-macOS Length of output: 25145
🤖 Prompt for AI Agents |
||
| } | ||
| } | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
개수 조회에 모든 구조화 필터를 적용하세요.
Line 49와 Line 54의 predicate는
secretType,service,environment를 무시합니다. 반면 목록 조회는 같은 필터를 적용합니다. 따라서count(_:)결과가fetch(_:)결과와 달라집니다.제공된
Projects/DVDomain/Tests/Core/Support/InMemorySecretRepository.swift:73-77도 쿼리를 무시하고 전체secrets.count를 반환합니다. 테스트 저장소도 같은 쿼리 의미를 구현하세요.Projects/DVData/Sources/RepositoryImpl/Secret/SecretFetchDescriptorBuilder.swift#L47-L60:.all및.likedpredicate에SecretQuery의secretType,service,environment조건을 추가하세요.Projects/DVDomain/Sources/Repository/Interface/SecretRepository.swift#L21-L26: 모든SecretRepository구현체가count(_:)에서 쿼리 조건을 적용하도록 계약 테스트를 추가하세요.📍 Affects 2 files
Projects/DVData/Sources/RepositoryImpl/Secret/SecretFetchDescriptorBuilder.swift#L47-L60(this comment)Projects/DVDomain/Sources/Repository/Interface/SecretRepository.swift#L21-L26🤖 Prompt for AI Agents