chore(conformance): refresh #146 onto merged #145 - #147
Merged
Conversation
Git compares safe.directory entries against its own forward-slash real paths, so the native Windows separators the harness passed never matched. The protected Windows platform job therefore rejected the differently owned Chat workspace as dubious ownership and failed the Chat checkout at phase1.stage.checkouts.chat.failed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
# Conflicts: # docs/phase1-conformance.md # phase1-conformance.lock.json # src/phase1-conformance-lock.test.ts
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
The safe.directory normalization is applied consistently across the affected scripts and is backed by targeted unit/guard tests, with lock/workflow/doc digests updated accordingly.
Pull request overview
This PR performs a history-preserving refresh of the Phase 1 conformance branch (#146) by bringing in the already-accepted Windows git safe.directory path-separator fix from merged #145, along with the corresponding lock/workflow/doc digest updates.
Changes:
- Introduces
toGitSafeDirectoryPath()and routes allgit -c safe.directory=...overrides through it across the Phase 1 conformance scripts. - Adds unit/guard tests ensuring safe.directory path normalization and enforcing the normalization wrapper for all safe.directory template usages in the relevant scripts.
- Updates the conformance lock, workflow digests, and documentation tables to reflect the new committed bytes.
File summaries
| File | Description |
|---|---|
| src/phase1-conformance.test.ts | Adds path-normalization unit test and a guard ensuring safe.directory overrides use toGitSafeDirectoryPath(...). |
| src/phase1-conformance-lock.test.ts | Updates expected harness authority snapshot values for the refreshed harness revision/tree and file digests. |
| src/client-v1-conformance-workflow.test.ts | Updates workflow-string assertions to expect normalized safe.directory usage. |
| scripts/phase1-schema-v2-producer.mjs | Routes safe.directory overrides through toGitSafeDirectoryPath for repository layout resolution, clone, and identity reads. |
| scripts/phase1-conformance.mjs | Routes safe.directory overrides through toGitSafeDirectoryPath for exact-checkout cloning. |
| scripts/phase1-conformance-lock.mjs | Adds toGitSafeDirectoryPath() and applies it to safe.directory overrides in authority Git invocations. |
| scripts/phase1-conformance-lock.d.mts | Exposes the new helper in the TypeScript declaration file. |
| phase1-conformance.lock.json | Updates the pinned harness revision and related authority file digests to the refreshed harness state. |
| docs/phase1-conformance.md | Updates the documented SHA-256 table entries to match refreshed committed bytes (and removes outdated Windows-history note). |
| .github/workflows/client-v1-conformance.yml | Updates pinned byte-size/SHA-256 assertions for the refreshed conformance script bytes. |
Review details
- Files reviewed: 10/10 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
History-preserving integration step requested by the maintainer for #145 → #146.
This PR targets the existing #146 topic branch, not main. It brings exact accepted main
8daf729a143897fffe79bc2f2722f0385b72fd23(#145, CI34100801729) into #146 headb0f988f0dcd10b91a00f80b764fe9ae0a4b2777bwithout rewriting either signed history. The Windows behavior authority must remain reachable, while #146 retains Cavebc310e9753783678014086ed6f7ef7d3fb797967and SDK source-contract fixture2d1cb15fcb47ff6577ccae1186c74ded69b82fc8.Merge only with a merge commit and expected source head
8daf729a143897fffe79bc2f2722f0385b72fd23. After this integration, #146 requires fresh exact-head CI and a combined lock review before merging to main. This synchronization is not SDK #38 evidence, protected workflow approval, or package publication authorization.