Repository navigation
CRW-603: Decide forge-only DAG targets and readerless checks - #561
Merged
Merged
Conversation
|
You have reached your Codex usage limits for security reviews. Please try again later. |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
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.
CRW-603 chooses forge-only targets for new implementation acceptances (option C) and fail-closed comparison for a forge pull request whose merge-turn Service has no PR head reader. This PR appends the design decision and future interfaces; runtime behavior remains as built.
The comparison gives A, B and C the same four yardsticks: preserve fail-closed comparison, use recorded identity only, preserve the operating forge lane, and minimize the necessary change. It records the affected lookup predicates, test estimates, installation impact and remaining risks. C minimizes the product and persistence surface even though its fixture migration can exceed A's test delta. The follow-up is split into bounded fixture, acceptance and readerless comparison regions.
Acceptance evidence
docs/port/decisions.md: baseline source anchors and two A/B/C comparison tables. Includes the in-flight hold, landed carrier, pinned target, base-refresh identity and frozen-v1 swap-gate consequences.make testcoverage is supplied by hosted test parts on this PR head. No contract, CLI, output-field or golden change. Existing scheduler and coordination pages describe built behavior; their updates belong to the implementation.dev; exact-head CI and one-shot review status are recorded below before handoff.docs/port/decisions.mdchanges. No neighbouring implementation, live-service test, production-store inspection, installation, global setting change or merge.Verification
go run -tags dev ./cmd/crw-dev ci validate: PASS.go vet ./...: PASS.GOOS=darwin go vet ./...: PASS.make lint: PASS (default/dev/integration vet, staticcheck and formatting).git ls-files '*.go' | xargs gofmt -l: PASS, no output.git diff --check: PASS.make testandgo test ./...were not run, as assigned. Hosted CI covers the full suite.Red-before/green-after: not applicable to this docs-only decision. The baseline gaps are verified from the actual comparison/acceptance branches; future behavioral regression tests are specified, not added or claimed green here.
Hosted CI: run 37253359707,
pull_request, attempt 1, headc4f816c02452aa8c6036f898391f0babaae95c52: all ten jobs PASS (validate,secrets,go-product (lint),test-1throughtest-4,test-rest,dist, anddev-gate). The remaining automatically triggered same-head runs are checked before the receipt. No manual rerun.One-shot reviews: Devin completed with no findings; Codex code review completed; Codex security review skipped for usage limits. No review re-requested. Independent plan audit and fresh-reader check PASS; review-thread pagination is enumerated to the end before handoff.
Contract, scope and size
Frozen contract, refusal registry, schema, CLI, output fields and goldens: unchanged. The future slices reuse
disposition_conflictandmerge_target_unreadable; their behavioral/golden changes must be recorded in those implementation PRs.Files edited outside declared region: none. Implementation: 0 lines; tests: 0 lines; documentation: 194 lines added, 0 removed; generated data: 0. No tracked blob exceeds 1 MiB.
The frozen draft predates the built head comparison. The decision also corrects an input assumption: the integration observer uses forge compare; the existing
--checkoutoption belongs to base refresh. Latest dev is ahead; merge-tree has no conflict, so the branch is handed off without chasing dev. Coordinator refreshes its merge candidate. Source edits change no installed runtime or live operation. Coordinator owns merge and subsequent implementation.