Controleer vóór het toepassen
Vergelijk het werkelijke gedrag met het verwachte resultaat. Onderzoek een mislukte controle voordat je verdergaat met wijzigingen.
Breng één tot 16 Content-Length-velden van maximaal 128 tekens tot een gedeelde waarde van nul tot 2147483647.
import re
def agreed_content_length(fields):
if type(fields) is not list or not 1 <= len(fields) <= 16:
raise ValueError("length.fields")
result = None
for field in fields:
if type(field) is not str or len(field) > 128:
raise ValueError("length.field")
for item in field.split(","):
token = item.strip(" \t")
if re.fullmatch(r"[0-9]+", token) is None:
raise ValueError("length.digits")
value = int(token)
if value > 2147483647 or (result is not None and value != result):
raise ValueError("length.agreement")
result = value
return result
Vergelijk het werkelijke gedrag met het verwachte resultaat. Onderzoek een mislukte controle voordat je verdergaat met wijzigingen.
Stel een OpenAI-compatibel of Anthropic-endpoint in met de basis-URL en zo nodig een API-sleutel. Test de verbinding. Een lokale modelserver moet actief zijn; externe hulpmiddelen kunnen apart gegevens versturen.
Test kommalijsten, voorloopnullen, spaties en tabs, weiger lege delen, tekens, regeleinden en verschillen zonder volledige HTTP-kadercontrole te claimen.
import re
def agreed_content_length(fields):
if type(fields) is not list or not 1 <= len(fields) <= 16:
raise ValueError("length.fields")
result = None
for field in fields:
if type(field) is not str or len(field) > 128:
raise ValueError("length.field")
for item in field.split(","):
token = item.strip(" \t")
if re.fullmatch(r"[0-9]+", token) is None:
raise ValueError("length.digits")
value = int(token)
if value > 2147483647 or (result is not None and value != result):
raise ValueError("length.agreement")
result = value
return result
Leniora is een AI-programmeerwerkruimte voor Windows om de code tussen binnenkomende protocolvelden en toepassingsbeslissingen te onderhouden. Open de relevante bronmap en vermeld de acceptatieregel die je project wil afdwingen. Vraag het verbonden model de veldparser en de aanroepende code samen te onderzoeken voordat het een versoepeling of opschoning voorstelt.
Een voorbeeldtaak betreft content_length.py en herhaalde Content-Length-waarden. Geef in het gesprek een overeenstemmende reeks decimale waarden en een conflicterende reeks, met de verwachte reactie voor elk. Beoordeel de voorgestelde wijziging op veranderingen in witruimte, numerieke syntaxis en grenzen, want schijnbaar kleine parserwijzigingen kunnen het geaccepteerde invoercontract verruimen.
Zet de beoordeling voort in de code die het ontlede resultaat gebruikt. Voer je projecttestgevallen uit en onderzoek hoe afwijzing wordt afgehandeld voordat verwerking van de berichtinhoud doorgaat. Houd dit afgebakende beleid gescheiden van claims over een volledige HTTP-implementatie: het nuttige resultaat is een wijziging die je kunt toetsen aan het gedrag dat je toepassing werkelijk nodig heeft.
Kies een ondersteund OpenAI-compatibel of Anthropic-eindpunt voor modelondersteuning, met inloggegevens indien vereist. Daar kan een AI-model zonder censuur selecteerbaar zijn, maar de aanbieder bepaalt de werkelijke beperkingen. Beschikbare tools en contextcapaciteit hangen af van het model en de server; nauwkeurige testgevallen helpen het programmeergesprek binnen die grenzen concreet te houden.
Dat hangt af van het acceptatiebeleid van je project. Het voorbeeld vereist overeenstemming tussen de aangeleverde decimale waarden. Beoordeel de omringende protocolafhandeling voordat je die regel wijzigt en schrijf voor de programmeersessie zowel overeenstemmende als conflicterende testgevallen met hun verwachte uitkomsten.
Onderzoek eerst welke extra vormen die zou accepteren, inclusief tekens of andere numerieke notaties. Een handige conversiefunctie kan de grammatica verruimen. Vraag het model het acceptatiegedrag expliciet te vergelijken in plaats van minder parserregels als bewijs voor gelijkwaardige semantiek te behandelen.
Volg het parserresultaat tot in de aanroepende code en vermeld de vereiste foutreactie. Controleer dat verwerking van de berichtinhoud niet kan doorgaan met een willekeurige waarde uit de conflicterende reeks. Voer dat pad uit in je project; een losse uitzondering bewijst niets over de omringende besturingsstroom.
Geef exacte veldteksten met beschrijvingen van spaties en tabs, plus het verwachte acceptatieresultaat. Vermijd voorbeelden die de besproken tekens verbergen. Vergelijk die testgevallen met de vastgelegde verwijderingsregel voor witruimte voordat je een ruimere normalisatiestap overneemt.
Leniora · Bijgewerkt 2026-10-25