---
# System prepended metadata

title: Uberhaus Minion Subgraph
tags: [Product]

---

---
tags: Product
---

# Uberhaus Minion Subgraph

https://github.com/HausDAO/UberHaus-Minion

factory summon
- similar to existing
- will have the extra 
    - usberhaus address
    - dao that owns it
    - haus token
    - string


proposed action - just like normal minion - can target the 


    struct Delegate {
        uint256 appointmentTime;
        uint256 retireTime;
        bool serving; 
        bool impeached; 
    }
    
    struct Action {
        address dao;
        uint256 value;
        address token;
        address to;
        address proposer;
        bool executed;
        bytes data;
    }
    
    struct Appointment {
        address dao;
        address nominee;
        uint256 retireTime;
        address proposer;
        bool executed;
    }
    
    
event ProposeAction(uint256 proposalId, address proposer);
- create action entity
- expands

event ProposeAppointment(uint256 proposalId, address proposer, address nominee, uint256 retireTime);
- proposal to nominate delegate
- give votings
- create appointment

event ExecuteAction(uint256 proposalId, address executor);
- update the action entity

event DelegateAppointed(uint256 proposalId, address executor, address currentDelegate);
- create delegate
- maybe update appointment
   
event Impeachment(address delegate, address impeacher);
- update delegate entity

event DoWithdraw(address targetDao, address token, uint256 amount);
- triggers withdraw event on targetdao (any other moloch into the minion)
    
event HausWithdraw(address token, uint256 amount);
- triggers withdraw event on uberhaus

event PulledFunds(address token, uint256 amount);
- uberhaus minion to child dao


account balance entities
- user dao balances tracked
- rewards pool balance


event RewardsClaimed(address currentDelegate, uint256 amount);
- xfer to delegate
- update balances

event Canceled(uint256 proposalId, uint8 proposalType);
- cancel action or appointment


event TokensCollected(address token, uint256 amountToCollect);
- collects to the balances and rewards pool
    
    
signal rage quit
- i as a member of child dao - need to figure out what they will get rewards based on shares and loot
- quits haus from uber house to quitter
- - update balances