Compare commits
2 Commits
a5db6dc26e
...
openwiki/u
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c67c549f48 | ||
| 37616a9316 |
24
.github/workflows/openwiki-update.yml
vendored
24
.github/workflows/openwiki-update.yml
vendored
@@ -14,16 +14,21 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Check out repository
|
- name: Check out repository
|
||||||
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v4
|
||||||
|
with:
|
||||||
|
# Full history so `openwiki code --update` can diff HEAD against the
|
||||||
|
# commit it last documented; a shallow clone hides that commit and the
|
||||||
|
# update runs against an empty change summary.
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Set up Node.js
|
- name: Set up Node.js
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
|
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
|
||||||
with:
|
with:
|
||||||
node-version: "22"
|
node-version: "22"
|
||||||
|
|
||||||
- name: Install OpenWiki
|
- name: Install OpenWiki
|
||||||
# mermaid + jsdom are optional; they add high-fidelity validation of Mermaid diagrams. Remove if your wiki has none.
|
# mermaid + jsdom are optional; they add high-fidelity validation of Mermaid diagrams. Remove if your wiki has none.
|
||||||
run: npm install --global openwiki@0.2.3 mermaid@11.16.0 jsdom@29.1.1
|
run: npm install --global openwiki mermaid@11.16.0 jsdom@29.1.1
|
||||||
|
|
||||||
- name: Run OpenWiki
|
- name: Run OpenWiki
|
||||||
run: openwiki code --update --print
|
run: openwiki code --update --print
|
||||||
@@ -32,8 +37,19 @@ jobs:
|
|||||||
GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}
|
GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}
|
||||||
OPENWIKI_MODEL_ID: gemini-3.6-flash
|
OPENWIKI_MODEL_ID: gemini-3.6-flash
|
||||||
|
|
||||||
|
|
||||||
|
- name: Restore protected workflow file
|
||||||
|
# `openwiki code --update` regenerates this file from its internal
|
||||||
|
# template on every run, which silently drops the guard above (see
|
||||||
|
# https://github.com/langchain-ai/openwiki/issues/423). Until that's
|
||||||
|
# fixed upstream, discard whatever the agent just wrote here so the
|
||||||
|
# guard always survives, regardless of whether the run above
|
||||||
|
# succeeded or failed.
|
||||||
|
if: always()
|
||||||
|
run: git checkout -- .github/workflows/openwiki-update.yml
|
||||||
|
|
||||||
- name: Create OpenWiki update pull request
|
- name: Create OpenWiki update pull request
|
||||||
uses: peter-evans/create-pull-request@22a9089034f40e5a961c8808d113e2c98fb63676 # v7
|
uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1
|
||||||
with:
|
with:
|
||||||
add-paths: |
|
add-paths: |
|
||||||
openwiki
|
openwiki
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"updatedAt": "2026-08-08T10:49:34.141Z",
|
"updatedAt": "2026-08-08T18:09:49.042Z",
|
||||||
"command": "update",
|
"command": "update",
|
||||||
"gitHead": "bbc6ad60802ba4e19218d1529c927c67389d973d",
|
"gitHead": "37616a93166c2ac0a46eedab276164f811043f4e",
|
||||||
"model": "gemini-3.6-flash",
|
"model": "gemini-3.6-flash",
|
||||||
"status": "complete",
|
"status": "complete",
|
||||||
"language": "en"
|
"language": "en"
|
||||||
|
|||||||
@@ -108,7 +108,7 @@ sequenceDiagram
|
|||||||
Client->>Hub: JoinLobby(lobbyCode)
|
Client->>Hub: JoinLobby(lobbyCode)
|
||||||
Hub->>Hub: GetAuthenticatedUserId()
|
Hub->>Hub: GetAuthenticatedUserId()
|
||||||
Hub->>Service: JoinGameAsync(lobbyCode, userId, connectionId)
|
Hub->>Service: JoinGameAsync(lobbyCode, userId, connectionId)
|
||||||
Hub-->>Client: Broadcast "PlayerJoined" (GameStateDto)
|
Hub-->>Client: Broadcast PlayerJoined (GameStateDto)
|
||||||
```
|
```
|
||||||
*Sequence diagram showing user authentication via REST and subsequent authenticated SignalR WebSocket connection.*
|
*Sequence diagram showing user authentication via REST and subsequent authenticated SignalR WebSocket connection.*
|
||||||
|
|
||||||
|
|||||||
@@ -96,3 +96,6 @@ SlipItIn.slnx
|
|||||||
### `Documentation & Specifications` (`Agents/`)
|
### `Documentation & Specifications` (`Agents/`)
|
||||||
- **`Agents/Architecture.md`**: Specification document defining backend security and client MVVM/stability patterns.
|
- **`Agents/Architecture.md`**: Specification document defining backend security and client MVVM/stability patterns.
|
||||||
- **`Agents/ProjectPlan.md`**: Project plan breakdown covering development phases.
|
- **`Agents/ProjectPlan.md`**: Project plan breakdown covering development phases.
|
||||||
|
|
||||||
|
### `Automation & CI/CD` (`.github/workflows/`)
|
||||||
|
- **`.github/workflows/openwiki-update.yml`**: Scheduled GitHub Actions workflow executing `openwiki code --update` via Gemini Flash (`gemini-3.6-flash`) to keep repository documentation in sync with source changes.
|
||||||
|
|||||||
@@ -95,15 +95,15 @@ sequenceDiagram
|
|||||||
GameBoardVM->>Hub: SubmitSlip(gameId, playerAId, cardId)
|
GameBoardVM->>Hub: SubmitSlip(gameId, playerAId, cardId)
|
||||||
Hub->>Service: SubmitSlipAsync()
|
Hub->>Service: SubmitSlipAsync()
|
||||||
Service->>DB: Set PlayerCard.IsUsed = true
|
Service->>DB: Set PlayerCard.IsUsed = true
|
||||||
Hub-->>Challenger: Broadcast "SlipSubmitted"
|
Hub-->>Challenger: Broadcast SlipSubmitted
|
||||||
|
|
||||||
Note over Challenger: Suspects invalid phrase
|
Note over Challenger: Suspects invalid phrase
|
||||||
Challenger->>GameBoardVM: ChallengeCardAsync(card)
|
Challenger->>GameBoardVM: ChallengeCardAsync(card)
|
||||||
GameBoardVM->>Hub: ChallengeSlip(gameId, playerBId, cardId)
|
GameBoardVM->>Hub: ChallengeSlip(gameId, playerBId, cardId)
|
||||||
Hub->>Service: CreateChallengeAsync()
|
Hub->>Service: CreateChallengeAsync()
|
||||||
Service->>DB: Insert SlipChallenge (Status = Pending)
|
Service->>DB: Insert SlipChallenge (Status = Pending)
|
||||||
Hub-->>Challenger: Broadcast "SlipChallenged"
|
Hub-->>Challenger: Broadcast SlipChallenged
|
||||||
Hub-->>Slipper: Unicast "ChallengeReceived"
|
Hub-->>Slipper: Unicast ChallengeReceived
|
||||||
|
|
||||||
Note over Slipper: Notification Overlay Displays
|
Note over Slipper: Notification Overlay Displays
|
||||||
Slipper->>GameBoardVM: ResolveChallengeAsync(challengeId, approved)
|
Slipper->>GameBoardVM: ResolveChallengeAsync(challengeId, approved)
|
||||||
@@ -116,7 +116,7 @@ sequenceDiagram
|
|||||||
else approved == true (Justified Catch)
|
else approved == true (Justified Catch)
|
||||||
Service->>DB: Set Challenge.Status = Approved
|
Service->>DB: Set Challenge.Status = Approved
|
||||||
end
|
end
|
||||||
Hub-->>Challenger: Broadcast "ChallengeResolved"
|
Hub-->>Challenger: Broadcast ChallengeResolved
|
||||||
```
|
```
|
||||||
*Sequence diagram showing phrase submission, challenge initiation, target notification, and penalty resolution.*
|
*Sequence diagram showing phrase submission, challenge initiation, target notification, and penalty resolution.*
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user