--- tags: v3, blacksmiths, show and tell --- # v3 Blacksmiths Show and Tell (3/18/2022) Our first v3 Blacksmiths Show and Tell on 3/18/2022. ## Subgraph (Sam) - Was initially doing things to support Rages, but it's been easier to get through things for a v1. - Through most of the events, and as dekan works on the CLI and tests functions flow to the subgraph - Working toward getting contract toward an audit lock - `Dao` entity -- has everything related to the DAO - Will have metadata related to the DAO and can query and get with the DAO - Right now just the name that's used in summoning - As we define metadata we'll add to this - `Proposal` entity - Includes all steps for proposals - Includes calculations around voting period to help front end - `RageQuit` entity: - Includes info related to RQ - `Shaman` entity: - If DAO has a Shaman, this'll also include permission level - `EntityTransaction` entity: - How we do polling - This subgraph allows us to test entire DAO lifecycle in development - What can we do for processing details? If we set up a standard schema we can tell if something comes from our UI or formatted similar to our UI? - Sugbraph support for Escrow: May need to add additional events related to the `TributeEscrow` contract - How would we know a proposal comes from here? - `Proposal` will have subfield of `Escrow` with data about the escrow - Add transaction hash for each proposal action - **Questions:** - How would we update Poster data? If it has a different schema how would this work? - If metadata is collection of posts, could get most recent posts - Do we want to handle this from subgraph? - Do we have a single `metadata` entity related to the DAO? - Query DAO -> get metadata ordered by createdAt ascending ## Component Library Spec and Rage Updates (Jord and Andy) - **Component Spec:** - Reviewed the spec Jord created - Minimal JSX: - Use global configs in Stitches, and leverage defaults in components so that we minimize amount of props - Low Custom Styling: - Don't intend to support completely custom styling - We won't be a custom library, value is around creating DAOhaus specific UI informed by DH logic and functionality - Support for color theming, but get the scope and restrict it so that we know the bounds - Functional and Declarative: - Links to our React styleguide - Stateless and declarative -- goal is to keep code readable - Focus on using building blocks that are composable - Minimally Invasive: - Be mindful of package size and focus on modularity and composability - Bundle macro components separately with named exports - Rage and experiment on exporting with named exports to grab specific things for importing - Macros: - Do we wrap the SDK and do the fetching or do we pass the data in after a fetch? - Having a single pattern may be stronger, but it'll require some hacking here to determine this - Consider all the states of the macro components in a design review and speccing process - Can include in the handoff processes and also leverage Storybook - **Rage Updates for Component Library:** - Moved the components into a separate package - Took basic Summoner App and has been adding in components from the Figma - Still in early stages - Duplicating the Summoner form - Questions about the Figma and level of detail: - Unsure what we can get from the Figma designs - Runthrough on Figma CSS ## Baal CLI (Dekan) - Currently in the Baal hardhat repo - Secondary interface (CLI vs. UI) - `statusprop`, `memberprop` -- can run in the command line such as `npx hardhat memberprop --help` to see available options - How do we use this? - Pull down Baal repo -> install - Setup an account via running `generate` -> fund the generated address -> populate envs - `npx hardhat vote prop --dao {address} -id {id} --approve true --network rinkeby` - Can then vote on the prop - Output logs the object - Great for testing and as an emergency if we're having UI issues - Can help with scaffolding and creating specs for popular propoals, and can help with testing ## CI and Ops (Keating) - Pushed to Monday ## Local Dev Environment (Keating) - Pushed to Monday ## Rage Reports - ## Project Management Processes Overview - ## Next Steps - [ ] jp to help document subgraph (if useful) - [ ] jp to help document `nx` processes and env - [ ] jp to add Component Library Spec to Wiki - [ ] Align on `details` schema for subgraph - [ ] Deeper dive into the proposal details in subgraph - [x] Subgraph support for `TributeEscrow` contract - [ ] Figma runthrough: design and devs - [ ] Rage on Storybook and Ladle to see which we like better