Conversation
The zipcode-search feature now uses the official ePost integrated search surface for postcode plus English-address lookups, ships a runnable helper, and locks the behavior with regression coverage plus aligned docs. A narrow compatibility fallback was also added to the KIPRIS XML parser so repository CI stays green on the current Python 3.14 environment where pyexpat is unavailable. Constraint: Must use official public ePost output instead of custom romanization rules Constraint: Repository verification must pass under the current local Python 3.14 toolchain Rejected: Implement our own Hangul-to-English address formatter | would diverge from the official postal rendering Rejected: Leave the KIPRIS parser untouched | npm run ci currently fails in this environment without the XML fallback Confidence: medium Scope-risk: moderate Reversibility: clean Directive: Keep zipcode-search tied to the official ePost integrated surface unless a new approved source is added Tested: python3 -m unittest scripts.test_zipcode_search Tested: node --test scripts/skill-docs.test.js Tested: python3 scripts/zipcode_search.py '서울특별시 강남구 테헤란로 123' Tested: npm run build Tested: PYTHONPATH=.:scripts python3 -m unittest scripts.test_patent_search Tested: npm run ci Not-tested: Live no-result and multi-result zipcode queries beyond the verified Teheran-ro example
|
Code review complete for PR #100 ( Recommendation: APPROVE Findings
Real Result
Concrete evidence
|
The feature branch already routed zipcode lookup through the integrated ePost English-address surface, but the helper scripts themselves still lacked a shebang and executable mode. This follow-up locks the packaging/CLI contract with a regression test and marks both entrypoints executable so the documented helper can be invoked directly as a script. Constraint: Issue #96 requires an executable zipcode_search.py helper in both the repo script wrapper and bundled skill helper Rejected: Document python3-only invocation and leave file modes unchanged | would not satisfy the executable-helper requirement or catch future regressions Confidence: high Scope-risk: narrow Reversibility: clean Directive: Keep the wrapper and bundled helper executable together because tests assert the pair as the public entrypoints Tested: python3 -m unittest scripts.test_zipcode_search; node --test scripts/skill-docs.test.js; python3 scripts/zipcode_search.py "서울특별시 강남구 테헤란로 123"; ./scripts/zipcode_search.py "서울특별시 강남구 테헤란로 123"; npm run build; PYTHONPATH=.:scripts python3 -m unittest scripts.test_patent_search; npm run ci Not-tested: Direct execution of the bundled zipcode-search/scripts/zipcode_search.py helper against the live endpoint
|
Follow-up landed for the approved issue #96 branch.
Verification rerun:
|
|
Code review complete for PR #100 ( Recommendation: APPROVE Findings
Real Result
Concrete evidence
|
…stays discoverable The approved Issue #96 branch already shipped the ePost English-address helper and executable shebang/mode fix. This follow-up only locks the last user-facing surface: docs and docs regression now mention the direct `./scripts/zipcode_search.py` entrypoint alongside the `python3` form, so the published guidance matches the actual executable helper behavior. Constraint: Keep the branch diff narrow and aligned with the already-approved Issue #96 scope Rejected: Add more helper code changes | executable behavior was already correct and verified Confidence: high Scope-risk: narrow Reversibility: clean Directive: Keep docs/tests aligned whenever helper entrypoint contracts change Tested: node --test scripts/skill-docs.test.js; python3 -m unittest scripts.test_zipcode_search; python3 scripts/zipcode_search.py "서울특별시 강남구 테헤란로 123"; ./scripts/zipcode_search.py "서울특별시 강남구 테헤란로 123"; npm run build; PYTHONPATH=.:scripts python3 -m unittest scripts.test_patent_search; npm run ci Not-tested: No additional live address samples beyond the documented Gangnam example
|
Follow-up landed on
Verification rerun:
|
|
Code review complete for PR #100 ( Recommendation: APPROVE Findings
Real Result
Concrete evidence
|
|
Verified the approved issue #96 follow-up on
Verification rerun:
|
|
Verdict: APPROVE Short reason Real Result
Concrete evidence
|
|
APPROVE Short reason: No blocking correctness, security, or maintainability issues found. The PR now ships the official ePost postcode + English-address helper on both documented invocation paths, and the adjacent KIPRIS Python 3.14 fallback stayed green in targeted and full CI verification. Real Result
Concrete evidence
|
Summary
zipcode_search.pyhelper that returns official ePost postcode + English address resultsVerification
python3 -m unittest scripts.test_zipcode_searchnode --test scripts/skill-docs.test.jspython3 scripts/zipcode_search.py "서울특별시 강남구 테헤란로 123"./scripts/zipcode_search.py "서울특별시 강남구 테헤란로 123"npm run buildPYTHONPATH=.:scripts python3 -m unittest scripts.test_patent_searchnpm run ci