# Jev 1.13 jaggedness: 9 failure modes and what to do instead

> Jev 1.13 is fast and calibrated but literal: 9 known jagged edges from TypeSafe docs — counting, dates, indirection, large state — and the code-first fixes that avoid them.

*Source: https://velstech.net/jev-1-13-jaggedness.ta (Tamil translation of https://velstech.net/jev-1-13-jaggedness) · Updated: 2026-09-20*

*Markdown version. [Read the interactive guide](https://velstech.net/jev-1-13-jaggedness.ta). English Markdown: https://velstech.net/jev-1-13-jaggedness.md.*

---

**Jev 1.13** (`jev-1.13`) TypeSafe-இன் வேகமான, calibrated
judgment model – *System One* பணிகளில் சிறந்தது: கொடுக்கப்பட்ட text மீது உடனடி ஆம்/இல்லை
(`Noul`), pick-one (`Choice`) முடிவுகள்.
இது calculator அல்ல, date parser அல்ல, text generator-ம் அல்ல. TypeSafe-இன் சொந்த
[jev-1.13-க்கான model-jaggedness பக்கம்](https://docs.typesafe.ai/model-jaggedness/jev-1.13)
(last reviewed 2026-09-17) எங்கு sharp-ஆகவும் எங்கு jagged-ஆகவும் இருக்கும் என ஒன்பது இடங்களைப்
பட்டியலிடுகிறது. இந்த guide அந்த ஒன்பதின் சுருக்கம், ஒவ்வொன்றுக்கும் நடைமுறை தீர்வுடன் – code-இன்
வேலையை model-இடம் கேட்பதை நிறுத்துங்கள்.

ஒரு வரி விதி: **judgment-ஐ Jev-இடம் கொடுங்கள், math-ஐ code-இல் வையுங்கள்.**
Extraction ஒரு judgment – அதை அதனிடம் கொடுங்கள். எண்ணுதல், தேதி ஒப்பீடு, "yes" + "not yes" = ஒன்று
என்பதை நிலைநாட்டுவது – அது code-இன் வேலை.

## 9 தோல்வி முறைகள் – ஒரு பார்வையில்

| # | Failure mode | இதற்குப் பதில் இதைச் செய்க |
| --- | --- | --- |
| 1 | Literal reading | Exact condition + boundary cases எழுதுக |
| 2 | Math and numbers | எண்ணுதல் + கணக்கு code-இல் |
| 3 | Date and time comparison | பகுதிகளை model-ஆல் எடுக்க, ஒப்பீடு code-இல் |
| 4 | Indirection | Hops குறைக்க, relevant state-ஐ சுட்டுக |
| 5 | பெரிய state, தேவையற்ற விவரம் | முதலில் filter செய்க, தேவையான fields மட்டும் அனுப்புக |
| 6 | Adversarial content | துல்லிய criteria + deploy-க்கு முன் edge-case சோதனை |
| 7 | Contradictory instructions and criteria | Instruction + criteria சொற்களை இணைக்க |
| 8 | Common-sense structural invariants | ஒவ்வொரு முடிவையும் ஒரே விதமாகக் கேளுங்கள்; identities code-இல் |
| 9 | Generation | Generative model பயன்படுத்துக; Jev தேர்வு செய்யட்டும், எழுத வேண்டாம் |

Source: TypeSafe docs, [Jev 1.13 jaggedness](https://docs.typesafe.ai/model-jaggedness/jev-1.13).
கீழே என் சுருக்கம், சேர்க்கப்பட்ட எடுத்துக்காட்டுகளுடன்.

## 1. Literal reading

Jev நீங்கள் எழுதிய கேள்விக்குப் பதில் தரும், நீங்கள் நினைத்ததற்கு அல்ல. Scoping words, negations,
implied conditions அனைத்தும் face value-இல் வாசிக்கப்படும். மனிதன் நோக்கம் கேட்கிறான்; Jev text-ஐ
வாசிக்கிறது. தவறான பதிலுக்குப் பிறகு "நான் உண்மையில் இதைத்தான் சொல்ல வந்தேன்" என விளக்கினால் –
அந்த விளக்கம்தான் உங்கள் instruction-இல் காணாமல் போன பாதி.

**Fix:** `instructions`-இல் exact condition-ஐ எழுதுங்கள், criteria-இல் boundary
cases-ஐ குறிப்பிடுங்கள், விளக்கம் தவிர்க்க முடியாத இடத்தில் ஒரு fuzzy கேள்வியை இரண்டு literal
கேள்விகளாகப் பிரித்து பதில்களை code-இல் இணையுங்கள்.

## 2. Math and numbers – Jev calculator அல்ல

மூன்று தொடர்புடைய பொறிகள்: **counting** (characters, term occurrences, list items –
பொருள் பெரிதாகும்போது error வளரும்), **numeric representations** (hex colours, RGB triples,
assembly/binary – பெயர்கள், high-level code-ஐ விட மோசமாக வாசிக்கப்படும்), **score interpolation**
(expectation மீது threshold வைக்கலாம், ஆனால் score levels-இடையே interpolate செய்து exact number-ஐ
மீட்டுருவாக்க வேண்டாம் – அங்கு calibration பலவீனம்).

**Fix:** unit-ஐ regex/parser கண்டுபிடிக்க முடிந்தால், எண்ணுதல் code-இல். ஒவ்வொரு candidate-க்கும்
ஒரு yes/no கேட்டு, நீங்களே கூட்டுங்கள்:

```
from typesafe_sdk import Noul, TypeSafeClient

client = TypeSafeClient(model="jev-1.13")
YES = 0.5  # threshold depends on your use case

items = ["typesafe", "apple", "california", "banana",
         "likes", "calibration", "orange", "vertex"]

result = client.system_one(
    {"items": items},
    {f"item_{i}": Noul(instructions=f"Is `items[{i}]` the name of a fruit?")
     for i in range(len(items))},
)
count = sum(result.nouls[f"item_{i}"].noul > YES for i in range(len(items)))
```

Colours, code-க்கும் அதே idea: முதலில் code-இல் number/named bucket-ஆக மாற்றுங்கள்,
model-ஐ உண்மையான judgment-க்கு மட்டும் வையுங்கள் (எ.கா., ஒரு colour warning போல் தெரிகிறதா).

## 3. Date and time comparison

Jev தேதிகளை text-ஆக வாசிக்கிறது, ordered quantities-ஆக அல்ல. "எந்த date முதலில்?", "எவ்வளவு இடைவெளி?",
"இந்த window-க்குள் இருக்கிறதா?" – நம்ப முடியாது; mixed formats, relative references
("next Friday"), quarters/settlement windows போன்ற domain எல்லைகளில் மேலும் மோசம்.

**Fix:** வேலையைப் பிரியுங்கள். Extraction judgment, எனவே ஒவ்வொரு பகுதியையும் (year, month, day)
explicit "not stated" option-உடன் சிறு closed set மீது `Choice`-ஆக model செய்க – பிறகு code-இல்
உண்மையான date-ஐ உருவாக்கி ordering, duration, offsets, weekdays அனைத்தையும் code-இடம் விடுங்கள்.
TypeSafe date-extraction cookbook-இல் worked version உள்ளது.

## 4. Indirection

Double negatives, multi-hop கேள்விகள் ("property-யின் property") accuracy-ஐ குறைக்கும்.
Reasoning-இன் ஒவ்வொரு extra hop-ம் விலக ஒரு வாய்ப்பு.

**Fix:** instructions-ஐ முடிந்தவரை நேரடியாக எழுதி, relevant state பகுதியைப் பெயரிட்டுக்
காட்டுங்கள்; model-ஐ pointers பின்னால் ஓடவிட வேண்டாம்.

## 5. தேவையற்ற விவரம் நிறைந்த பெரிய state

தொடர்பில்லாத content வளரும்போது accuracy குறையும் – distractors signal-ஐ மூழ்கடிக்கும், debugging
("எந்த input இதை ஏற்படுத்தியது?") கடினமாகும். Jev-க்கு bounded context window-ம் உண்டு (exact token limits-க்கு
TypeSafe Models பக்கம் பார்க்கவும்); சுவரைத் தொடும் முன்பே தொடர்பில்லாத material accuracy-ஐ தின்னும் –
இதை practitioners context rot என்பர்.

**Fix:** முதலில் code-இல் retrieve + filter செய்து, கேள்விக்குத் தேவையான fields-ஐ மட்டும்
அனுப்புங்கள். முன்கூட்டிய filtering முடியாதபோது, `Noul`-ஐ relevance gate-ஆகப் பயன்படுத்துங்கள்
(TypeSafe classifying-RAG-passages cookbook இந்த pattern-ஐ காட்டுகிறது).

## 6. Adversarial content

State என்பது data, Jev அதை default-ஆக hostile-ஆகக் கருதாது. Injected instructions,
தவறான framing, தன் classification-க்காக வாதிடும் text பதிலை நகர்த்தலாம்.

**Fix:** criteria-இல் எது கணக்கில் வரும் எனத் தெளிவாக எழுதி, பல users-க்கு வெளியிடும் முன்
edge cases-ஐ முழுமையாகச் சோதியுங்கள். இங்கு hardening roadmap-இல் உள்ளதாக TypeSafe கூறுகிறது.

## 7. Contradictory instructions and criteria

`instructions`-ம் `criteria`-ம் வெவ்வேறு திசையில் இழுக்கும்போது –
classic உதாரணம் `true` "no" எனவும் `false` "yes" எனவும் எழுதப்பட்ட
`Noul` – performance குறையும். சராசரி நபர் ஒரு முறை படித்துப் புரியும் phrasing-ஐ நோக்குங்கள்.

**Fix:** criteria-ஐ instruction-இன் நீட்சியாகக் கருதி, இரண்டையும் தெளிவான, துல்லிய மொழியில்
இணையுங்கள்.

## 8. நிலைக்கும் என நினைக்கும் structural invariants

Jev ஒத்த inputs-இல் மிக consistent-ஆனது, ஆனால் தனித்தனி கேள்விகள் arithmetic identities-ஐ மதிப்பதில்லை.
TypeSafe-இன் இரண்டு documented உதாரணங்கள்:

- அதே refund கேள்வி Noul (0.22) vs yes/no Choice (yes 0.01 / no 0.99,
confidence 0.97) – ஒப்பிடத்தக்க எண்கள் எதிர்பார்த்தபடி பொருந்தவில்லை.

- ஒரு கேள்வியும் அதன் negation-ம் இரண்டு Nouls-ஆக 0.72, 0.47 scores – கூட்டு 1.19, 1.0 அல்ல.

`Choice` relative (எந்த option?), ஒவ்வொரு `Noul`-ம் absolute (இது உண்மையா?) –
அனைத்து `Nouls`-ம் ஒரே நேரத்தில் low-ஆக இருக்கலாம். ஒரு primitive-இல் tune செய்த threshold-ஐ
மற்றதற்கு எடுத்துச் செல்ல வேண்டாம்.

**Fix:** ஒவ்வொரு கேள்வியையும் நேரடியாகப் பொருள் தரும் விதமாகக் கேட்டு, identities-ஐ code-இல்
நிலைநாட்டுங்கள். Skill-suggestion cookbook pattern-தான் template: skill தேர்வுக்கு
`Choice`, suggest செய்வதா வேண்டாமா என்பதற்கு `Nouls`.

## 9. Generation – Jev-ஐ prose எழுத வைக்க வேண்டாம்

Jev text generate செய்யப் பயிற்றுவிக்கப்படவில்லை. Choices-ஐ chain செய்து generation வற்புறுத்துவது
மெதுவானது, மோசமானது. Extraction-க்கு முதலில் regex/generative model-ஆல் candidate spans எடுங்கள்.

**Fix:** answer space bounded-ஆக இருக்கும்போது, extraction-ஐ options மீதான
`Choice`-ஆக்குங்கள். உண்மையில் open-ended text தேவைப்பட்டால், அந்தப் பகுதிக்கு
generative model பயன்படுத்துங்கள்.

## Ship செய்யும் முன் checklist

- Code exactly compute செய்யக்கூடியதை model-இடம் கேட்க வேண்டாம்.

- ஒரு கேள்விக்குள் பல judgments-ஐ மறைக்க வேண்டாம் – பிரியுங்கள்.

- System Two பணிகள் (indirection அடுக்குகள்) System One model-க்கு உரியவை அல்ல.

- கேள்விக்குத் தேவையானதை விட அதிக state அனுப்ப வேண்டாம்.

## இறுதி முடிவு

Jev 1.13 தன் வேகத்தைக் குறுகிய, literal, well-scoped judgments-இல் சிறு, relevant state-உடன்
ஈட்டுகிறது. Jagged பட்டியலில் உள்ள அனைத்தும் வெவ்வேறு உடையில் அதே தவறு: judgment model-ஐ calculator,
calendar, filter, writer ஆக்க முயல்வது. Exact பகுதிகளை code-இற்குத் தள்ளி, semantic முடிவை Jev-இடம்
வையுங்கள் – "jaggedness" பெரும்பாலும் மறைந்துவிடும்.
Full source: [docs.typesafe.ai/model-jaggedness/jev-1.13](https://docs.typesafe.ai/model-jaggedness/jev-1.13).

---

*VelsTech – https://velstech.net/jev-1-13-jaggedness.ta.md*
