How to Fix CCRS

TL;DR

Haha, we don't know! CCRS is a closed-source system. Without visibility into the components that make up CCRS, we can not analyze why they work the way that they do. OpenTHC's only recourse is to observe and report the behavior to identify patterns in the behavior of CCRS. OpenTHC also wants to make specific recommendations on how to improve CCRS's technology. The Board can help us do that by: hosting the quarterly integrators meeting again, and taking CCRS open source.

Earlier we discussed how Washington State's Cannabis Compliance Reporting System (CCRS) works. The Liquor and Cannabis Board's (LCB) "Cannabis 2.0" is good policy backed by poor technology. We have been writing about the LCB's relationship with technology and cannabis policy since our first exposure to the I-502 Traceability API.

Let's talk about LeafData

One scenario in 2021 happened when Akerna (then known as MJFreeway) scrambled Licensee identifiers in the traceability product Washington State was using at the time, LeafData.

Akerna was the LCB's third traceability vendor, and they had a complicated relationship. The trust in Akerna and their ability to fix LeafData's issues broke when Akerna corrupted the State's regulatory database. The LCB then ordered Akerna to freeze the state of LeafData to prevent further side-efffects.

LeafData's bugs, and usability issues made it hard for licensees and integrators to fulfill reporting obligations. This made LeafData useless for tracking tax revenue. And, over time the LCB's maturing policy decisions made LeafData redundant. OpenTHC does not believe the good folks at the LCB envision repeating this kind of relationship with their technology. But there are lessons we can take away from our experience with LeafData to make CCRS better.

Adopt the Fix Forward Mentality

The key difference between the LCB using LeafData and CCRS is that the LCB owns CCRS. The folks that work on the technology components are Washington State employees. These stakeholders are well-positioned to balance the LCB's requirements with CCRS's technical requirements. OpenTHC would be delighted to make detailed bug reports about specific components of CCRS. Without visibility into CCRS we are unable to meet this high criteria. The best option we have available is to observe and report the broken behavior; and participate in the community.

Now is the time for the LCB to collect and compile all issues, and deliver them to CCRS's technical stakeholders to fix. Bugs will need time for internal reproduction. Our expectations are that engineering estimates will be off by at least 20%. This is not meant to disparage. We see it as a realistic outlook with respect to the maturity level of the technology, and the potential scope of work.

Activate the Community to Fix-Forward

What would it look like for the LCB to begin fixing CCRS forward? As we described, undertaking this requires replication of the reported behavior. Engineers can then analyze the internal components of CCRS under simulated conditions the reporters describe. This will allow them to identify the problematic components. Fixes will come in the form of code patches, and environmental configuration. In the most extreme cases, architectural corrections may warrant consideration.

As a software engineering business, OpenTHC is aware of the capital costs the LCB faces taking on this daunting task. This cost is one of many reasons why OpenTHC practices open source, and works in public to lower this burden. Availability of OpenTHC's open source products has forced participants to deliver answers that fit the community's broader needs. Open availability also lowers barriers for participants to start the contributing. OpenTHC is blessed with a healthy community of participants who challenge the product to be better. It is our firm belief that Washington State can also take advantage of these benefits. But, it must make the commitment to work publicly on all components of CCRS. To do this the LCB must take the extra step of making the CCRS technology open source.

Commitment to working on the technology in public guarantees a couple advantages. First, issues the LCB faces today achieve resolution faster. Second, this process happens at a lower cost to the State when the technology is open. But what does it mean for the LCB to open source CCRS?

We expect the process to achieve this is not instantaneous. The LCB needs time to affirm relevant stakeholder buy-in to this level of transparency. OpenTHC believes the LCB returning to host the quarterly integrator meetings would be a good first step. The LCB stopped conducting these meetings after it was clear Akerna could not solve the problems in LeafData. Combining these meetings with a transparent product will enable a level of productivity the LCB and community of integrators have not seen before.

It bears repeating that the LCB's Cannabis 2.0 initiative is a great example of good policy making. But the shortcomings of CCRS are not about policy, or Washington State's technical ability. CCRS is a new software system -- and like many of us -- the LCB is building the airplane while they fly it. Taking CCRS open source would not absolve the LCB from fixing today's pressing issues. That is why we are urging the LCB to let one step toward transparency lead to another, and re-form the quarterly integrator meetings.

A huge thank you to all contributors for their time and feedback, and a special shout-out to Gregory Foster at Cannabis Observer and Micah Sherman at Raven Grass Cannabis.