Raw
The original submission: a web page
The original submission is a web page:
https://www.jamieoliver.com/recipes/pasta/black-olive-pasta/
L1
Level 1: 16 lines
- 1Black olive pasta
- 2With an easy no-cook sauce
- 311 mins
- 4serves 4
- 5300g dried linguine
- 61 clove of garlic
- 7200g black olives, pitted, plus extra to serve
- 84 sprigs of thyme, ideally lemon
- 9olive oil
- 102 tablespoons balsamic vinegar
- 11extra virgin olive oil
- 1250g feta cheese
- 13Cook the pasta according to the packet instructions.
- 14Peel the garlic and place in a blender with the olives, half the thyme leaves, 1 teaspoon of black pepper, 6 tablespoons of olive oil and the balsamic. Blitz until super-smooth.
- 15Drain the pasta, reserving a mugful of starchy cooking water, then return it to the pan. Pour over half the olive sauce (save the rest in the fridge for up to 3 days, or freeze in an ice cube tray for future meals) and toss together, loosening with a splash of cooking water, if needed.
- 16Divide between serving plates, drizzle with 1 tablespoon of extra virgin olive oil, crumble over the feta and pick over the remaining thyme, then thinly slice and scatter over a few extra olives, to finish. Great with a simple lemony-dressed green salad on the side.
L2 corrected
Level 2, settled version (corrected), the newest
Title
| Title | Serves | Total time |
|---|---|---|
| Black olive pasta | 4 to 4 | (blank) |
Cook Time
| Prep | Cook | Total |
|---|---|---|
| (blank) | (blank) | (blank) |
Ingredients
| # | Ingredient | Heading |
|---|---|---|
| 1 | 300g dried linguine | |
| 2 | 1 clove of garlic | |
| 3 | 200g black olives, pitted, plus extra to serve | |
| 4 | 4 sprigs of thyme, ideally lemon | |
| 5 | olive oil | |
| 6 | 2 tablespoons balsamic vinegar | |
| 7 | extra virgin olive oil | |
| 8 | 50g feta cheese |
Ingredient Components
| # | Quantity | Unit | Ingredient | Prep | Optional | Sub rows (added at) |
|---|---|---|---|---|---|---|
| 1 | 11 | weight ounces | dried linguine | step 1: 11 weight ounces | ||
| 2 | 1 | clove | garlic | step 2: 1 clove | ||
| 3 | 7.1 | weight ounces | black olives, plus extra to serve | pitted | step 3: 7.1 weight ounces step 13: a few extra | |
| 4 | 4 | sprigs | thyme, ideally lemon | step 3: half thyme step 12: remaining thyme | ||
| 5 | unspecifiable | olive oil | step 3: 6 tablespoons | |||
| 6 | 2 | tablespoons | balsamic vinegar | step 3: 2 tablespoons | ||
| 7 | unspecifiable | extra virgin olive oil | step 10: 1 tablespoon | |||
| 8 | 1.8 | weight ounces | feta cheese | step 11: 1.8 weight ounces |
Cooking Sentences
| # | Section | Sentence |
|---|---|---|
| 1 | 1 | Cook the pasta according to the packet instructions. |
| 2 | 2 | Peel the garlic and place in a blender with the olives, half the thyme leaves, 1 teaspoon of black pepper, 6 tablespoons of olive oil and the balsamic. |
| 3 | 2 | Blitz until super-smooth. |
| 4 | 3 | Drain the pasta, reserving a mugful of starchy cooking water, then return it to the pan. |
| 5 | 3 | Pour over half the olive sauce (save the rest in the fridge for up to 3 days, or freeze in an ice cube tray for future meals) and toss together, loosening with a splash of cooking water, if needed. |
| 6 | 4 | Divide between serving plates, drizzle with 1 tablespoon of extra virgin olive oil, crumble over the feta and pick over the remaining thyme, then thinly slice and scatter over a few extra olives, to finish. |
| 7 | 4 | Great with a simple lemony-dressed green salad on the side. |
Cooking Steps
| # | Step |
|---|---|
| 1 | Cook the pasta according to the packet instructions. |
| 2 | Peel the garlic |
| 3 | Place the garlic in a blender with the olives, half the thyme leaves, 1 teaspoon of black pepper, 6 tablespoons of olive oil and the balsamic. |
| 4 | Blitz the olive sauce until super-smooth. |
| 5 | Drain the pasta, reserving a mugful of starchy cooking water |
| 6 | Return the pasta to the pan. |
| 7 | Pour half the olive sauce from the olive blender over the pasta (save the rest in the fridge for up to 3 days, or freeze in an ice cube tray for future meals) |
| 8 | Toss the pasta and olive sauce together, loosening with a splash of cooking water, if needed. |
| 9 | Divide the pasta between serving plates |
| 10 | Drizzle the pasta with 1 tablespoon of extra virgin olive oil |
| 11 | Crumble the feta over the pasta |
| 12 | Pick the remaining thyme over the pasta |
| 13 | Thinly slice a few extra olives |
| 14 | Scatter the olives over the pasta, to finish. |
| 15 | Great with a simple lemony-dressed green salad on the side. |
Extras
| Name | Text |
|---|---|
| untitled | With an easy no-cook sauce |
| untitled | 11 mins |
Metric
| # | Ingredient | Quantity | Unit | Sub rows |
|---|---|---|---|---|
| 1 | dried linguine | 300 | g | step 1: 300 g |
| 2 | garlic | step 2: (blank) | ||
| 3 | black olives, plus extra to serve | 200 | g | step 3: 200 g step 13: (blank) |
| 4 | thyme, ideally lemon | step 3: (blank) step 12: (blank) | ||
| 5 | olive oil | step 3: 89 ml | ||
| 6 | balsamic vinegar | 30 | ml | step 3: 30 ml |
| 7 | extra virgin olive oil | step 10: 15 ml | ||
| 8 | feta cheese | 50 | g | step 11: 50 g |
Recipe Records
| # | Entry |
|---|---|
| 1 | {"key": "", "title": "Black olive pasta", "kind": "Main recipe (this page)", "name_not_printed": false, "page": "", "lines": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], "photos": [], "lv2": null} |
| 2 | {"key": "olive-sauce", "title": "Olive Sauce from Black olive pasta", "kind": "Section copy, made automatically from the main recipe", "name_not_printed": false, "page": "", "lines": [6, 7, 8, 9, 10, 14], "photos": [], "lv2": {"title": {"title": "Olive Sauce from Black olive pasta", "people_served_lower": "", "people_served_upper": "", "total_time_lower": "", "total_time_upper": ""}, "parent": {"relation": "Section copied from", "title": "Black olive pasta", "link": "url-v07/lv2"}, "ingredient_components": [{"n": 1, "quantity": "1", "unit": "clove", "ingredient": "garlic", "prep": "", "optional": "", "guessed": false, "adds": [{"step": 1, "quantity": "1", "unit": "clove", "guessed": false}], "parts": []}, {"n": 2, "quantity": "7.1", "unit": "weight ounces", "ingredient": "black olives, plus extra to serve", "prep": "pitted", "optional": "", "guessed": false, "adds": [{"step": 2, "quantity": "7.1", "unit": "weight ounces", "guessed": false}], "parts": []}, {"n": 3, "quantity": "4", "unit": "sprigs", "ingredient": "thyme, ideally lemon", "prep": "", "optional": "", "guessed": false, "adds": [{"step": 2, "quantity": "half", "unit": "thyme", "guessed": false}], "parts": []}, {"n": 4, "quantity": "unspecifiable", "unit": "", "ingredient": "olive oil", "prep": "", "optional": "", "guessed": false, "adds": [{"step": 2, "quantity": "6", "unit": "tablespoons", "guessed": false}], "parts": []}, {"n": 5, "quantity": "2", "unit": "tablespoons", "ingredient": "balsamic vinegar", "prep": "", "optional": "", "guessed": false, "adds": [{"step": 2, "quantity": "2", "unit": "tablespoons", "guessed": false}], "parts": []}], "steps": [{"n": 1, "text": "Peel the garlic", "from_sentences": [1], "guessed": false}, {"n": 2, "text": "Place the garlic in a blender with the olives, half the thyme leaves, 1 teaspoon of black pepper, 6 tablespoons of olive oil and the balsamic.", "from_sentences": [1], "guessed": false}, {"n": 3, "text": "Blitz the olive sauce until super-smooth.", "from_sentences": [2], "guessed": false}], "cooking_sentences": [{"n": 1, "section": 2, "sentence": "Peel the garlic and place in a blender with the olives, half the thyme leaves, 1 teaspoon of black pepper, 6 tablespoons of olive oil and the balsamic.", "line": 14, "recipe": ""}, {"n": 2, "section": 2, "sentence": "Blitz until super-smooth.", "line": 14, "recipe": ""}], "ingredients": [{"n": 1, "ingredient": "1 clove of garlic", "heading": "", "line": 6, "guessed": false}, {"n": 2, "ingredient": "200g black olives, pitted, plus extra to serve", "heading": "", "line": 7, "guessed": false}, {"n": 3, "ingredient": "4 sprigs of thyme, ideally lemon", "heading": "", "line": 8, "guessed": false}, {"n": 4, "ingredient": "olive oil", "heading": "", "line": 9, "guessed": false}, {"n": 5, "ingredient": "2 tablespoons balsamic vinegar", "heading": "", "line": 10, "guessed": false}], "suggested_equipment": [], "cook_time": {"prep": "", "cook": "", "total": ""}, "extras": [], "metric": [{"n": 1, "ingredient": "garlic", "quantity": "", "unit": "", "source": "", "note": "", "adds": [{"step": 1, "quantity": "", "unit": "", "source": "", "guessed": false}]}, {"n": 2, "ingredient": "black olives, plus extra to serve", "quantity": "200", "unit": "g", "source": "printed", "note": "", "adds": [{"step": 2, "quantity": "200", "unit": "g", "source": "printed", "guessed": false}]}, {"n": 3, "ingredient": "thyme, ideally lemon", "quantity": "", "unit": "", "source": "", "note": "", "adds": [{"step": 2, "quantity": "", "unit": "", "source": "", "guessed": false}]}, {"n": 4, "ingredient": "olive oil", "quantity": "", "unit": "", "source": "", "note": "", "adds": [{"step": 2, "quantity": "89", "unit": "ml", "source": "calculated", "guessed": false}]}, {"n": 5, "ingredient": "balsamic vinegar", "quantity": "30", "unit": "ml", "source": "calculated", "note": "", "adds": [{"step": 2, "quantity": "30", "unit": "ml", "source": "calculated", "guessed": false}]}], "choice_points": [], "goes_with": [], "guesses": [], "notice": "", "records": []}} |
Empty in this Level 2: choice points, suggested equipment, goes with.
K0
Line roles and recipe starts · code
What K0 does to it
K0 labels every Level 1 line with its role, and marks the line where each recipe starts. Every later step reads these labels: K1 takes the title and servings lines, K2 the ingredient lines, K4 the method lines.
- Code reads the tags. This is a web page, so its Level 1 carries a role tag on each line from the page's own structure. Code reads them; no model is called.
- This run
- P-FAST-R18, K0 and K1 only, newest rules (--packs 2026-11-04), Nov 4
- When
- 0.00 s to 0.00 s of 1.6 s
- Model
- None: no model call
- Time
- under 0.01 s
- Cost
- $0
Result after K0
1 title, 1 headnote, 1 note, 1 servings, 8 ingredient, 4 method. One recipe, starting at line 1.
- 1Black olive pastatitlerecipe starts here
- 2With an easy no-cook sauceheadnote
- 311 minsnote
- 4serves 4servings
- 5300g dried linguineingredient
- 61 clove of garlicingredient
- 7200g black olives, pitted, plus extra to serveingredient
- 84 sprigs of thyme, ideally lemoningredient
- 9olive oilingredient
- 102 tablespoons balsamic vinegaringredient
- 11extra virgin olive oilingredient
- 1250g feta cheeseingredient
- 13Cook the pasta according to the packet instructions.method
- 14Peel the garlic and place in a blender with the olives, half the thyme leaves, 1 teaspoon of black pepper, 6 tablespoons of olive oil and the balsamic. Blitz until super-smooth.method
- 15Drain the pasta, reserving a mugful of starchy cooking water, then return it to the pan. Pour over half the olive sauce (save the rest in the fridge for up to 3 days, or freeze in an ice cube tray for future meals) and toss together, loosening with a splash of cooking water, if needed.method
- 16Divide between serving plates, drizzle with 1 tablespoon of extra virgin olive oil, crumble over the feta and pick over the remaining thyme, then thinly slice and scatter over a few extra olives, to finish. Great with a simple lemony-dressed green salad on the side.method
K1
Title, Cook Time, Extras · code + Haiku
What K1 does to it
K1 fills three tables: Title (name, servings, total time), Cook Time (prep, cook, total) and Extras (text that is not a step or an ingredient, such as the headnote).
- Code drafts all three. Title: the first title lines. Servings: a pattern match for lower and upper numbers, with leftover words sent to Extras. Times: a pattern match for each label and its value. Extras: the headnote, note and label lines.
- Haiku checks two things. Haiku 5.5, thinking off, with Ryan's R1 to R21 rules, sees only the lines that are not ingredients or method (here lines 1, 2, 3, 4), plus code's draft. It returns the Cook Time label and value pairs, and which lines go to Extras with a name for each. It never writes the title, the servings or the Extras text.
- Code keeps only what is printed. A time is kept only if its value is printed on a time line. Extras text is always copied word for word from Level 1. If the call fails, code's draft stands.
- Then the Nov 4 rules step. Code, right after K1: a "Takes" line fills the total time (R82), a title loses a closing colon (R80), "Serves 4 as a main, 8 or more as a side" gives 4 to 8 (R81), and an Extras note keeps its mark or number in its name (R77).
- This run
- P-FAST-R18, K0 and K1 only, newest rules (--packs 2026-11-04), Nov 4
- When
- 0.00 s to 1.61 s of 1.6 s
- Model
- Haiku 5.5, thinking off
- Time
- 0.8 s
- Cost
- $0.00018
- Tokens
- 14,273 rules (cached) + 148 new in, 38 out
Result after K1
3 of 4 rows match L2 corrected. Bold text differs.
Title
| Title | Serves | Total time |
|---|---|---|
| Black olive pasta | 4 to 4 | (blank) |
Cook Time
| Prep | Cook | Total |
|---|---|---|
| (blank) | (blank) | (blank) |
Extras
| Name | Text |
|---|---|
| untitled | With an easy no-cook sauce |
| missing here | |
L2 corrected
The settled version (corrected). Bold text differs from the run.
Title
| Title | Serves | Total time |
|---|---|---|
| Black olive pasta | 4 to 4 | (blank) |
Cook Time
| Prep | Cook | Total |
|---|---|---|
| (blank) | (blank) | (blank) |
Extras
| Name | Text |
|---|---|
| untitled | With an easy no-cook sauce |
| untitled | 11 mins |