Skip to content

移除衝突檢討、viewer 改 127.0.0.1 bind (remove-conflict-review-from-fast-mvp predecessor) - #90

Merged
monkey1sai merged 2 commits into
mainfrom
codex/openspec/remove-conflict-review-from-fast-mvp
May 21, 2026
Merged

monkey1sai merged 2 commits into
mainfrom
codex/openspec/remove-conflict-review-from-fast-mvp

Conversation

@monkey1sai

@monkey1sai monkey1sai commented May 21, 2026 •

Copy link
Copy Markdown
Owner

Summary

Predecessor change remove-conflict-review-from-fast-mvp for the fast-ifc-link-demo-loop。純減法 + 一行 compose port bind + docs/spec 退役 note。為 successor fast-ifc-link-demo-loop(同機 IFC ifc-ready → 同步下載 → 轉檔 → viewer 連結點開看 stream)清乾淨 baseline。

詳細設計見 docs/superpowers/specs/2026-05-21-fast-mvp-loop-overall-design.md 與 openspec/changes/remove-conflict-review-from-fast-mvp/{proposal,design,tasks}.md。

What changed

  • Coordinator:刪 highlight/selection/annotation Socket.IO handlers、刪 getReviewIssues/createAnnotation/review-bootstrap endpoint、registerReviewNamespace 改 signature、/ui step bar 5→3 + guided cards 衝突檢討 3 張刪 + raw Socket emit 按鈕刪、dev-console.test.ts / sessions.test.ts 對齊
  • Viewer:刪 IssuePanel / EventLogPanel / types/issues 整檔、reviewSocket emit{Highlight,Selection,Annotation} 拆掉、coordinatorClient.getReviewBootstrap 刪、Window.tsx 清 issue state/methods/render、DemoControlPanel 4 個 issue/annotation props 改 optional + default、verify-session-first-contract 改驗 session-first → stream-config
  • Compose:compose.host-kit.yml viewer.ports 改 127.0.0.1:5173:5173(對應 memory webrtc-1on1-entrypoint-via-coordinator-ui 的 1:1 邊界)
  • Docs:AGENTS.md §5.4 / §5.5 / §7.4 + bim-review-coordinator/CLAUDE.md Role 段加退役 note
  • OpenSpec:review-session-request-lifecycle ## MODIFIED Coordinator exposes lifecycle event audit log,加 implementation status note(collaboration event 排除清單 wording 保留作 archive compatibility)

23 files changed / +96 / -625 lines

Blast radius

GitNexus pre-impact:registerReviewNamespace / IssuePanel / DemoControlPanel 全 LOW(impactedCount=0)。無 HIGH/CRITICAL。

Verification(5 級)

Level Result
L1 coordinator npm run verify 11 files / 166 tests passed
L1 viewer npm run build passed (2.52s)
L1 viewer npm run test:session-first passed
L1 root pytest tests 9 passed
L2 openspec validate remove-conflict-review-from-fast-mvp --strict valid
L2 openspec validate --specs --strict 26 passed / 0 failed
L3 git diff --stat 影響面 23 files / +96 / -625 = expected
L4 docker compose up --build coordinator viewer 兩 container Up
L4 netstat 5173 0.0.0.0:5173 已消失,僅剩 127.0.0.1:5173
L4 docker exec coordinator /health status=ok
L4 docker exec /ui 字串斷言 「步驟 ③ / 3」true、「標示問題位置 / 建立審查標註 / guidedHighlightIssue」全 false
L5 mcp__claude-in-chrome navigate /ui permission denied → 改以 L4 container 內 fetch 字串斷言充分覆蓋

Test plan

  • L1-L4 全綠
  • PR Reviewer approve
  • GitHub Actions CI 全綠
  • merge 後 sync archive 至 openspec/changes/archive/2026-05-21-remove-conflict-review-from-fast-mvp/
  • 更新 docs/plans/AI-BIM-governance-saas-roadmap-2026-05.md (AGENTS.md §1.6)
  • worktree closeout(§0.1)
  • gate 釋放 → 進 successor fast-ifc-link-demo-loop

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Changes

    • Removed conflict review, issue highlighting, and annotation collaboration features from the fast MVP workflow
    • Removed related socket event handlers and demo console controls for advanced review features
    • Simplified demo UI to 3 core workflow steps
    • Updated viewer service port binding to localhost only
  • Documentation

    • Added comprehensive fast MVP design specifications and implementation task documentation

Review Change Stack

monkey1sai and others added 2 commits May 21, 2026 19:04
…mvp loop brainstorming spec

- 新增 openspec/changes/remove-conflict-review-from-fast-mvp/{proposal,design,tasks}.md
  與 specs/review-session-request-lifecycle/spec.md(## REMOVED Requirements 框架)
- 新增 docs/superpowers/specs/2026-05-21-fast-mvp-loop-overall-design.md
  涵蓋兩個 change 切分(Approach B)、Section 1/2/3 設計、/goal acceptance condition

僅 design phase 落地,implementation tasks(Change 1 §1-§14)等使用者 review
brainstorming spec 後透過 /goal 啟動;Change 2 OpenSpec change folder 等
predecessor archived 後再建(NoSuccessorWhilePredecessorOpen gate)。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
remove-conflict-review-from-fast-mvp 完整實作 (predecessor for fast-ifc-link-demo-loop)。
純減法 + 一行 compose port bind + docs/spec 退役 note。

Coordinator:
- 刪 highlight/selection/annotation Socket.IO handlers
- 刪 BimControlClient.getReviewIssues / createAnnotation + ReviewIssue type
- 刪 /api/model-versions/:id/review-bootstrap endpoint + safeIssues helper
- 改 registerReviewNamespace signature(不再吃 bimControlClient)
- dev-console.html step bar 5 步改 3 步、刪 3 張 guided card、刪 raw emit 按鈕
- dev-console.js / inline script 對應函式刪
- tests/dev-console.test.ts + tests/sessions.test.ts 對齊新行為

Viewer:
- 刪 IssuePanel / EventLogPanel components + types/issues(整檔)
- 刪 viewer bimControlClient.getReviewIssues / coordinatorClient.getReviewBootstrap
- 刪 reviewSocket emit{Highlight,Selection,Annotation} / demoDefaults.{demoIssueId,buildDemoHighlightItem}
- Window.tsx 清 reviewIssues state、_onIssueClick、issue/annotation methods、IssuePanel render、DataChannel issue branch
- DemoControlPanel 4 個 issue/annotation props 改 optional(JSX 按鈕等 Change 2 viewer 重做時整段刪)
- verify-session-first-contract 改驗 session-first → stream-config 鏈(review-bootstrap 已退役)

Compose:
- compose.host-kit.yml viewer.ports 改 127.0.0.1:5173:5173(對應 webrtc-1on1 邊界)

Docs:
- AGENTS.md §5.4 / §5.5 / §7.4 加退役 note
- bim-review-coordinator/CLAUDE.md Role 段加退役 note

OpenSpec:
- specs/review-session-request-lifecycle/spec.md ## MODIFIED Coordinator exposes lifecycle event
  audit log;加 implementation status note,排除清單 wording 保留作 archive compatibility

Verification (5 級):
- L1 coordinator npm run verify: 11 files / 166 tests passed
- L1 viewer build + test:session-first: passed
- L1 root pytest tests: 9 passed
- L2 openspec validate remove-conflict-review-from-fast-mvp --strict: valid
- L2 openspec validate --specs --strict: 26 passed / 0 failed
- L3 git diff --stat: 23 files / +96 / -625 lines — 影響面 = expected
- L4 docker compose up --build coordinator viewer: 兩 container Up
- L4 netstat: 0.0.0.0:5173 已消失,僅剩 127.0.0.1:5173
- L4 docker exec coordinator /health: status=ok
- L4 docker exec /ui 字串斷言:「步驟 ③ / 3」=true、「標示問題位置/建立審查標註/guidedHighlightIssue」=false
- L5 mcp__claude-in-chrome navigate: permission denied,改以 L4 container 內 fetch 字串斷言代替

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 21, 2026 11:47
@monkey1sai
monkey1sai merged commit 9e57015 into main May 21, 2026
2 of 3 checks passed
@monkey1sai
monkey1sai deleted the codex/openspec/remove-conflict-review-from-fast-mvp branch May 21, 2026 11:47
@coderabbitai

coderabbitai Bot commented May 21, 2026 •

Copy link
Copy Markdown
Contributor

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 2d81cf35-019a-417f-8dda-362e855850a2

📥 Commits

Reviewing files that changed from the base of the PR and between 2b87799 and eee08bd.

📒 Files selected for processing (27)
  • AGENTS.md
  • bim-review-coordinator/CLAUDE.md
  • bim-review-coordinator/src/app.ts
  • bim-review-coordinator/src/public/dev-console.html
  • bim-review-coordinator/src/public/dev-console.js
  • bim-review-coordinator/src/services/bimControlClient.ts
  • bim-review-coordinator/src/socket/reviewNamespace.ts
  • bim-review-coordinator/src/types.ts
  • bim-review-coordinator/tests/dev-console.test.ts
  • bim-review-coordinator/tests/sessions.test.ts
  • compose.host-kit.yml
  • docs/superpowers/specs/2026-05-21-fast-mvp-loop-overall-design.md
  • openspec/changes/remove-conflict-review-from-fast-mvp/design.md
  • openspec/changes/remove-conflict-review-from-fast-mvp/proposal.md
  • openspec/changes/remove-conflict-review-from-fast-mvp/specs/review-session-request-lifecycle/spec.md
  • openspec/changes/remove-conflict-review-from-fast-mvp/tasks.md
  • web-viewer-sample/scripts/verify-session-first-contract.mjs
  • web-viewer-sample/src/Window.tsx
  • web-viewer-sample/src/clients/bimControlClient.ts
  • web-viewer-sample/src/clients/coordinatorClient.ts
  • web-viewer-sample/src/clients/demoDefaults.ts
  • web-viewer-sample/src/clients/reviewSocket.ts
  • web-viewer-sample/src/components/DemoControlPanel.tsx
  • web-viewer-sample/src/components/EventLogPanel.tsx
  • web-viewer-sample/src/components/IssuePanel.tsx
  • web-viewer-sample/src/types/issues.ts
  • web-viewer-sample/src/types/review.ts

📝 Walkthrough

Walkthrough

This pull request removes the "conflict review" feature set (issue highlighting, selection, annotation, and related collaborative UI) from the fast MVP runtime. The removal spans coordinator Socket.IO handlers and API endpoints, viewer components and client methods, demo UI elements, type definitions, and includes comprehensive design, proposal, task, and specification-delta documentation to formalize the decision and provide implementation/verification guidance. Network binding is restricted to localhost-only for the viewer service.

Changes

Remove Conflict Review from Fast MVP

Layer / File(s) Summary
Type System & Contracts Cleanup
bim-review-coordinator/src/types.ts, web-viewer-sample/src/types/*.ts, web-viewer-sample/src/clients/*
Remove ReviewIssue and ReviewBootstrap exported types from both coordinator and viewer; add optional quality_metrics_summary field to Artifact; clean type imports from client modules.
Coordinator API & Socket Simplification
bim-review-coordinator/src/app.ts, bim-review-coordinator/src/socket/reviewNamespace.ts, bim-review-coordinator/src/services/bimControlClient.ts
Delete /api/model-versions/:modelVersionId/review-bootstrap endpoint, BimControlClient.getReviewIssues() and createAnnotation() methods; simplify registerReviewNamespace signature to drop bimControlClient; reduce heartbeat handler to basic ack payload; retain session validation helper.
Viewer Client & Socket Simplification
web-viewer-sample/src/clients/bimControlClient.ts, web-viewer-sample/src/clients/coordinatorClient.ts, web-viewer-sample/src/clients/reviewSocket.ts, web-viewer-sample/src/clients/demoDefaults.ts, web-viewer-sample/src/components/DemoControlPanel.tsx
Remove getReviewIssues() and getReviewBootstrap() client methods; delete emitHighlight, emitSelection, emitAnnotation from ReviewSocketClient; simplify demoDefaults exports; make DemoControlPanel callbacks optional with no-op defaults.
Viewer Window Component & State Refactor
web-viewer-sample/src/Window.tsx
Remove reviewIssues state field, issue highlight tracking fields, _loadReviewBootstrapFromCoordinator helper, and _onIssueClick handler; simplify _bootstrapReview to use stream-config artifacts only; remove issue-related state initialization; delete demo highlight/annotation actions and highlightPrimsResult response handling.
Dev Console UI & Demo Simplification
bim-review-coordinator/src/public/dev-console.html, bim-review-coordinator/src/public/dev-console.js, bim-review-coordinator/tests/dev-console.test.ts
Reduce step bar from 5 steps to 3; remove interaction lab cards and socket buttons for highlight/selection/annotation; delete emitHighlight, emitSelection, emitAnnotation helpers; clean event message mappings; update test to verify removed UI elements.
Network Binding & Configuration
compose.host-kit.yml
Restrict viewer service port to localhost binding (127.0.0.1:5173) instead of all interfaces.
Test & Contract Verification Updates
bim-review-coordinator/tests/sessions.test.ts, web-viewer-sample/scripts/verify-session-first-contract.mjs
Replace socket session operations test with narrower joinSession-only validation; add negative assertions for getReviewBootstrap, _loadReviewBootstrapFromCoordinator, and ReviewIssue; update session-first contract to require getReviewSession before getStreamConfig.
Change Design & Proposal Documentation
openspec/changes/remove-conflict-review-from-fast-mvp/design.md, openspec/changes/remove-conflict-review-from-fast-mvp/proposal.md
Define technical rationale, code removal grep specs, networking changes, OpenSpec REMOVED requirements format, validation checklists, and detailed removal scope across coordinator/viewer/docs with explicit exclusions and capabilities status.
Implementation Task Checklist & Verification
openspec/changes/remove-conflict-review-from-fast-mvp/tasks.md
Provide 14-section stepwise workflow covering setup, symbol discovery, impact analysis, deletion tasks, networking changes, documentation alignment, spec validation, L1/L3/L4 verification, container/network execution, end-to-end UI walkthrough, commit/PR/post-merge procedures.
OpenSpec Spec-Delta & Lifecycle Updates
openspec/changes/remove-conflict-review-from-fast-mvp/specs/review-session-request-lifecycle/spec.md
Update lifecycle endpoint spec to define lifecycle-only response, explicitly exclude highlightRequest, selectionUpdate, annotationCreated, finalReviewEvent from that endpoint, document required lifecycle event types, add implementation-status note for fast-mvp change.
Documentation Archive & Retirement Notices
AGENTS.md, bim-review-coordinator/CLAUDE.md
Add retirement notices marking collaboration flow, issue flow, and review data authority sections as fast-MVP-removed; add dated deprecation notice to CLAUDE.md documenting removed Socket.IO handlers, endpoints, and archive compatibility for legacy event logs.
Fast MVP Loop Overall Design & Successor Sketch
docs/superpowers/specs/2026-05-21-fast-mvp-loop-overall-design.md
Add comprehensive brainstorming document defining end-to-end fast-MVP IFC-to-viewer pipeline, happy-path flow, edge cases, two-change sequence approach with Change 1 (removal) and Change 2 (successor API/UI redesign), acceptance conditions, docker-compose expectations, verification procedures, and next-steps checklist.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • monkey1sai/AI-BIM-governance#1: Both PRs modify bim-review-coordinator's review socket event handling and session validation logic in the same namespace registration and heartbeat code paths.
  • monkey1sai/AI-BIM-governance#34: Both PRs update the OpenSpec "review-session-request-lifecycle" spec to exclude collaboration event types like highlightRequest, selectionUpdate, and annotationCreated from the lifecycle-only endpoint.
  • monkey1sai/AI-BIM-governance#88: Both PRs modify compose.host-kit.yml viewer service port binding to restrict access to localhost.

🐇 A rabbit hops through the code with glee, ✨
Removing conflicts with vim and spree, 🗑️
Issues fade, fast MVP's clean!
Stream and socket, session supreme. 🎯

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/openspec/remove-conflict-review-from-fast-mvp

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR trims the fast-MVP baseline by removing conflict-review collaboration features (issues/highlight/annotation flows) from both the coordinator and the web viewer, restricts the viewer’s Docker port binding to loopback-only, and updates docs/OpenSpec artifacts to record the retirement in preparation for the successor fast-ifc-link-demo-loop.

Changes:

  • Coordinator: remove review-bootstrap + issue/annotation-related APIs and Socket.IO handlers; adjust namespace registration signature; update dev-console UI and tests.
  • Viewer: remove Issue/EventLog panels and issue types; remove review-bootstrap client paths; simplify bootstrap to rely on stream-config only; update contract verification script.
  • Docs/OpenSpec: add predecessor change proposal/design/tasks and spec delta; mark collaboration flows as retired; compose viewer binds to 127.0.0.1.

Reviewed changes

Copilot reviewed 27 out of 27 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
web-viewer-sample/src/Window.tsx Removes issue/review-bootstrap state and handlers; loads artifacts solely from stream-config.
web-viewer-sample/src/types/review.ts Removes ReviewBootstrap type and issue dependency.
web-viewer-sample/src/types/issues.ts Deletes ReviewIssue type.
web-viewer-sample/src/components/IssuePanel.tsx Deletes issue list panel UI.
web-viewer-sample/src/components/EventLogPanel.tsx Deletes live event log panel UI.
web-viewer-sample/src/components/DemoControlPanel.tsx Makes retired demo callbacks optional (with defaults).
web-viewer-sample/src/clients/reviewSocket.ts Removes highlight/selection/annotation emit helpers from client interface.
web-viewer-sample/src/clients/demoDefaults.ts Removes demo issue/highlight constants and helper builder.
web-viewer-sample/src/clients/coordinatorClient.ts Removes getReviewBootstrap API client method.
web-viewer-sample/src/clients/bimControlClient.ts Removes getReviewIssues API client method.
web-viewer-sample/scripts/verify-session-first-contract.mjs Updates contract assertions to enforce session-first → stream-config and absence of review-bootstrap/issue paths.
compose.host-kit.yml Binds viewer port to 127.0.0.1:${VIEWER_PORT:-5173}:5173.
bim-review-coordinator/src/app.ts Removes review-bootstrap endpoint + safeIssues helper; updates registerReviewNamespace call signature.
bim-review-coordinator/src/socket/reviewNamespace.ts Removes highlight/selection/annotation handlers and downstream bim-control dependency.
bim-review-coordinator/src/services/bimControlClient.ts Removes issue fetch + annotation persistence methods.
bim-review-coordinator/src/public/dev-console.html Removes step ④/⑤ and issue/annotation guided cards + raw emit buttons.
bim-review-coordinator/src/public/dev-console.js Removes emitHighlight/emitSelection/emitAnnotation functions.
bim-review-coordinator/src/types.ts Removes coordinator-side ReviewIssue type.
bim-review-coordinator/tests/sessions.test.ts Updates socket validation tests to focus on joinSession.
bim-review-coordinator/tests/dev-console.test.ts Updates UI assertions to ensure retired collaboration UI is absent and step count is 3.
bim-review-coordinator/CLAUDE.md Adds retirement note for removed collaboration flows/endpoints.
AGENTS.md Marks collaboration and issue visualization sections as retired for fast MVP.
openspec/changes/remove-conflict-review-from-fast-mvp/proposal.md Documents rationale, scope, and impact for the predecessor change.
openspec/changes/remove-conflict-review-from-fast-mvp/design.md Captures design decisions, verification levels, and risk notes.
openspec/changes/remove-conflict-review-from-fast-mvp/tasks.md Adds task checklist for implementation/verification/archival workflow.
openspec/changes/remove-conflict-review-from-fast-mvp/specs/review-session-request-lifecycle/spec.md Spec delta: records MODIFIED requirement with implementation-status note about retirement.
docs/superpowers/specs/2026-05-21-fast-mvp-loop-overall-design.md Adds brainstorming overall design doc tying predecessor/successor plan together.
Comments suppressed due to low confidence (1)

web-viewer-sample/src/components/DemoControlPanel.tsx:232

  • Similarly, defaulting the optional demo actions (onHighlightWorld, onEmitCoordinatorHighlight, onCreateAnnotation) to no-ops leaves their UI actions callable but ineffective. It’s safer to gate the rendering/disabled state of the related buttons/steps on the handler being provided so the UI reflects what’s actually supported in this build.
        onHighlightWorld = () => undefined,
        onFocusWorld,
        onClearHighlight,
        onEmitCoordinatorHighlight = () => undefined,
        onCreateAnnotation = () => undefined,

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 13 to +20
export function registerReviewNamespace(
io: Server,
store: SessionStore,
eventLog: EventLog,
bimControlClient: BimControlClient,
): void {
// eventLog 保留為 future lifecycle audit 拓展,join/leave/heartbeat 路徑暫未直接寫入。
void eventLog;

Comment on lines +223 to 227
onLoadBootstrap = () => undefined,
onConnectSocket,
onOpenStage,
onLoadingState,
onGetChildren,

> **文件性質**:brainstorming `superpowers/brainstorming` skill 階段的 design artifact,不是 OpenSpec spec(authoritative spec 在 `openspec/changes/<change-id>/`)。
> **日期**:2026-05-21
> **發起人**:使用者(`xshiujj@gmail.com`)
monkey1sai added a commit that referenced this pull request May 21, 2026
…s + roadmap (#91)

PR #90 implementation merged (squash 9e57015) 之後的 sync/archive cleanup。
- git mv openspec/changes/remove-conflict-review-from-fast-mvp/ → openspec/changes/archive/2026-05-21-remove-conflict-review-from-fast-mvp/
- openspec/specs/review-session-request-lifecycle/spec.md 加 implementation status note 至 "Coordinator exposes lifecycle event audit log" 主 requirement(對齊 change 內 ## MODIFIED Requirements;exclusion wording 保留作 archive compatibility)
- docs/plans/AI-BIM-governance-saas-roadmap-2026-05.md 加 archive 摘要(AGENTS.md §1.6;26 capability 保持 26,1 modified,fast-mvp loop predecessor gate 已開)

openspec validate --specs --strict = 26 passed / 0 failed

NoSuccessorWhilePredecessorOpen gate cleared → 進 successor `fast-ifc-link-demo-loop`。

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.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: eee08bd2e9

ℹ️ 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".

Comment on lines +228 to +232
onHighlightWorld = () => undefined,
onFocusWorld,
onClearHighlight,
onEmitCoordinatorHighlight,
onCreateAnnotation,
onEmitCoordinatorHighlight = () => undefined,
onCreateAnnotation = () => undefined,

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Remove inert demo actions instead of defaulting handlers to no-op

Defaulting onHighlightWorld, onEmitCoordinatorHighlight, and onCreateAnnotation to no-op functions means the panel still presents actionable review controls even when the caller does not wire them. In this commit, Window.tsx stops passing those handlers, so these buttons silently do nothing while UI text still implies real Socket.IO/DataChannel side effects, which can mislead manual demo/verification runs into thinking review actions were exercised when no request/event was sent.

Useful? React with 👍 / 👎.

monkey1sai added a commit that referenced this pull request May 21, 2026
)

PR #92 (implementation, squash fb9dea3) merged 之後的 OpenSpec sync/archive cleanup。
- git mv openspec/changes/fast-ifc-link-demo-loop/ → openspec/changes/archive/2026-05-21-fast-ifc-link-demo-loop/
- openspec/specs/{local-coordinator-ifc-ready-intake-boundary, conversion-webhook-lifecycle,
  demo-fast-mvp-orchestration, documentation-source-of-truth}/spec.md 加 implementation
  status note 引用 archive folder 內完整 ADD requirement bodies
- docs/plans/AI-BIM-governance-saas-roadmap-2026-05.md 加 archive 摘要(AGENTS.md §1.6;26
  capability 保持 26,4 modified status notes,fast-mvp loop predecessor + successor 完整)

openspec validate --specs --strict = 26 passed / 0 failed

fast-mvp loop 兩段 archive 完成:
- predecessor `remove-conflict-review-from-fast-mvp`:PR #90/#91 (9e57015 / 4c892d0)
- successor `fast-ifc-link-demo-loop`:PR #92 (fb9dea3)

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
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.

2 participants