Format curated data and prompts

This commit is contained in:
Aaron Po
2026-07-19 04:05:30 -04:00
parent f020671703
commit 9593a07c13
4 changed files with 9275 additions and 28038 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -2,7 +2,12 @@
{ {
"name": "Hophead Explorer", "name": "Hophead Explorer",
"description": "Chases the newest hop varieties and double-digit IBUs, tracking hazy releases and limited tap takeovers across town.", "description": "Chases the newest hop varieties and double-digit IBUs, tracking hazy releases and limited tap takeovers across town.",
"style_affinities": ["American IPA", "Double IPA", "New England IPA", "Black IPA"] "style_affinities": [
"American IPA",
"Double IPA",
"New England IPA",
"Black IPA"
]
}, },
{ {
"name": "Malt & Tradition Loyalist", "name": "Malt & Tradition Loyalist",
@@ -12,7 +17,12 @@
{ {
"name": "Dark & Roasty Devotee", "name": "Dark & Roasty Devotee",
"description": "Orders the darkest beer on the board year-round, drawn to roasted malt, coffee, and chocolate notes over carbonated lightness.", "description": "Orders the darkest beer on the board year-round, drawn to roasted malt, coffee, and chocolate notes over carbonated lightness.",
"style_affinities": ["Imperial Stout", "Robust Porter", "Baltic Porter", "Oatmeal Stout"] "style_affinities": [
"Imperial Stout",
"Robust Porter",
"Baltic Porter",
"Oatmeal Stout"
]
}, },
{ {
"name": "Sour & Wild Forager", "name": "Sour & Wild Forager",
@@ -22,21 +32,41 @@
{ {
"name": "Session Sipper", "name": "Session Sipper",
"description": "Values an easy-drinking pint that holds up over a long afternoon at the taproom more than raw intensity or novelty.", "description": "Values an easy-drinking pint that holds up over a long afternoon at the taproom more than raw intensity or novelty.",
"style_affinities": ["Session IPA", "Ordinary Bitter", "Cream Ale", "Blonde Ale"] "style_affinities": [
"Session IPA",
"Ordinary Bitter",
"Cream Ale",
"Blonde Ale"
]
}, },
{ {
"name": "Belgian Abbey Pilgrim", "name": "Belgian Abbey Pilgrim",
"description": "Collects abbey and trappist releases, drawn to the dried-fruit esters and warming strength of classic Belgian ales.", "description": "Collects abbey and trappist releases, drawn to the dried-fruit esters and warming strength of classic Belgian ales.",
"style_affinities": ["Belgian Tripel", "Belgian Dubbel", "Belgian Quadrupel", "Trappist Single"] "style_affinities": [
"Belgian Tripel",
"Belgian Dubbel",
"Belgian Quadrupel",
"Trappist Single"
]
}, },
{ {
"name": "Wheat & Citrus Casual", "name": "Wheat & Citrus Casual",
"description": "Reaches for something light, cloudy, and refreshing, usually with a citrus or coriander note, especially on a patio in summer.", "description": "Reaches for something light, cloudy, and refreshing, usually with a citrus or coriander note, especially on a patio in summer.",
"style_affinities": ["Hefeweizen", "Witbier", "American Wheat Beer", "Berliner Weisse"] "style_affinities": [
"Hefeweizen",
"Witbier",
"American Wheat Beer",
"Berliner Weisse"
]
}, },
{ {
"name": "Big & Boozy Connoisseur", "name": "Big & Boozy Connoisseur",
"description": "Sips slowly from a snifter, seeking out high-ABV releases meant for aging and savoring rather than quick refreshment.", "description": "Sips slowly from a snifter, seeking out high-ABV releases meant for aging and savoring rather than quick refreshment.",
"style_affinities": ["English Barleywine", "Wee Heavy", "Doppelbock", "Old Ale"] "style_affinities": [
"English Barleywine",
"Wee Heavy",
"Doppelbock",
"Old Ale"
]
} }
] ]

View File

@@ -41,11 +41,11 @@ You will receive the inputs like this:
ABSOLUTELY NO MARKDOWN FORMATTING. Do NOT wrap your response in json or ``` ABSOLUTELY NO MARKDOWN FORMATTING. Do NOT wrap your response in json or ```
blocks. blocks.
Do not add markdown, code fences, or postscript around the final JSON object. Do not add markdown, code fences, or postscript around the final JSON object. Do
Do not say "Here is the JSON" or "Enjoy!". not say "Here is the JSON" or "Enjoy!".
The JSON must contain exactly three keys ("username", "bio", The JSON must contain exactly three keys ("username", "bio", "activity_weight")
"activity_weight") in that order. Do not rename or add any other keys. in that order. Do not rename or add any other keys.
ESCAPE ALL QUOTES inside the bio field using \", or use single quotes (' ') ESCAPE ALL QUOTES inside the bio field using \", or use single quotes (' ')
instead. instead.
@@ -53,15 +53,15 @@ instead.
DO NOT use actual line breaks (\n) inside any string. Keep the bio as one DO NOT use actual line breaks (\n) inside any string. Keep the bio as one
continuous string. continuous string.
The bio must be between 25 and 60 words, written in first person, and must The bio must be between 25 and 60 words, written in first person, and must read
read as something this specific person would write about themselves -- not a as something this specific person would write about themselves -- not a generic
generic profile blurb. profile blurb.
`activity_weight` is a number between 0 and 1 (inclusive) representing how `activity_weight` is a number between 0 and 1 (inclusive) representing how often
often this persona checks in at breweries relative to other users. Persona this persona checks in at breweries relative to other users. Persona archetypes
archetypes implying frequent, habitual brewery visits should skew higher; implying frequent, habitual brewery visits should skew higher; casual or
casual or occasional-visitor personas should skew lower. Do not default to occasional-visitor personas should skew lower. Do not default to 0.5 -- vary it
0.5 -- vary it meaningfully based on the persona description. meaningfully based on the persona description.
Expected JSON format: Expected JSON format:
@@ -78,8 +78,8 @@ Expected JSON format:
### THE USERNAME: ### THE USERNAME:
Derive the username from the given first and/or last name (e.g. lowercase, Derive the username from the given first and/or last name (e.g. lowercase,
abbreviated, or combined with a short word or number tied to the persona's abbreviated, or combined with a short word or number tied to the persona's style
style affinities). Do not invent an unrelated handle. Do not include spaces. affinities). Do not invent an unrelated handle. Do not include spaces.
### THE BIO: ### THE BIO:
@@ -90,14 +90,14 @@ city or country naturally if it fits, but do not force it.
### VOICE & PERSPECTIVE: ### VOICE & PERSPECTIVE:
Write in the first person ("I"/"my"). The tone should match the persona: Write in the first person ("I"/"my"). The tone should match the persona: an
an enthusiastic explorer sounds different from a relaxed, easy-drinking enthusiastic explorer sounds different from a relaxed, easy-drinking regular. Do
regular. Do not write in second or third person. not write in second or third person.
### THE BLOCKLIST (FORBIDDEN CONCEPTS): ### THE BLOCKLIST (FORBIDDEN CONCEPTS):
You absolutely cannot use the following words and phrases. Make sure your You absolutely cannot use the following words and phrases. Make sure your final
final output doesn't have any of these: output doesn't have any of these:
- "hidden gem" - "hidden gem"
- "passion" - "passion"
@@ -108,14 +108,14 @@ final output doesn't have any of these:
#### FORBIDDEN WRITING PATTERNS #### FORBIDDEN WRITING PATTERNS
The following patterns are common AI writing pitfalls and must not appear in The following patterns are common AI writing pitfalls and must not appear in the
the bio: bio:
- Negative parallelism constructions: "It's not X, it's Y" - Negative parallelism constructions: "It's not X, it's Y"
- Inflated significance phrases: "stands as a testament," "plays a vital - Inflated significance phrases: "stands as a testament," "plays a vital role,"
role," "deeply rooted" "deeply rooted"
- Superficial trailing analyses: sentences ending in -ing words that add - Superficial trailing analyses: sentences ending in -ing words that add opinion
opinion without content without content
- Promotional travel-copy tone: "breathtaking," "must-visit," "vibrant" - Promotional travel-copy tone: "breathtaking," "must-visit," "vibrant"
- Overused conjunctive transitions used as sentence openers: "Moreover," - Overused conjunctive transitions used as sentence openers: "Moreover,"
"Furthermore," "In addition" "Furthermore," "In addition"

File diff suppressed because it is too large Load Diff