Skip to content

feat(projection): carry accepted architecture changes - #102

Merged
Ancienttwo merged 5 commits into
mainfrom
codex/projection-accepted-change-protocol-impl
Aug 9, 2026
Merged

feat(projection): carry accepted architecture changes#102
Ancienttwo merged 5 commits into
mainfrom
codex/projection-accepted-change-protocol-impl

Conversation

@Ancienttwo

Copy link
Copy Markdown
Owner

Outcome

  • adds typed ProjectionRequestV1.acceptedChange without changing v1 protocol identity
  • fails closed on partial, unsupported, extra-property, or non-canonical acceptance input
  • forwards accepted authority through projection and adoption fixed-point paths
  • prepares aligned archctx / archctx-contracts 0.4.1 release surfaces

Cross-repo contract

This unblocks repo-harness from resolving an ArchContext major semantic delta from human-action-required to refresh-required through the stable provider protocol.

Verification

  • Node 24.19.0 (package engine: >=24 <26; host Node 26 intentionally excluded)
  • focused contracts: 176 pass
  • full bun run verify: 1218 pass, 0 fail
  • Mermaid verification: 3 architecture diagrams
  • strict contract and exact-subject AcceptanceReceipt: pass

Review authority

The user explicitly instructed this delivery to skip Claude review. The contract-authorized typed user_waiver is recorded; no external Claude verdict is claimed.

Ancienttwo and others added 4 commits August 10, 2026 02:30
Co-authored-by: codex <codex@openai.com>
Co-authored-by: Codex <codex@openai.com>
Publish-ready 0.4.1 candidate with fail-closed request validation and stable refresh signaling. Verified under Node 24 because the package engine intentionally excludes the host Node 26 runtime.

Co-authored-by: Codex <codex@openai.com>
Records the exact-subject user waiver requested in this task without claiming an external Claude pass.

Co-authored-by: Codex <codex@openai.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7e217c43e4

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

{
"name": "@archcontext/contracts",
"version": "0.4.0",
"version": "0.4.1",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Refresh bun.lock for the 0.4.1 workspace versions

The package manifests are bumped to 0.4.1, but bun.lock still records every internal workspace at 0.4.0. Both install jobs in .github/workflows/verify.yml run bun install --frozen-lockfile, and bun install --help defines that flag as “Disallow changes to lockfile,” so a clean CI checkout cannot reconcile these manifests and will fail before verification. Regenerate and commit bun.lock alongside the version bump.

Useful? React with 👍 / 👎.

const canonicalExistingByPath = new Map(simulatedByPath);
for (const file of canonicalFirst.files) canonicalExistingByPath.set(file.path, file);
const canonical = buildArchitectureDocsProjection(root, generatedAt, profile, [...canonicalExistingByPath.values()]);
const canonical = buildArchitectureDocsProjection(root, generatedAt, profile, [...canonicalExistingByPath.values()], acceptedChange);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Consume the accepted reference before the fixed-point rebuild

For an approved adopt request that has both an adoption candidate and a valid accepted semantic delta, canonicalFirst.files contains a manifest whose semantic baseline is already the current model. Passing the same acceptedChange into this second rebuild therefore reaches classifyArchitectureMajorChange with no remaining delta and throws architecture-major-change-accepted-reference-without-semantic-delta, so the daemon mutation is never planned. The accepted authority needs to be consumed against the old baseline rather than reapplied after the simulated manifest advances it.

Useful? React with 👍 / 👎.

@Ancienttwo
Ancienttwo merged commit b9af244 into main Aug 9, 2026
8 checks passed
@Ancienttwo
Ancienttwo deleted the codex/projection-accepted-change-protocol-impl branch August 11, 2026 09:49
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.

1 participant