Open Questions
Design decisions that need resolution. These aren’t blockers — they’re the interesting problems.
Resolved
- Revenue Model → Revenue Model (cooperative bills clients, members get salary, surplus hours weight annual dividend)
- Internal rate / senior vs junior pay → Salary handles compensation, dividend weighting handles surplus value
- Dividend cadence → Annually
- Dividend weighting → surplus_hours × salary_hourly_rate (based on 32hr/wk)
- Organization type → Employee-owned cooperative (not nonprofit, since dividend distribution is core)
- Auction cadence → Weekly batch. Projects accumulate during the week, mechanism runs once (e.g., Friday), members know their next week’s allocation by end of day.
- Bidding = opting in → Members can only be assigned projects they bid on. This preserves autonomy. If you want to hit 32, bid on enough work.
- Multiple projects per member → Yes. The mechanism’s output is a bundle of projects per member, not a single assignment.
- Project granularity → No minimum. Small tasks are part of the weekly batch like everything else.
- Below-32 weeks → Salary is unaffected. Member just gets less weight in the dividend pool. The 32 is a target and mutual commitment, not a penalty trigger.
- Project pool includes cooperative work → Biz dev, mentoring, internal tooling, documentation, proposals — all biddable through the same mechanism. Helps fill floors during slow client weeks.
- Pro bono queue → Pro Bono Queue. Community orgs, mutual aid, open source work enters the auction during slow weeks. Same mechanism, same credited hours, no client revenue. Solves the “not enough work” problem gracefully.
- Not enough client work → Pro bono queue + cooperative work provide a buffer. The 32-hour floor remains achievable even in slow periods.
- Client acquisition → Biz dev is a biddable project in the mechanism, not a separate role.
Mechanism Design
Phase 1 vs Phase 2 (Reframed)
With weekly batch, the “two phases” are how you’d explain the solver’s behavior, not actual sequential steps. The mechanism solves one optimization: assign all projects such that everyone is in the 32-40 band and total cost is minimized. Members control autonomy through which projects they bid on.
Remaining question: what’s the optimization objective? Pure cost minimization? Or does it factor in member preferences / satisfaction somehow?
Collusion
VCG is vulnerable to collusion. If Alice and Bob agree to inflate bids on each other’s preferred projects, they can game the Vickrey price. In a small cooperative, social dynamics might prevent this naturally — but is there a structural safeguard?
What If Nobody Wants a Project?
If zero members bid on a project, it can’t be assigned. It either rolls to the next week (hoping someone bids), gets broken into smaller pieces, or the cooperative declines the client work. This is a healthy signal — if nobody wants to do it, maybe the cooperative shouldn’t have taken it.
Bid Visibility
Can members see each other’s bids? Sealed bids preserve VCG truthfulness properties. Open bids create social pressure and gaming opportunities. Probably sealed — but does the cooperative publish results after allocation?
Hours and Pricing
Tracking Actuals
Do we track actual hours spent? Arguments for: accountability, calibration data, identifying chronic over/under-bidders. Arguments against: surveillance vibes, administrative overhead, trust erosion. Current lean: optional self-reporting for calibration, not mandatory.
Smoothing Across Weeks
Is the 32-40 band per calendar week, or smoothed over a longer period? Per-week is simple but rigid. A rolling average (e.g., 128-160 hours per month) handles uneven project flow better. Current lean: per-week for simplicity, revisit if it creates problems.
Cooperative Structure
Legal Structure
Employee-owned cooperative is the direction (Subchapter T allows tax-advantaged patronage dividends). Specific structure TBD — worker cooperative, LLC with co-op operating agreement, or hybrid.
Membership
How do people join? Leave? Is there a trial period? What happens to in-flight projects when someone leaves?
Governance
One member, one vote? Weighted by tenure? How are cooperative-level decisions (rates, benefits, new members) made vs. project-level decisions (what to bid on)?
Technical
Platform
What does the auction platform look like? Web app? API? Integration with project management tools?
The Solver
The weekly batch allocation is a constrained optimization problem. What algorithm actually runs it? PVCG provides the theoretical framework, but the implementation needs to handle: capacity constraints (32-40), bidding opt-in, multiple projects per member, and Vickrey pricing across the whole batch.