Skip to content

Add daily feedback loop - #9

Closed
Jwaminju wants to merge 4 commits into
codex/hf-agent-pr-runnerfrom
codex/daily-feedback-loop
Closed

Add daily feedback loop#9
Jwaminju wants to merge 4 commits into
codex/hf-agent-pr-runnerfrom
codex/daily-feedback-loop

Conversation

@Jwaminju

@Jwaminju Jwaminju commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

요약

  • 번역 PR에 달린 미반영/수정 피드백을 하루 한 번 수집하고 적용하는 daily feedback loop를 추가했습니다.
  • PR별 hidden state comment를 memory/ledger로 사용해 처리한 댓글의 body hash, 처리 상태, 적용 SHA를 기록합니다.
  • 댓글이 수정되면 같은 comment id라도 body hash 차이로 다시 pending feedback으로 분류합니다.
  • skill report의 기본 산출물을 PR comment가 아니라 reports/pr-*/skill-report.md Markdown artifact로 정리했습니다.
  • Markdown report 안에는 사람이 읽는 요약과 hidden hf.agent.skill_run.v1 JSON block이 같이 들어갑니다.
  • PR comment publisher는 선택 사항입니다. 수동 runner에서 post_comment를 켜거나 daily loop에서 --publish-skill-comment를 줄 때만 Markdown report를 comment로 projection합니다.
  • 모든 현재 피드백이 처리되었고 최신 skill result가 pass이면 HF Agent Merge Ready comment만 upsert합니다.
  • collect-only 실행에서는 pending report만 만들고 PR에 merge-ready comment를 쓰지 않도록 막았습니다.

동작 흐름

  1. PR issue comment와 review line comment를 수집합니다.
  2. agent state comment에 기록된 processed comment hash와 비교해 new 또는 edited feedback만 pending으로 분류합니다.
  3. --apply가 없으면 pending-feedback.json만 생성하고 종료합니다.
  4. --apply가 있으면 pending feedback을 번역 파일에 반영하고 state comment를 갱신합니다.
  5. 피드백 처리 후 run_skill_review.py --stage all을 재실행하고 reports/pr-*/skill-report.md를 생성합니다.
  6. skill aggregate와 모든 skill 결과가 pass이면 HF Agent Merge Ready comment를 upsert합니다.

Skill report 계약

  • 기본 output: Markdown text file, reports/pr-<number>/skill-report.md
  • machine metadata: Markdown 안의 hidden hf.agent.skill_run.v1 JSON block
  • PR comment: optional projection, source of truth 아님
  • workflow artifact: pending-feedback.json, skill-report.md

TDD / 테스트

  • uv run --with pytest pytest tests/test_hf_agent_workflow.py tests/test_daily_feedback_loop.py tests/test_feedback_apply.py tests/test_feedback_state.py -> 21 passed
  • python3 -m py_compile scripts/hf_agent/run_skill_review.py scripts/hf_agent/publish_pr_comment.py scripts/hf_agent/daily_feedback_loop.py scripts/hf_agent/feedback_apply.py scripts/hf_agent/feedback_state.py scripts/run_local_review.py
  • ruby -e 'require "yaml"; ARGV.each { |path| YAML.load_file(path); puts "#{path}: ok" }' .github/workflows/daily-feedback-loop.yml .github/workflows/translation-pr-run.yml .github/workflows/daily-translation.yml

E2E 검증: PR #143

Stacked PR

후속 과제

  • Add Korean humanize skill #10 humanize skill PR을 최신 Markdown report 계약 위로 rebase
  • apply mode에서 diff size 제한과 markdown/frontmatter 검증 추가
  • line review comment publisher 추가
  • state comment pagination
  • ambiguous feedback 처리 시 hf-agent:needs-human 라벨 자동 부여

@Jwaminju
Jwaminju force-pushed the codex/daily-feedback-loop branch from c9d77e0 to 983038e Compare June 15, 2026 08:40
@Jwaminju
Jwaminju force-pushed the codex/daily-feedback-loop branch from 5397550 to 7ba9f4f Compare June 15, 2026 11:18
@Jwaminju Jwaminju closed this Jul 17, 2026
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