## 2024-06-12

### Attendees

Core Team:

- Arel Rabinowitz ([@RLRabinowitz](https://github.com/RLRabinowitz))
- Christan Mesh ([@cam72cam](https://github.com/cam72cam))
- Jakub Martin ([@cube2222](https://github.com/cube2222))
- James Humphries ([@yantrio](https://github.com/Yantrio))
- Janos Bonic ([@janosdebugs](https://github.com/janosdebugs))

TSC:

- Igor Savchenko ([@DiscyDel](https://github.com/DicsyDel))
- Roger Simms ([@allofthesepeople](https://github.com/allofthesepeople))
- Roni Frantchi ([@roni-frantchi](https://github.com/roni-frantchi))
- Wojciech Barczynski ([@wojciech12](https://github.com/wojciech12))
- Zach Goldberg ([@ZachGoldberg](https://github.com/ZachGoldberg))

### Agenda

#### Vision of OpenTofu and it’s impact on the Organization

- Current status: as things are more stable, we can look for new directions
- What's our task moving forward:

  1. Maintaining status-quo
  2. Keep pace with Terraform
  3. Innovate IaC / bring new features

##### Discussion:

- Igor: outside influences may change this, but as a framework: innovation is good, but it can’t be to the detriment of people switching from Terraform/adopting OpenTofu.

- Janos: We would like to be able to talk longer-term features/functionality with the community.

- Igor: we should be talking about problems we want to solve.

- Roni: We started with OpenTofu being the only open-source alternative, the goal is winning hearts and minds. The roadmap ahead is the list of the most requested features.

- Arel: This is a good direction, but we would like to have a certain roadmap if possible. Terraform 1.10 has some very significant changes coming up based on a vision on how they want to do things.

- James: Do we drive decisions based on our own issue list, Terraform’s untouched 10 year old issues, Reddit... what do we care about? Old Terraform issues may lead us down the wrong path, for example.

- Kuba: We don’t necessarily need to map out everything ahead for a year, 6 months may do the trick.

- Igor: The main priority right now should be adoption. One-year goals are reasonable. We need to figure out why people don’t want to switch.

- Roger: We should try to get the info we can (e.g., from the TACOS).

- Wojciech: The TSC should take the Product Manager role (what are customers complaining about, etc)

- Zach:

  1. Real World Experience w/Large enterprises — they are generally in 2 buckets -
    1. Motivated by open source and eager for ammunition to make the case to spend $$ on moving to Tofu
    2. Cautious, in a “wait and see” position - not yet convinced tofu will be here in 5 years, don’t want to make a big bet on a direction that might not pan out for their org

       1. Often these customers are uneducated and have **incorrect opinions or bad facts** about how OpenTofu works or what migration means

   2. Goal: Be the state-of-the-art defacto IaC solution:

      1. Migration from TF has to be supported, first-class, easy for enterprise
      2. Tofu needs to provide motivation (i.e. stability, innovation, community) in addition to an on-ramp

   3. A strongly opinionated/narrow vision, e.g. “we want to build for XYZ” is possibly limiting our audience for now

- Igor: The vision for the next year is to focus on adoption. We’ll refine for a week, if nothing else comes up, we’ll adopt this.

- Roni: we may not need to define the technicalities of implementing the vision right now, that’s a separate discussion.

- Janos (async): We may have a perception problem, OpenTofu is publicly marketed as an “OpenSource Project” while Terraform is marketed as a “Product”. It may be possible to shift that by providing a platform for commercial support providers to list their offering.

#### Responsibilities between TSC / Tech Lead / Core team / Founders

1. Christian: our understanding is that Kuba until now would bring issues to the TSC’s attention.

2. Igor: Ideally, there should be checks and balances. The main role of the TSC is to make sure that the project is being developed in the interests of the community and making sure that OpenTofu is impartial. It is not the goal of the TSC to vote on individual issues. The TSC can vote on RFCs. Technically, we need to have a charter which we currently don’t have.

3. Christian: The new RFC is based on pull requests to make discussions easier. Question: do we want to go through the large amounts of work of writing an RFC before we ask the TSC, or should we ask the TSC with an enhancement that would need an RFC?

4. Wojciech: We want to keep the core team’s ability to bring ideas to the TSC. It would also good if Christian could join the TSC meetings since the written communication is not always fruitful.

5. Roni: The TSC would appreciate Christian being available for the meetings. Until now the RFC process was a place to ask a question “do we want this problem solved?” and there was a conflict with “how do we want the problem solved?”. We need this process defined better, especially with the problem to be solved in mind.

6. Christian: the current RFC process is very detailed (async: core team needs to communicate triage process)

7. Roger: The TSC steers the priorities of the core team.

8. Igor: The TSC capacity is very limited, we may not be able to go through all agenda items on time. Ideally, the core dev team is 80% independent. The core team can gather proposals and the TSC will do sanity checks. The TSC role is also to resolve conflicts.

9. James: I would like both the core team and the TSC to empower Christian to make these decisions because it will make the process easier. Christian joining the TSC meetings will make the process faster. Second issue: there is a difference between the TSC and the founders and Christian being in the middle should resolve surprise public communication happening.

10. Kuba: More concretely, Christian should propose a roadmap for feedback. Day-to-day Christian should make the decisions with an option to defer to the TSC. The option to escalate should also be open to core team members if they disagree with a decision. The biggest problem in this area so far was TSC capacity and the latency, which slowed down decision-making.

11. Christian: I can bring a rough roadmap that the TSC can then prioritize.

12. Roni: We trust Christian to make decisions in the day-to-day and when to escalate. This will allow the TSC to move a bit slower.

##### Decision

- Christian (OpenTofu Tech Lead) will join the TSC meetings.

#### Making the OpenTofu process public / outside communication

##### Discussion

- All outside communication should go through the Core Team and TSC
- Christian: We should move a lot of discussions to the public Slack
- Janos: As long as the communication is open, this shouldn’t be a problem in the future.

##### Decision

- General sentiment to move core-team discussions and related into public areas such as Slack/Github
- All outside communication should go through the Core Team and TSC

