Skip to content

feat: Knowledge Collection 운영 관리 기능 보강 - #442

Merged
HyungminYoon1 merged 7 commits into
devfrom
feature/mba-264
Jul 14, 2026
Merged

feat: Knowledge Collection 운영 관리 기능 보강#442
HyungminYoon1 merged 7 commits into
devfrom
feature/mba-264

Conversation

@HyungminYoon1

Copy link
Copy Markdown
Contributor

변경 사항

  • Knowledge Collection의 활성/보관 상태 조회와 복원 경계를 추가했습니다.
  • 전체 항목 집합과 revision을 사용하는 정확한 순서 변경을 구현했습니다.
  • 권한 위임 대상 검색을 제한·페이지네이션하고, bundle 회수 및 다중 KC 일괄 권한 변경을 추가했습니다.
  • 관리 화면에 보관 탭, 복원, 순서 편집, 대상 검색, bundle 회수, 일괄 권한 관리 UI를 연결했습니다.
  • 조직 격리, 동시성, 감사 로그 rollback 및 안전한 응답 경계를 PostgreSQL과 집중 테스트로 검증했습니다.
  • ADR-0044 및 Knowledge 공식 문서를 구현 결과에 맞게 갱신했습니다.

관련 이슈

Linear: MBA-264

변경 유형

  • 버그 수정
  • 새로운 기능
  • 리팩토링
  • 문서 수정
  • 기타

테스트

  • 로컬에서 테스트 완료

  • 기존 테스트 통과 확인

  • MBA-264 집중 검증: Gateway/Shared 101 passed, PostgreSQL 통합 4 passed, Client API 28 passed, Client component 7 passed

  • 변경 파일 Ruff 및 ESLint 검증 완료, Client production build 통과

  • 전체 회귀 테스트는 PR 전 1회 실행했습니다.

    • Workflow Engine 724 passed
    • Log System 116 passed
    • Root common 181 passed, 1 skipped
    • Sandbox 4 passed
    • Gateway의 비-DB 실패 10건은 동일한 최신 dev에서도 재현되는 기존 실패이며, DB 통합 16건은 기본 로컬 PostgreSQL 연결 설정으로 인해 실행되지 못했습니다.
    • Shared 전체 수집은 Workflow venv에 apscheduler가 없어 중단되었으며, 변경 범위 집중 테스트는 통과했습니다.

스크린샷 (UI 변경 시)

  • 별도 첨부 없음. 관련 UI는 컴포넌트 테스트와 production build로 검증했습니다.

@linear-code

linear-code Bot commented Jul 14, 2026

Copy link
Copy Markdown

MBA-264

@HyungminYoon1
HyungminYoon1 force-pushed the feature/mba-264 branch 2 times, most recently from 64cf6f5 to 44ed651 Compare July 14, 2026 14:49
@HyungminYoon1

Copy link
Copy Markdown
Contributor Author

@codex review

@HyungminYoon1
HyungminYoon1 marked this pull request as ready for review July 14, 2026 14:58

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7f49f2b78c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +931 to +933
target_count_bucket=bucket_count(len(collections)),
changed_count_bucket=bucket_count(changed_count),
unchanged_count_bucket=bucket_count(len(collections) - changed_count),

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge 11개 이상 일괄 권한 응답 버킷을 보정하세요

11개 이상(최대 50개) KC를 bulk grant/revoke하면 여기서 공통 bucket_count11-100을 반환하지만 KnowledgeCollectionPermissionBulkBundleResponse11-50만 허용합니다. 이 모델 생성은 이미 self.db.commit() 이후라 권한 변경은 저장되고 API는 Pydantic ValidationError/500으로 실패해 UI가 실패로 표시하며 재시도도 계속 실패합니다. Bulk 전용 버킷 함수나 응답 스키마를 서로 일치시켜야 합니다.

Useful? React with 👍 / 👎.

Comment on lines +351 to +354
self._require_manual_collection(collection)
if collection.lifecycle_state != "active":
self.unit_of_work.rollback()
raise CollectionStateConflict("collection_not_active")

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge 삭제된 컬렉션은 reorder 전에 숨기세요

삭제된 manual Collection에 reorder 요청이 들어오면 repository가 deleted row를 반환한 뒤 이 분기에서 collection_not_active 409를 내므로, 기존 서비스의 lifecycle_state != "deleted" hidden 처리와 달리 같은 조직의 호출자가 삭제된 리소스 존재를 404와 구분할 수 있습니다. reorder()도 archive/restore처럼 deleted 상태를 먼저 CollectionHidden으로 처리해야 합니다.

Useful? React with 👍 / 👎.

@HyungminYoon1

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Keep them coming!

Reviewed commit: 6697219d9c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@HyungminYoon1
HyungminYoon1 merged commit 2754f5a into dev Jul 14, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant