Commit 0f5c880
fix: address 6 merge-blocking issues — exception normalization, label PATCH, §6 direction, artifacts, test hermeticity, state semantics
1. Exception normalization: github_request() now wraps URLError into
RepoArchitectError alongside HTTPError, so all GitHub API transport
failures propagate through the same error contract. Tests verify both
error types produce RepoArchitectError deterministically.
2. Existing-issue label application: added set_github_issue_labels() that
PATCHes labels on existing issues via the GitHub Issues API. The
existing-issue update path now calls this after posting the re-scan
comment, so labels_applied truly means applied — not just computed.
3. dependency_contract.json §6 alignment: reversed layer_order and
allowed_direction to match charter §6 (runtime → core → knowledge →
agents → interface). Lane 5 detection removed the false-positive
agents→interface check (allowed per §6) and added interface→runtime
and agents→runtime (prohibited per §6.1). New test confirms
agents→interface is NOT flagged.
4. Generated artifacts removed: .agent/ and docs/repo_architect/issues/
added to .gitignore; tracked files removed with git rm --cached.
5. Dedupe-failure test hermeticity: test now patches github_request via
unittest.mock instead of hitting the real GitHub API. Added separate
tests for URLError and HTTPError normalization in github_request.
6. State-reporting nits: dedupe_result on creation failure changed from
"new" to "create_failed". _MAX_VIOLATIONS_DISPLAY promoted to
module-level constant. IssueAction.dedupe_result docstring updated
to list all valid states.
Co-authored-by: Steake <530040+Steake@users.noreply.github.com>1 parent 4fd6334 commit 0f5c880
File tree
12 files changed
+166
-15461
lines changed- .agent
- docs/repo_architect
- issues
- tests
12 files changed
+166
-15461
lines changedThis file was deleted.
0 commit comments