Skip to content

feat: explain inaccessible client upload paths - #84

Merged
airmang merged 4 commits into
airmang:mainfrom
adity982:agent/explain-uploaded-file-paths
Aug 16, 2026
Merged

feat: explain inaccessible client upload paths#84
airmang merged 4 commits into
airmang:mainfrom
adity982:agent/explain-uploaded-file-paths

Conversation

@adity982

Copy link
Copy Markdown
Contributor

요약

Detect ChatGPT-style /mnt/user-data/... upload paths before normal workspace resolution and return a typed, redacted validation error with actionable Korean guidance to save the file locally and pass its real path.

관련 이슈

Fixes #75

변경 종류

  • 버그 수정
  • 기능
  • 문서
  • 리팩터링

체크리스트

  • Focused workspace/protocol tests pass (4 parametrized cases)
  • ruff check --select E9,F passes for changed modules/tests
  • scripts/check_public_hygiene.py passes
  • Full Windows pytest run: 5 existing platform-specific failures (path trailing-space semantics, symlink privilege, and POSIX mode assertions)
  • CHANGELOG.md updated (not needed for this focused error-handling change)
  • 문서 갱신이 필요한지 확인했습니다.

Detect ChatGPT/Claude-style /mnt/user-data/... upload paths before
normal workspace resolution and return a typed, redacted
CLIENT_UPLOAD_PATH_UNAVAILABLE validation error with actionable Korean
guidance to save the file locally and pass its real path.

Ported from the original pre-rename hwpx_mcp_server layout (PR airmang#84) to
the canonical hwpx_automation package.

Fixes airmang#75

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@airmang
airmang force-pushed the agent/explain-uploaded-file-paths branch from dd27b70 to 063cdd5 Compare August 16, 2026 06:06
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@airmang

airmang commented Aug 16, 2026

Copy link
Copy Markdown
Owner

감사합니다 @adity982! 이 PR이 만들어진 뒤 저장소가 python-hwpx-automation으로 개명되고 패키지 레이아웃이 src/hwpx_mcp_serversrc/hwpx_automation으로 이동하면서 충돌 상태가 됐습니다. maintainer edit 권한으로 원 변경을 현재 레이아웃에 그대로 리베이스했습니다 (원 작성자 authorship 유지, 063cdd5):

  • src/hwpx_automation/workspace.py_candidate에서 /mnt/user-data 감지 (원 diff와 동일 로직)
  • src/hwpx_automation/errors.pyCLIENT_UPLOAD_PATH_UNAVAILABLE 코드/제안/validation 분류
  • src/hwpx_automation/runtime.py — 업로드 경로 전용 메시지 분기
  • 테스트 2건 포팅 (protocol + workspace, 파라미터라이즈 3케이스 포함)
  • CHANGELOG 항목 추가 (별도 커밋)

로컬 검증: pytest tests/test_protocol_errors.py tests/test_workspace.py tests/test_error_suggestions.py 82 passed, ruff check --select E9,F 통과, scripts/check_public_hygiene.py OK, 도구 계약 렌더 체크 OK. CI 통과 후 머지하겠습니다.

@airmang
airmang marked this pull request as ready for review August 16, 2026 06:33
@airmang
airmang self-requested a review as a code owner August 16, 2026 06:33
@airmang
airmang merged commit c0013ef into airmang:main Aug 16, 2026
14 checks passed
@airmang

airmang commented Aug 16, 2026

Copy link
Copy Markdown
Owner

머지되었습니다 — 첫 기여 감사합니다 @adity982! 업로드 경로 안내는 다음 릴리스에 포함됩니다. (#75 종료)

airmang added a commit that referenced this pull request Aug 16, 2026
…ease-approved

Owner-approved automation-only patch train. Coordinates: candidate
7.0.2/7.0.2 (canonical/compat), core 6.1.0 and plugin 2.0.0 unchanged,
contract hash 34a91560759dc47a unchanged (no floor movement, no tool
surface change). currentPublic stays 6.1.0/7.0.1/2.0.0 until remote
truth is observed per docs/release-runbook.md.

Content: Windows save repair #98 (#99), upload-path guidance #75 (#84),
core-6.1.0 type-gate alignment (#100). CONTRIBUTORS.md introduced —
first external contributions (@adity982 code, @rainforest80 diagnosis).
Also removes a conflict-marker line that slipped into CHANGELOG during
the #84 merge.

test_release_state_handoff's in-flight invariant only accepted trains
that move core or plugin; an automation-only train moves neither, so
the difference check now spans all three coordinates and the released
branch additionally asserts automation equality.

Gates run locally: release_coordinates --verify ok,
check_tag_release_gate --dry-run passed for v7.0.2,
check_transition_identity ok, check_current_public_remote fully
observed, check_public_hygiene ok (after pruning stale 2.x wheels from
untracked dist/), release/contract/capability suites 78 passed. mypy/
pyright/full suite/compat matrix run on push CI before the tag.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.

클라이언트 업로드 경로(/mnt/user-data/...) 감지 시 안내 에러 제공

2 participants