Skip to content

Inconsistencies in Hop OilContentType #256

Open

Description

@matty0ung

In hop.json, in OilContentType we have a few inconsistencies:

  • b_pinene represents β-Pinene, but we also have pinene which, presumably, represents α-Pinene. If so, it would be clearer to rename pinene to a_pinene
  • Member cohumulone is an alpha acid, not an oil, so (a) it should be outside this structure and (b) it should be percentage of alpha acids not percentage of total oils.
  • I'm not a chemist but AIUI, polyphenols and xanthohumol are not oils, so should also be outside the OilContentType structure. Claude tells me they are usually given as a percentage of hop mass.

Activity

  1. ndreno commented on Oct 13, 2026

    @ndreno
    Contributor

    Agreed on all three, and the type's own description gives the game away: it says it collects "oil content, polyphenols, and thiols", so two of the three were known not to be oils, and there is no thiol member at all.

    Proposal, all additive plus deprecations per ADR-0003, so a minor bump to 3.1 and no existing document breaks:

    Change Where
    add a_pinene, deprecate pinene stays in OilContentType, both are oils
    add cohumulone, deprecate the copy in OilContentType VarietyInformation, described as a percentage of total alpha acids
    add polyphenols and xanthohumol, deprecate the copies VarietyInformation, described as a percentage of hop mass
    rewrite the OilContentType description drop polyphenols and thiols, state that members are a percentage of total oil

    VarietyInformation rather than HopVarietyBase because none of the three is needed to calculate a recipe, which is the line ADR-0005 draws. They are three independent measurements rather than a cluster, so I would put them directly on the type rather than invent a wrapper, but say if you would rather group them.

    Two things I am leaving alone unless you want them in scope:

    total_oil_ml_per_100g bakes its unit into the name and is a bare number rather than a measurement type. That is really #218, and it is the same shape as calories_per_pint.

    Thiols. The description implies they belong here and nothing represents them. Adding them is a new proposal rather than a fix, and I do not know which ones matter to brewers (4MMP, 3MH, 3MHA?). Worth a separate issue if you think so.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions