Skip to content

Work Log - 2026-05-13 - Collective Zero Pipeline

🎯 Focus

  • Understand the host/collective expense workflow by simulating it in the OpenCollective staging environment
  • Launch OpsDev.nz as Collective Zero under SMUNZ fiscal hosting (staging first, then prod)
  • Prepare the story for NZTechRally on Friday

✅ Completed

Beancount Reconciliation — OFX Imported

Bank statements for 2026-04-14 to 2026-05-13 have been exported from ANZ, copied to the statements directory, and imported. Two uncategorized transactions identified:

Date Description Amount Status
2026-05-04 Metaname Topup (DNS registrar) -$100.00 Needs category — Expenses:Hosting:Metaname exists
2026-05-07 Cookie&Me — DevOpsDays 2027 marketing -$100.00 Needs category — see workflow simulation below

Both will be categorized after we complete the staging workflow simulation.

Decision: Cookie&Me Accounting Treatment

SMUNZ paid $100 from the Call account for DevOpsDays 2027 marketing cookies. This is SMUNZ contributing seed funding to OpsDev.nz's project — we don't need the money back, we want to show we've supported the collective's launch.

Treatment: Expenses:Marketing with metadata tags for attribution:

  collective: "opsdev-nz"
  project: "devopsdays-2027"

This is not a transfer or receivable. It's SMUNZ funding its first collective's project. When OpsDev.nz has its own OpenCollective funds later, this becomes an in-kind contribution record.

🔧 In Progress

Staging Workflow Simulation — The Core Learning Goal

Instead of just creating the collective and moving on, we're going to simulate the real host/collective expense workflow in the staging environment:

OpsDev.nz (collective)                SMUNZ (fiscal host)
        │                                    │
        │  1. Submit $100 cookie expense ──→ │
        │                                    │  2. Reviews & approves
        │                                    │  3. Pays from Call account
        │                                    │  4. Records in Beancount
        │                                    │     Expenses:Marketing {collective: opsdev-nz, project: devopsdays-2027}

Steps this evening:

  1. SMUNZ side — Ensure the SMUNZ fiscal host exists in staging (run oc-opsdevnz hosts --file staging-host.yaml --staging)
  2. OpsDev.nz side — Create OpsDev.nz as a collective in staging with apply_to_host: true
  3. OpsDev.nz submits the cookie expense via the OpenCollective staging UI
  4. SMUNZ approves the expense in the OC staging admin
  5. SMUNZ records the payment in Beancount
  6. Validate — bean-check passes, the two uncategorized transactions now have rules
  7. Repeat in prod if the staging run succeeds

John will authenticate using the 1Password staging token to run the OC commands.

NZTechRally Story

The story for Friday is now more concrete: - We launched Collective Zero by simulating the full host/collective lifecycle on OpenCollective staging - We paid the first expense (cookies for DevOpsDays 2027 marketing) through the platform workflow - OpsDev.nz wants to help organise DevOpsDays Wellington 2027 and demonstrate the agent-driven fiscal host model - We're seeking volunteers and funding

🧠 Notes

Why Staging First

The OpenCollective staging environment (staging.opencollective.com) is a sandbox that mirrors production. It's the right place to: - Test the collective creation flow without affecting the real SMUNZ host - Learn the expense submission/approval/payout workflow as both host AND collective - Validate the config-as-code approach (YAML → CLI → OC API) - Identify gaps in the oc-opsdevnz module before we need it in production

What We'll Learn

  • How does a collective submit an expense in OC?
  • What does the host see when reviewing an expense?
  • How does the payout work — does OC handle the bank transfer, or do we?
  • What metadata does OC capture for expenses (project attribution, receipts, etc.)?
  • How does this map back to Beancount?

Open Questions

  • Does OC staging support Wise/PayPal payouts like prod, or is it simulated?
  • Do we need to set up the SMUNZ host as "active" in staging, or does it already exist?
  • How does the expense approval workflow interact with the "Discover" plan limits?

⏳ Next

  1. Authenticate using 1Password staging token
  2. Verify SMUNZ host exists in staging (oc-opsdevnz whoami startmeup-nz --staging)
  3. Create OpsDev.nz collective in staging via YAML + oc-opsdevnz collectives --staging
  4. Simulate the expense workflow — OpsDev.nz submits, SMUNZ approves
  5. Add rules for the two uncategorized transactions in anz_rules.toml
  6. Re-import and validate Beancount
  7. Repeat in prod if staging succeeds
  8. Blog post on startmeup.nz site
  9. NZTechRally on Friday