Skip to content

feat: add evidence-centered HR workspace slice - #53

Draft
seonghobae wants to merge 113 commits into
developfrom
codex/product-gap-baseline-workspace
Draft

feat: add evidence-centered HR workspace slice#53
seonghobae wants to merge 113 commits into
developfrom
codex/product-gap-baseline-workspace

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Scope

Adds the dependency-free HR Home / Employee Profile fixture, shared design-token consumption, local Storybook, purpose-bound evidence review interactions, bitemporal presentation, high-impact confirmation, accessibility assertions, and English/Korean labels. This remains fixture/component-state evidence only: it does not claim deployed customer UI, People API write integration, production psychometric compute, or ownership of a dedicated-writer dependency.

This branch also owns the page-level keyboard bypass interaction for the existing HR Workspace UI. The Figma baseline was re-read without mutating the design file: nodes 1:10 (HR Home) and 1:28 (Employee Profile) remain the visual geometry baseline. The bypass control is intentionally focus-only until keyboard focus, so its visible state is captured in Storybook and Chromium rather than by creating a conflicting Figma geometry change.

Current branch truth

Fresh live base: develop@9e3e4847510e1e612b48474ba42b177b8ed824df
Exact head: 016f27e13f7a47cb78a1c936aa533cc8daa2c66c
GitHub reports open · Draft · mergeable.

The Draft flag is authoritative: event history shows repeated Ready/Draft lifecycle mutations under a separate same-repository writer, so this loop does not race that lifecycle owner. Older evidence at predecessor heads is stale and is not reused.

Latest RED → root-cause repair

A separate writer advanced the canonical branch to predecessor d955faf5d1e7e10ea3dda3b9deaa74db940bf634 to reseal the new HR Workspace index.html provenance. The new index evidence itself was correct, but that commit also changed the unrelated database/migrations/0005_outbox_delivery_finalization.sql manifest digest to a value that did not match the file on disk.

Foundation run 33042232951, job 98418198435, proved exact checkout of d955faf... and failed at Validate foundation pack with a deterministic provenance mismatch for migration 0005. The same job's --print-manifest repair output proved the authoritative artifact evidence remained SHA-256 b7e8790595b288f752d6ef5cc6cbfe4e1b6712248f5b7a3a25fa60016b6a4961, 6,125 bytes, 170 lines. All PostgreSQL integrity matrix jobs in that run were already GREEN, so changing migration source or weakening the validator would have been the wrong remedy.

Root repair 016f27e13f7a47cb78a1c936aa533cc8daa2c66c restores only that unrelated migration digest while preserving the valid new HR Workspace index provenance. No product behavior, database migration, validation rule, security gate, or dependency contract was weakened.

The earlier keyboard-bypass repair remains intact: the locale E2E now binds to the stable skip-link DOM identity and verifies the active English/Korean accessible name instead of re-resolving a stale English role locator after the locale switch.

Fresh current-head thread inspection shows all inline review threads resolved; submitted reviews are COMMENTED only.

Exact-current-head evidence

All applicable pull-request-triggered Orgmetra workflows currently materialized for exact head 016f27e13f7a47cb78a1c936aa533cc8daa2c66c are terminal GREEN:

  • Foundation CI 33045016590
  • Recovery Rehearsal Quality 33045016578
  • HR Workspace Browser E2E 33045016555
  • Security Scan 33045016566
  • SAST Semgrep 33045016589
  • People API Quality 33045016622
  • Job-Analysis API Quality 33045016637
  • Migration Adapter Quality 33045016594
  • Candidate Evidence Quality 33045016615
  • Offer Approval Quality 33045016550
  • Requisition Review Quality 33045016596
  • Selection Review Quality 33045016602

There is no qualifying independent non-author APPROVE or CHANGES_REQUESTED on this PR. Exact-head GREEN is technical evidence only, not merge authorization.

Merge governance

Effective organization ruleset 18156473 — CWL Central required workflows is active on the default branch, but its live policy is weaker than Orgmetra's acquisition-grade acceptance: it currently requires 1 approving review, dismisses stale reviews on push, does not require last-push approval, requires review-thread resolution and central required workflows, blocks deletion/non-fast-forward, and permits OrganizationAdmin bypass_mode=always / current-user always-bypass.

Issue #89 owns that commercial-control gap. Orgmetra acceptance remains at least 2 qualifying independent non-author approvals, approval after the last push, all applicable exact-current-head local/central gates terminal GREEN, resolved conversations, and no routine administrator bypass.

Do not self-approve, use routine admin bypass, weaken a gate, race the lifecycle writer, or transfer predecessor/foreign evidence.

@coderabbitai

coderabbitai Bot commented Aug 20, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

HR 워크스페이스 UI와 보호된 People·Job Analysis 조회를 추가했습니다. Storybook과 Playwright 검증을 구성하고, CI·저장소 계약·문서·매니페스트를 develop 기준으로 갱신했습니다.

Changes

HR 워크스페이스 통합

Layer / File(s) Summary
워크스페이스 UI와 Storybook 기반
packages/design-tokens/*, .storybook/*, apps/hr-workspace/index.html, apps/hr-workspace/styles.css, apps/hr-workspace/workspace.stories.js, package.json, docs/PRD.md, docs/STORYBOOK.md
HR Home, Employee Profile, Job Analysis 화면과 반응형 스타일을 추가했습니다. 디자인 토큰과 접근성·권한·확인·할당 상태의 Storybook 스토리를 추가했습니다.
보호된 API 조회와 화면 상태
apps/hr-workspace/app.js, tests/hr-workspace.test.mjs
영어·한국어 전환, hr_operations 목적 판정, 호스트 인증 기반 People·Job Analysis 읽기, 401·403·기타 오류 처리를 추가했습니다. URL 인코딩, credentials: 'omit', 저장소 미사용을 테스트합니다.
Chromium E2E와 CI 실행
playwright.config.mjs, tests/e2e/hr-workspace.spec.mjs, .github/workflows/*, .gitignore, docs/TEST_STRATEGY.md, services/*/pyproject.toml
Chromium E2E 설정과 HR 워크스페이스 브라우저 테스트를 추가했습니다. PR·수동 실행, Node 의존성 설치, Storybook 빌드, Playwright 실행과 작업 트리 검사를 구성했습니다. Python 테스트 extra와 로컬 uv 소스 매핑도 추가했습니다.
저장소 기준선과 필수 산출물
scripts/foundation-contract-core.mjs, tests/validate_repository.py, manifest.json, docs/product-technical-gap-baseline.md, docs/TRACEABILITY.md, docs/adr/*, ARCHITECTURE.md, CHANGELOG.md, README.md, docs/doctoring/REFERENCES.md
HR 워크스페이스·Storybook·Playwright·기준선 문서를 필수 산출물로 등록했습니다. 매니페스트 검증 기준을 develop으로 변경하고 maturity 및 ADR·추적성 상태를 갱신했습니다.

Estimated code review effort: 4 (Complex) | ~60 minutes

Merge Risk: 🟡 Moderate · up to 48ce4

The HR workspace can continue showing previously approved People fields after access is denied and may display an older response after a newer request, creating a bounded privacy and correctness risk; inconsistent service dependency versions may also break reproducible installation or integration. These issues should be fixed or explicitly accepted before merge.

Sequence Diagram(s)

sequenceDiagram
  participant Browser
  participant HRWorkspaceApp
  participant PeopleAPI
  participant JobAnalysisAPI
  Browser->>HRWorkspaceApp: 조회 폼 제출
  HRWorkspaceApp->>PeopleAPI: 목적 코드와 인증 헤더로 People 조회
  PeopleAPI-->>HRWorkspaceApp: fields 응답 또는 401/403 오류
  HRWorkspaceApp->>JobAnalysisAPI: 목적 코드와 인증 헤더로 snapshot 조회
  JobAnalysisAPI-->>HRWorkspaceApp: snapshot 응답 또는 오류
  HRWorkspaceApp-->>Browser: 결과 또는 오류 상태 렌더링
Loading

Suggested reviewers: cursoragent

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 15.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 20 functions across 9 files. (23 skipped:… Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 제목은 PR의 주요 변경 사항인 evidence-centered HR workspace slice 추가를 정확하고 간결하게 설명합니다.
Full details: Docstring Coverage

Explanation

Docstring coverage is 15.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 20 functions across 9 files. (23 skipped: 23 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/product-gap-baseline-workspace

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@devin-ai-integration devin-ai-integration 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.

Devin Review found 1 new potential issue.

Open in Devin Review

Comment thread apps/hr-workspace/app.js
@seonghobae
seonghobae marked this pull request as draft August 25, 2026 08:21
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