9.2 Project Board & GraphQL Sync CLI
chinwag board push | pull | statusComplete reference for chinwag board init, push, sync, and scoreboard, plus the GitHub Projects v2 and Linear GraphQL synchronization schemas.
9.2 Project Board & GraphQL Sync CLI
chinwag board push | pull | status
chinwag board synchronizes your local .chinwag/state.crdb task graph and Executable Tickets (<org>/chinwag-tasks.git in the Chinwag Encrypted Artifact Store) with GitHub Projects v2 and Linear in under 200ms at 0 Cr (100% Free) · with zero inbound webhooks (INV-ZERO-WEBHOOKS-01).
100% Webhook-Free Executable Tickets & Cryptographic "Proof-of-Green" Board Gate (INV-CF-ARTIFACTS-EXECUTABLE-TICKETS-01 & INV-NO-FAKE-DONE-01)
- Zero Inbound Webhooks / Zero Webhook Secrets (
INV-ZERO-WEBHOOKS-01):<org>/chinwag-tasks.gitin the Chinwag Encrypted Artifact Store is mutated synchronously viaK1 + K2-signed Chinwag Mesh RPCs and Git Smart HTTP (art_v1_tokens), and synced with Linear / GitHub Projects client-side via the developer's existing local MCP (@linear/mcp-server,@modelcontextprotocol/server-github, orghCLI) or in-runner viachinwag-ciOIDC. - 1:1 Live Ticket Capsules (
refs/chinwag/tasks/<ISSUE-ID>/capsule): Every Linear Issue (ENG-402) and GitHub Project Item (#142) is backed by<org>/chinwag-tasks.gitin the Chinwag Encrypted Artifact Store. 0sSynchronous Cold-Start Hydration onchinwag start <ISSUE-ID>(Todo/In Progress): Whenchinwag start ENG-402runs, The Chinwag Encrypted Artifact Store synchronously spawns a zero-copyrepo.fork()sandbox (<org>/<project>--task-ENG-402.git), queries.codegraphfor affected symbols, attaches matching.chinwag/regressions/*Tombstone cassettes, and pre-warmsrefs/chinwag/tasks/ENG-402/shadow-kv.- Synchronous Cryptographic "Proof-of-Green" Board Gate (
INV-NO-FAKE-DONE-01· Automatic200msSnap-Back on FakeDone): Moving a Linear or GitHub Projects card toIn RevieworDonerequires aK1 + K2-signedTaskCompletionProofV1atrefs/chinwag/tasks/ENG-402/proofprovingchinwag-cigreen (exit_code == 0) onhead_worktree_oid,0Tombstone regression failures, andReflex-1/ Vision-3 Visual Geometry pass (or humanK1hardware passkey override). UnverifiedDonetransitions are synchronously rejected at the Git ref + local MCP layer and automatically snap the Linear / GitHub card back to"In Progress"within200mswhile posting a.cwcard.pngdiagnostic receipt. - Zero-Rate-Limit, Firewall-Proof Git-Native Board Sync (
<1ms): Query the entire Linear/GitHub sprint board in<1msviagit fetchorrepo.fileson<org>/chinwag-tasks.gitwith zero GraphQL rate limits and full offline / Rung-5 resilience.
Command Reference
# 1A. Initialize a 100% private GitHub Projects v2 board & install .chinwag/templates/* (0 Cr, public: false default)
chinwag board init --github --org acme-corp --private-repo acme-corp/platform --live
# 1B. Initialize an opt-in Dual-Repo Public Velocity Showcase board (--public-board + H_board redaction gate)
chinwag board init --github --org emunlabs --private-repo emunlabs/chinwag-private --public-repo emunlabs/chinwag --public-board --live
# 1C. Initialize a Linear team workspace with the Chinwag template pack (0 Cr)
chinwag board init --linear --team ENG --live
# 2. Push a signed state transition to GitHub Projects v2 or Linear in <200ms (0 Cr)
chinwag board push --task TASK-204 --status "In Verification" --chips-provisional 18
# 3. Reconcile bidirectional board state with <org>/chinwag-tasks (0 Cr)
chinwag board sync --bidirectional
# 4. Render the terminal MO-GRPO Chips (◈) & 7-Day Code Survival (SURV) scoreboard (0 Cr)
chinwag board scoreboard --window 14d --format table
# 5. Run the card-move-driven cross-surface orchestrator (0 Cr)
chinwag board sync-loop --repo . --interval-ms 1000
Auto-Provisioned Templates, Native Immutable Timestamps & Insights
- Local Schema & Issue Template Pack:
chinwag board initwrites.chinwag/templates/github-project-v2-schema.json,.chinwag/templates/linear-template.json, and.github/ISSUE_TEMPLATE/01..04.yml, and (when--liveis passed) provisions the 5 canonicalStatuscolumns (01→05), two turnkey views (01 · Kanban Execution BoardinBOARD_LAYOUT/ Linearboardand02 · Velocity & DORA LedgerinTABLE_LAYOUT/ Linearlist), and all 7 custom fields (Δ Speedup vs. DORA,DORA Baseline,Chinwag Cycle Time,Net Hours Saved,Execution Mode,Active Seats,Cryptographic Receipt) via GraphQL:
{
"schema": "chinwag.linear.template.v1",
"default_view_layout": "BOARD_LAYOUT",
"views": [
{
"name": "01 · Kanban Execution Board",
"layout": "board",
"group_by": "workflow_state"
},
{
"name": "02 · Velocity & DORA Ledger",
"layout": "list",
"group_by": "label"
}
]
}
- Native Immutable
Created,Updated&ClosedTimestamp Fields: Automatically enables GitHub Projects v2's native immutableCreated(CREATED),Updated(UPDATED), andClosed(CLOSED) system timestamp fields plusSub-issues progress(SUB_ISSUES_PROGRESS), providing third-party verifiable cycle-time timestamps (Createdatt_claim→Closedatt_ship) that cannot be backdated or spoofed. - Executive
Insights& BoardWorkflows: Configures GitHub Projects Insights and Linear Insights over numericSUM(Net Hours Saved)andΔ Speedup vs. DORA/Execution Mode, while pairing native board Workflows withchinwag board sync-loopandchinwag-ci surface-gate(Pillar 12). A.509Confidential Seat Pinning: Confidential seats locked to private repositories (e.g.,@PATENT) are bound via theirA.509Agent PKIX passport strictly to--private-repo(exit 78if targeted at--public-repo).
GitHub Projects v2 GraphQL Mutation Schema
When chinwag board push updates a task's status, lease holder, or MO-GRPO ◈ Chip score, it executes a batched GraphQL v4 mutation against https://api.github.com/graphql using your fine-grained project token:
mutation ChinwagSyncProjectV2Item(
$projectId: ID!
$itemId: ID!
$statusFieldId: ID!
$statusOptionId: String!
$seatFieldId: ID!
$seatInstance: String!
$chipsFieldId: ID!
$chipsValue: Float!
$survivalFieldId: ID!
$survivalPercent: Float!
) {
updateStatus: updateProjectV2ItemFieldValue(
input: {
projectId: $projectId
itemId: $itemId
fieldId: $statusFieldId
value: { singleSelectOptionId: $statusOptionId }
}
) {
projectV2Item { id updatedAt }
}
updateOwnerSeat: updateProjectV2ItemFieldValue(
input: {
projectId: $projectId
itemId: $itemId
fieldId: $seatFieldId
value: { text: $seatInstance }
}
) {
projectV2Item { id }
}
updateChips: updateProjectV2ItemFieldValue(
input: {
projectId: $projectId
itemId: $itemId
fieldId: $chipsFieldId
value: { number: $chipsValue }
}
) {
projectV2Item { id }
}
updateSurvival: updateProjectV2ItemFieldValue(
input: {
projectId: $projectId
itemId: $itemId
fieldId: $survivalFieldId
value: { number: $survivalPercent }
}
) {
projectV2Item { id }
}
}
Linear GraphQL Synchronization Schema
For teams on Linear, chinwag board push maps task states and attaches a structured, signature-verified attachment metadata block via issueUpdate:
mutation ChinwagSyncLinearIssue(
$issueId: String!
$stateId: String!
$attachmentUrl: String!
$subtitle: String!
) {
issueUpdate(
id: $issueId
input: { stateId: $stateId }
) {
success
issue { id identifier updatedAt }
}
attachmentLinkURL(
issueId: $issueId
url: $attachmentUrl
title: "Chinwag Signed Verification Receipt (✓ed25519)"
subtitle: $subtitle
) {
success
}
}
Next Steps
- Next: CLI Reference:
chinwag pair&chinwag triad - Ready for
<200mszero-cost GitHub & Linear sync? Reserve Your Organization Credit Pack →
chinwag tasks & task
Complete command-line reference for bootstrapping <org>/chinwag-tasks, claiming disjoint file-scope leases, fanning out sub-tasks, and completing verified work.
chinwag pair & triad
Complete command-line reference for launching cross-model Driver + Reviewer pairs and Driver + QA + Adversarial Reviewer triads in isolated Shadow jj workspaces.