
Ändringslogg
Hämtat ur den verkliga utvecklingshistoriken och omskrivet till vanlig svenska.
13 september 2026
Beslutslogik: okänt förblir okänt och uttryckliga krav får spärra
- Motorversion 2026.09.13. Live-hotells saknade attribut (tystnad m.m.) räknades som delvis matchning och drog ner poängen, nu är de okända och lämnas utanför bedömningen, aldrig en påhittad delpoäng.
- Ett uttryckligt tyst rum (eller lugnt läge som krav) är nu ett riktigt krav som kan spärra: ett hotell som bevisligen är livligt kan inte längre bli Tryggast eller Bäst värde. Kan underlaget inte säga något om tystnad förblir svaret okänt, aldrig ett påhittat nej.
- En dyr eller på annat sätt hårt utesluten kandidat (över budget, passerad, undvik-listan, för få stjärnor/betyg) kan inte längre stänga av roller för resten av urvalet, poolundantagen räknar bara kandidater som faktiskt kan väljas.
- När du bett om avbokningsbart kan ett bekräftat icke-avbokningsbart pris inte längre bli Bäst värde eller Pärlan (tidigare spärrades bara Tryggast). Ett okänt avbokningsvillkor är fortfarande inte ett nej och kan väljas, med osäkerheten synlig.
13 september 2026
Sanningen först: rätt tid för fristen, ärlig status och inga påhittade belopp
- Motorversion 2026.09.13. En avbokningsfrist som redan har gått ut räknas nu som ett känt nej när vi bedömer risken. Tidigare kunde ett pris där den fria avbokningen hade gått ut bli Tryggast, med texten 'förbered bokning'. Kalenderfilen behåller nu fristens klockslag (tidigare blev det en heldag med larm kl. 09.00). När källan anger en tidszon visar vi svensk tid. Aldrig ett påhittat '(GMT)'.
- Underlaget och avbokningsmejlet säger 'avslutat hos Tripnorm' i stället för 'avbokad', eftersom vi inte avbokar något hos hotellet eller partnern. Texten säger nu rakt ut att en gjord bokning avbokas där du bokade den.
- Vi skriver 'Bekräftad' bara när bokningssajten har gett oss ett bokningsnummer. En partnerbokning som du själv har bekräftat visas som 'Bokad enligt din uppgift' i Mina resor, i bokningsbeviset och i kalenderfilen.
- Bekräftelsen kan inte längre visa fel belopp. Bokningen kräver nu det låsta priset, så saknas beloppet stoppas bokningen i stället för att sparas som 0 kr. 'Senast kontrollerad' och statusen följer samma regel: det vi inte vet visas som okänt.
10 september 2026
Mina resor och e-postmallarna: hela resan efter bokningen
- Ny sida /resor, och /resor/hitta när du inte har några sparade resor. Du öppnar en bokning med bokningsnummer och mejladress. På /resor/[ref] finns Bokningsbevis (utskrift och kalenderfil), Inför ankomsten, Ändra vistelsen, Avboka och Betalningsunderlag (bara för direktbokningar). Bokningarna sparas i webbläsaren, utan konto. Statusen hämtar vi alltid på nytt från servern. Aldrig från det webbläsaren minns.
- Nya skyddade API:er: POST /api/bookings/find ger samma svar oavsett vad som var fel, och GET /api/bookings/status kräver ägartoken. Nu går det också att avboka en bokning som redan är bekräftad. Tidigare gick det bara med ett underlag som inte hade använts.
- Mejlen (bokningsbekräftelse, avbokning, inför ankomst och prisfall) har fått en gemensam layout. Avbokningsmejlet går ut automatiskt när du har avbokat. På /dev/epost kan man se alla mejl med exempeldata.
- Det här har vi medvetet inte byggt: att ändra en bokning, riktig status för återbetalningar och en kontaktväg till hotellet. Inget av det finns i våra data, så vi låtsas inte heller att det gör det.
10 september 2026
Hjälp, förtroende och sparade hotell i samma mall
- Nytt hjälpcenter (/hjalp med ändra eller avboka, kontakt och pågående resa), en sida om tillgänglighet, en om-sida, feedback, en sida för underhåll och avbrott och en omskriven 404, allt i samma mall. Sidorna om förtroende och juridik (så väljer vi, ärlighet, oberoende, ändringslogg, villkor, integritetspolicy, cookies, om företaget) har flyttat till samma mall. Innehållet är detsamma.
- 'Cookieval' och 'Svenska · SEK' i sidfoten öppnar nu riktiga dialogrutor i stället för att bara vara text. Kontaktformuläret säger att meddelandet är skickat bara när mejlet verkligen har gått iväg.
- Hotell och beslut: resultatsidan har fått en sammanfattning med 'Ändra sökning' och länkar till att jämföra sida vid sida, en karta (med en vanlig lista när kartan inte räcker) och 'Varför just de här tre?' utifrån de regler som faktiskt gällde. Dessutom en hotellsida med flikar och egen länk (?val=), sparade hotell med ett hjärta och en egen sida, och en dialogruta för att dela hela urvalet eller ett enskilt val.
- Flera vyer från skisserna är inte byggda än, bland annat flikar för rum, ett galleri och villkoren som egen vy. Vi visar dem inte som om de fanns.
10 september 2026
Betalflödet i fyra steg, och dubbelklicksskyddet som höll isär gäster
- Direktbokningen går nu i fyra steg (Ditt sätt · Dina uppgifter · Kontrollera · Betala), men bakom kulisserna är allt som förut. Vi kontrollerar avbokningsvillkoret innan du betalar, och varje fel som kan uppstå när priset låses eller bokningen görs får ett eget, ärligt besked. Ett fält för egna önskemål till hotellet byggde vi medvetet inte, eftersom det inte finns något sätt att skicka fritext vidare.
- När du själv svarar 'Jag har en bekräftelse' märks det alltid som 'Uppgift från dig'. Vi räknar aldrig en partnerbokning som bekräftad bara för att du har sagt det.
- Ett allvarligt fel i skyddet mot dubbelklick: två olika gäster som valde samma rum, datum och sällskap kunde slås ihop till en bokning, och båda fick tillgång till den. Nu känner vi igen dubbletter på ett id per flik och försök, aldrig på själva resvalet. Utan ett sådant id slår vi inte ihop något alls.
8 september 2026
Bokningspartnern tar betalt, ingen kassa hos Tripnorm
- Det är bokningspartnern som säljer rummet och tar betalt direkt av dig. Partnern betalar sedan ut Tripnorms påslag varje vecka. Tripnorm lägger inte ut för något rum och har ingen egen kassa.
- Påslaget är lika många procent för alla hotell och alla tre roller. Vi tjänar alltså inte mer på något av valen, så oberoendet håller även när du betalar.
- Partnerns betalfält (byggt på Stripe, i partnerns egen ruta) visas i underlaget efter dina uppgifter. Pris och rum kontrolleras innan betalningen öppnas, och bokningen blir klar när du är tillbaka från betalfönstret. Kortuppgifterna går till partnern, aldrig till Tripnorm.
- Vi testar hela kedjan automatiskt i partnerns testmiljö: ett testkort i betalfönstret, hela vägen till en bekräftelse med bokningsnummer.
7 september 2026
Skriv staden på svenska: Rom, Wien, Kreta, Umeå och 120 resmål till
- Motorversion 2026.09.07. Tidigare kände vi bara igen tolv städer, och allt annat blev 'vi täcker inte den staden'. Nu förstår vi svenska namn på ungefär 130 resmål (Rom, Wien, Köpenhamn, Helsingfors, Kreta, Mallorca, Teneriffa, New York, Bangkok …) och svenska orter från Uppsala till Kiruna. Varje stad har det namn och den landskod som bokningssajten behöver. 'Göteborg' söks alltså som Gothenburg, vilket gav 279 hotell i stället för 2.
- Vi rättar stavfel när det bara finns en rimlig tolkning: 'Köpenhman' blir Köpenhamn, och vi visar att vi har rättat. Korta ord rättar vi aldrig: 'rum' blir inte Rom.
- En stad som vi känner till men ännu inte har handplockade hotell för ger ett ärligt tomt svar tills vi har livepriser, aldrig Stockholmshotell i förklädnad. Nämner du ingen stad alls visar vi fortfarande Stockholm, men säger nu att det är ett antagande.
- Vi förbereder bokning via LiteAPI. Pris och rum kontrolleras i ett eget steg innan du bokar, och ändras priset stoppas bokningen i stället för att du debiteras i tysthet. Kortuppgifterna går aldrig via Tripnorm.
- Livepriser för alla hotell i staden. Sökningen går nu i två steg. Först hämtar vi stadens alla hotell från bokningspartnern (534 i Stockholm, över 1 000 i Rom) och sållar på dina krav, betyg och antal omdömen. Sedan hämtar vi riktiga priser för dina datum för de 60 bästa. Varje kort visar hotellets egen bild, stjärnor, betyg, omdömen, bekvämligheter, avbokningsvillkoret för just det priset och avståndet till centrum. Vet vi avståndet påverkar det poängen för läget. Annars räknar vi läget som förut. Tratten visar hur många hotell staden hade, hur många vi frågade om pris och hur många som hade ett pris.
- Vi förstår fler önskemål i din text. 'Nära Centralstationen' mäts nu i meter från en punkt på kartan (0,4 km fågelvägen). 'Minst 4 stjärnor' och 'betyg minst 8' stoppar hotell som vi vet ligger lägre, aldrig hotell där vi inte vet. 'Helst bastu' räknas som ett önskemål utan att stoppa något, och 'utan frukost' eller 'vill inte ha spa' blir något att undvika. Vi förstår nitton nya bekvämligheter: restaurang, bar, rumsservice, sen incheckning, hiss, bastu, laddstolpe, rökfritt, konferensrum, tvättmaskin, takterrass, barnpool, lekrum, cykeluthyrning, skidförvaring, lägenhet med kök, familjerum och betala på hotellet. Allt syns i 'Så förstod vi din resa', med hur mycket det vägde.
- Du betalar hos bokningspartnern. Du fyller i dina uppgifter, priset låses och betalfältet öppnas direkt i underlaget. Kortuppgifterna går till partnern, aldrig till Tripnorm. Vi lägger inte ut för rummet och har ingen egen kassa. När du har betalat bokas rummet och bekräftelsen kommer på mejl. Priset du ser i sökningen är priset du betalar. Tripnorms ersättning ingår i det och är densamma oavsett vilket av de tre valen du bokar.
- Ingen stad betyder inte längre Stockholm. Tidigare gav 'bolänge' tre Stockholmshotell, eftersom vi inte kände igen ordet som en stad. Nu provar vi varje ord mot stavningsrättningen ('bolänge' blir Borlänge), och en sökning helt utan stad frågar 'Vart ska du?' i stället för att visa ett exempel. 25 svenska orter till, från Borlänge till Piteå. Texterna på resultatsidan är omskrivna i klarspråk: 'Tre val för Rom', 'Så läste vi din sökning', 'Hårda regler', 'Urvalet', 'Visa fler', 'Jämnt lopp mot …', och Pärlan heter 'Det mest personliga valet' i stället för 'bästa som återstod'.
- Bokningen följer nu den ordning du fattar beslut i. Underlaget öppnas direkt under de tre valen, inte längst ner på sidan. Först det du bokar (avbokning, pris, datum, rum, betalning), sedan dina uppgifter och sist knappen med beloppet. Medan det pågår står det 'Låser priset…' och 'Bokar hos hotellet…'. Kortets knapp säger 'Boka det här' när du kan boka direkt. I bekräftelsen syns bokningsnumret tydligast, fristen som '66 dagar kvar att avboka gratis, till 12 november kl. 10:00' och efteråt 'Sök en ny resa' i stället för 'Byt hotell'. Sidopanelen förklarar de tre stegen före bokningen och vad som händer sedan.
- Bekräftelse på mejl: när bokningen är bekräftad får du ett mejl med bokningsnummer, hotellets bekräftelsekod, hotell och adress, datum, gäster, rum, pris, avbokningsvillkor och en kalenderfil, samma uppgifter som i underlaget. Om mejlet inte kan skickas hamnar det i vår interna utkorg, och underlaget säger det i stället för att låtsas att det har gått iväg.
- Du kan boka hela vägen. Med livepriser visas bokningsformuläret direkt i underlaget: namn, mejladress och telefon, inga kortfält. Priset låses hos bokningspartnern innan något bokas. Har hotellet ändrat priset får du veta det och kan söka igen med aktuella priser. Bekräftelsen visar bokningsnummer, hotellets bekräftelsekod och exakt när den fria avbokningen upphör. Underlaget visar de låsta datumen (datum vi har antagit märks som antagna), rumstypen och exakt pris utan 'ca'. Villkoren, integritetspolicyn, cookiesidan, ärlighetsgarantin och oberoendeförklaringen (v2.1) är omskrivna eftersom det är bokningspartnern som tar betalt.
- Du kan ändra hur vi tolkade dig med ett klick. I 'Så förstod vi din resa' är varje krav, önskemål och sak att undvika en knapp. Du kan släppa ett krav, göra ett önskemål till krav eller ta bort det, och tillåta något du ville undvika. Krav på närhet, stjärnor och betyg har ett kryss. Varje klick skriver om din sökning så att du ser det och söker igen, inget döljs.
- Ord vi inte förstod: efter varje sökning sparar vi de ord vi inte kände igen. Bara orden, aldrig hela sökningen, och mejladresser och telefonnummer tar vi bort först. Vi räknar orden internt, så att vi lär oss hur folk faktiskt skriver i stället för att gissa.
- De tre valen står nu sida vid sida överst: roll, hotell, pris och var hotellet hamnade på skalan, med tvåans plats markerad. Tidigare låg korten i en lista där man bara såg ett i taget. Nu ser du svaret som tre val, och korten under visar varför. Staplarna fylls när svaret kommer och markören tonar in när de har stannat. Har du valt minskad rörelse visas slutläget direkt. Den lilla raden ovanför rubriken är borta. Löftet står redan i sidhuvudet.
2 september 2026
Redo för lansering: motorn, korten, bokningsunderlaget, bevakningarna och designen
- Motorversion 2026.09.02. Har du inte angett någon budget jämförs Bäst värde nu med prisnivån bland alla hotell vi tittade på (tidigare vann det som kom först i bokstavsordning). 'Fri avbokning' påverkar bara poängen för avbokning och tar inte längre bort budgetgränsen. Ett hotell som saknar något du uttryckligen krävt (till exempel pool) kan inte bli Tryggast eller Bäst värde. Det står som 'Saknar: …' med en knapp för att släppa kravet. Ungefärliga budgetar ('runt 2 000') och totalbelopp ('9 000 totalt') förstår vi som just det.
- Kortet hjälper dig att bestämma dig: en kort förklaring av rollen, vad hotellet är, en mening om varför det passar just din resa, fakta i fyra rutor (pris, betyg, avbokning, avgifter), 'Haken' och 'Jämnt mot <hotell>, skillnaden: …'. Det vi inte vet står på en rad per kort, eller på en gemensam rad när det gäller alla tre.
- Första sidan: ett tomt sökfält, knappen direkt under, exemplen samlade och tre tomma kort som platshållare. När resultatet visas krymper rubriken och korten kommer först. Tratten, versionen och verktygen ligger under. På mobilen finns en meny, klickytor på 44 px och korten direkt under sökfältet.
- Bokningsunderlag i stället för 'bokning'. 'Boka hos partnern' öppnar Booking.com med hotell, datum och gäster ifyllda (utan någon provisionskod). Checklistan börjar med avbokning. När du har klickat dig vidare frågar vi 'Bokade du?', och kalendern kommer först efter ett ja. Byter du hotell avbryts det gamla underlaget. Prisbevakning erbjuder vi bara när vi kan kolla ett livepris igen. För referenspriser säger vi det rakt ut och ber inte om din mejladress.
- Prisvakten heter nu Avbokningsfristen och gör just det: räknar ner till sista dagen för fri avbokning och lägger fristen i din kalender. Felmeddelandena är på svenska och står under rätt fält, och siffror skrivna på svenskt sätt förstås. Flygvakten: vilka flyg EU261 gäller och 14-dagarsregeln, inga datum före 2005, kravbrev med flygbolag och datum ifyllda och 'Öppna i mejl'. Bevakningarna länkas från sidfoten och underlaget, inte från huvudmenyn.
- Design: en skala för textstorlekar, ett raster för avstånd, fem hörnrundningar och en skugga, och ett test ser till att det förblir så. Petrol används bara där vi har mätt något. Bäst värde har fått en egen färg. Stapeln ser likadan ut i kort, tratt, laddning, tomma lägen och vikter. Mörkt läge har egna nivåer för djup.
- Skydd: bokning och prisbevakning har en gräns för hur många anrop som går igenom, säkerhetstester ser till att ingen kommer åt någon annans bokning, hela flöden testas automatiskt, driftkontrollen säger som det är om händelseloggen, sparade svar visar hur gamla de är och juridiksidorna är rensade från utvecklaranteckningar.
26 augusti 2026
Flygvakten räknar hela sällskapet, och ändringsloggen finns som RSS
- Flygvakten visade bara ersättningen per passagerare, så en familj på fyra fick räkna själv. Ett nytt fält visar nu summan för hela sällskapet när vi vet beloppet. Antalet stannar i din webbläsare och varken skickas eller sparas.
- Ändringsloggen, "det bästa beviset på att man kan lita på oss", kunde man bara följa genom att komma ihåg att öppna sidan igen. Nu finns den som RSS-flöde (/andringslogg/feed.xml), som RSS-läsare hittar själva, och med en länk i sidfoten.
26 augusti 2026
Tre förbättringar till inför lanseringen: dela, historik och bokningslänk
- Historik och Översikt låg ovanför sökrutan på en annars tom förstasida, innan det fanns något att visa. Nu ligger de under resultatet, där de har något att peka på.
- Knappen "Öppna bokningssök" sa inte vart den ledde. Nu heter den "Öppna på Google Travel", för det är dit länken går. En länk direkt till just det hotellet skulle kräva ett id som vi inte har, och att hitta på ett hade varit osant.
- Man kunde kopiera länken till hela sökningen men inte till ett enskilt val, just det man vill skicka till en kollega. Nu har varje kort "Dela det här valet", som kopierar en kort text med roll, hotell, pris och varför.
26 augusti 2026
Fjorton av fyrtio förbättringar inför lanseringen
- Sidhuvudet har fått en tydlig huvudknapp ("Sök hotell"), och menyn bryts inte längre över tre rader på mobilen. Nu scrollar den i sidled i stället.
- "Inte valt" visades som "Inte Valt" innan vi hade tolkat något resmål. Det var ett fel i formateringen, inte i texten.
- Belopp skrevs på tre olika sätt på samma sida ("4000 SEK", "3 700 SEK totalt", "4 000 kr"). Nu skriver vi dem på ett sätt, samma som i varje färdigt val.
- Ingressen lovade att Tripnorm "genomlyser hela utbudet". Det stämde inte. Vi utgick från åtta handplockade hotell per stad. Nu står det just så, både på startsidan och i "Så väljer vi".
- Betyg och omdömen saknade märkningen "kurerat, inte live" som priset redan hade. Nu finns den på båda korten.
- Tidigare gick det att bevaka ett flyg år 2035, och en sådan bevakning kan aldrig få ett riktigt svar. Nu går det bara att bevaka tolv månader framåt. Bakåt finns ingen gräns, eftersom ett EU261-krav kan gälla flera år tillbaka.
- Flygvakten nämnde bara ARN vid namn. Nu står det också vad det är (en statlig myndighet som prövar gratis) och det finns en länk till arn.se.
- Kontaktadressen fanns bara på /impressum, tre klick bort. Nu står den i sidfoten på varje sida.
- Flygvakten och Prisvakten länkade inte till vår oberoendeförklaring, just där man undrar "vad tjänar Tripnorm på det här?". Nu gör båda det.
- Alla undersidor hade samma titel när de delades ("Tripnorm") och saknade egen huvudadress. En länk i Slack eller iMessage såg därför likadan ut oavsett vilken sida man delade. Nu har alla tolv sidor egen titel, beskrivning, bildtext och huvudadress, hämtade från ett och samma ställe.
- robots.txt sa bara "Allow: /". Den pekade inte på vår sitemap och höll inte historik, översikt och admin borta från sökmotorerna, sidor som bara visar din egen data eller är interna verktyg. Nu pekar den på sitemapen och stänger ute de tre sidorna.
26 augusti 2026
Genomgång inför lanseringen: fem stoppande fel rättade
- En stad vi inte kände till (till exempel "Rom") gav tre Stockholmshotell utan minsta varning. Vi hittade felet genom att själva använda tjänsten, inte genom att lita på vad som sades vara byggt. Nu får du ett ärligt besked: "Vi täcker tolv städer i dag, X är inte en av dem", och du kan rösta på nästa stad. Varje stad vi saknar noterar vi, så vi vet var vi ska växa.
- Skrev du "vill kunna avboka" eller "fri avbokning" kunde inget hotell någonsin bli Tryggast, eftersom de handplockade hotellen aldrig har ett bekräftat avbokningsvillkor. Ett bekräftat nej stoppar fortfarande alltid ett hotell. Men när inget alternativ är bättre bekräftat stänger ett okänt villkor inte längre av hela funktionen. Osäkerheten står kvar, tydligt märkt, på kortet som ändå får rollen.
- 36 av 96 hotellbilder visade sig användas för två olika hotell (dock aldrig i samma stad). Nu är varje hotellbild tydligt märkt "Genrebild": en utvald arkivbild, inte ett foto av just det hotellet.
- Egen delningsbild (skapad hos oss, inte hämtad utifrån), huvudadresser för sidorna och fyra sidor som saknades i sitemapen: Prisvakten, Flygvakten, Oberoende och Ändringsloggen.
- Ärlighetsgarantin påstod något som inte längre stämde efter rättningen av Tryggast ovan. Den är uppdaterad och har fått ett nytt löfte om att bilderna är genrebilder.
- Flygvakten och Prisvakten sparar nu bevakningarna i en riktig databas, som resten av tjänsten, och kontrollerar dem själva en gång per dygn. Tidigare fick en bevakning bara ett svar om du själv öppnade sidan igen. Gjorde du inte det hände ingenting.
25 augusti 2026
Prisvakten för alla bokningar, två vägar i Flygvakten och en sida om vårt oberoende
- Prisvakten (/prisvakten) bevakar nu bokningar du har gjort var som helst. Fyll i uppgifterna från din bekräftelse, så räknar vi ner till sista dagen för fri avbokning. Efter det avslutar vi bevakningen, eftersom du då inte kan göra något åt ett lägre pris. Prislarm skickar vi fortfarande bara när vi faktiskt har sett ett pris och vet varifrån det kommer. Tills vi har en priskälla säger vi det rakt ut.
- Flygvakten får två vägar. Gör det själv är gratis för alltid (du behåller 100 %). Vi förbereder också en väg där vi sköter allt: 25 % av ersättningen när den betalas ut, ingen avgift om du inte får något. Andra ombud tar 30–50 %. Den vägen öppnar vi först när villkoren är juridiskt klara.
- Ny sida /oberoende: vår oberoendeförklaring som ett dokument med versionsnummer som du kan kontrollera. Den säger att ingen kan betala sig till en plats, att samma sökning alltid ger samma svar, att bevakningarna inte gynnar någon bokningssajt och vad som gäller för framtida intäkter. Alla ändringar finns kvar i historiken.
25 augusti 2026
Flygvakten: bevaka ditt flyg och få kravet gratis
- Nytt: /flygvakten bevakar ditt flygnummer och säger till när villkoren i EU261 är uppfyllda (minst 3 timmars försening vid ankomst enligt Sturgeon-domen, eller inställt flyg). Då skriver vi hela kravet åt dig, klart att skicka själv. Tripnorm tar 0 % av ersättningen. Ombuden tar 30–50 %.
- Samma ärlighet som i resten av Tripnorm. Beskedet påminner alltid om att extraordinära omständigheter kan göra att du inte får något (art. 5.3). Vi lovar aldrig pengar, vi visar villkoren. Vet vi inte hur lång sträckan är visar vi hela beloppstabellen, aldrig ett gissat belopp. Vi visar alltid varifrån uppgiften om flyget kommer.
- Sju tester ser till att beloppen i art. 7 blir rätt precis vid kilometergränserna, att gränsen på 180 minuter håller, att halveringen för långa flyg stämmer (art. 7.2) och att brevet aldrig tar någon andel. Hela flödet testas dessutom från början till slut.
- Vi valde att bygga just det här, och inte en flygsök, efter att ha undersökt marknaden 2026-08-25: EU-reformen behöll gränserna, ombuden tar 30–50 %, och bara några få procent av dem som har rätt till ersättning söker den.
25 augusti 2026
Ny design och tre sätt att visa hur vi väljer
- Hela tjänsten har fått en ny, tidningslik design (»Redaktionen«): varmt papper, rubriker med serifer, bärnsten som accentfärg, färgade band för varje roll, och ett mörkt läge i samma varma toner. Vi har mätt kontrasten i varje färgpar mot WCAG.
- Motorversionen syns nu vid varje resultat och i beslutsunderlaget, med en länk hit. Ett nytt test kör samma sökning två gånger och kräver exakt samma svar. Löftet att samma sökning ger samma svar är alltså prövat, inte bara påstått.
- "Så valde vi bort" syns nu alltid under korten: hur många hotell vi vägde, hur många som föll på hårda regler och hur många som klarade dem utan att få en roll. Hela tabellen, hotell för hotell, ligger ett klick bort.
- Varje kort visar nu totalpriset först och priset per natt under. Om det tillkommer avgifter, eller om vi inte vet, syns det direkt på kortet, inte bara i detaljerna.
19 augusti 2026
Amadeus: nyckeln är nu allt som krävs
- Vi hittade och täppte till två luckor mellan "koden finns" och "det fungerar". Med livedata från Amadeus körde en enklare motor än med våra egna hotell (ingen "Utöka urvalet", inga marginaler, tom tabell). Nu använder båda exakt samma motor och samma kod.
- En inställning som ingen hade dokumenterat (FF_LIVE_HOTEL_PROVIDER) kunde stoppa livedata även med giltiga nycklar. Nu är den påslagen från början överallt, så det är nycklarna som avgör, inte en inställning ingen visste om.
- Meddelandet som förklarar varför vi visar våra egna hotell i stället för livedata utgår nu från vad som faktiskt hände när vi frågade Amadeus, i stället för att alltid visa samma text.
- Tre nya tester ser till att luckorna ovan inte kommer tillbaka.
19 augusti 2026
Utöka urvalet, justera resan och 96 hotell
- "Utöka urvalet": under de tre valen kan du nu visa reserverna, alltså hotellen som klarade reglerna men inte fick någon roll. De kommer tre i taget, i poängordning, med samma poäng och matchningar som korten och en rad om vilken roll de var närmast och hur långt ifrån de var.
- "Justera resan": knappar under resultatet ändrar en sak i taget (budget, antal nätter, ta bort ett krav, lugnt eller livligt). Varje knapp skriver en ny sökning utifrån det vi förstod och kör den som vanligt. Det du ser är det vi söker på, och vi har testat mot alla våra exempelsökningar att den nya sökningen betyder samma sak.
- Varje kort visar nu hur stor marginalen var till tvåan. Låg tvåan nära står det "jämnt lopp", så att inte alla vinster ser lika självklara ut.
- 96 handplockade hotell (8 per stad) i stället för 60, så att det finns fler reserver och fler hotell att matcha mot.
- Tabellen "Hela urvalet" visar nu vilka hotell som är reserver och i vilken ordning, så att den alltid stämmer med "Utöka urvalet".
- Nya tester ser till att allt ovan fortsätter att fungera.
12 augusti 2026
Enter skickar sökningen
- Ett riktigt fel som vi hittade genom att använda tjänsten i en vanlig webbläsare, inte bara läsa koden: Enter i sökfältet gav bara en ny rad i stället för att söka. Nu söker Enter och Shift+Enter ger en ny rad, som i andra sökrutor.
- En diskret rad under fältet berättar hur det fungerar.
- Ett nytt test ser till att det fortsätter att fungera.
- Efter rättningen gick vi igenom allt på mobil (390 px) och i mörkt läge och hittade inget mer.
12 augusti 2026
Större sökmotor och smartare matchning
- 12 städer i stället för 5 (nya är Göteborg, Malmö, Oslo, London, Berlin, Amsterdam och Paris) och 60 handplockade hotell i stället för 16.
- Sökningen förstår hur länge du stannar ("en vecka"), månad ("i juli" ger referenspriser för säsongen, och vi säger det), vilka du reser med, total budget och fler krav: pool, spa, gym, frukost, husdjur, tillgänglighet med mera.
- Varje önskemål du skriver (lugnt eller livligt, familj, arbetsro, centralt, stil, krav, sådant att undvika) jämförs steg för steg med vad vi vet om hotellen. Varje kort visar "Matchar N av M parametrar" och hur det gick för varje rad. Det vi inte vet räknas aldrig in.
- Hittar vi inget ger vi förslag som vi redan har provat ("höj budgeten till X → N val"). Varje siffra kommer från en riktig ny sökning, aldrig från en uppskattning.
- "Hela urvalet": varje hotell vi tittade på visas med poäng, roll eller exakt varför det valdes bort. Du kan dela en sökning med en länk, söka igen från historiken, jämföra i en tabell och skriva ut ett beslutsunderlag med referensfält.
- Tillgänglighet: resultatet fungerar med skärmläsare, vi tar hänsyn till inställningen för minskad rörelse, det finns en länk som hoppar direkt till innehållet och mobilen har fått en genomgång.
2 augusti 2026
Designgenomgång: nya sidor, historik och fler fel i mörkt läge rättade
- Nya färger, typsnitt och märken efter en fristående designgenomgång.
- Nytt: historik, översikt och den här ändringsloggen. Historiken och översikten sparas i din webbläsare, inte på något konto.
- En spalt till vänster om resultatet: "Så förstod vi din resa" och "Regler som slog till", och en rad för att filtrera som visar hela urvalet, inte bara resultatet.
- Tydligare besked medan vi söker, och en ärligare sida när inget hotell klarar kraven.
- Något vi själva hittade när vi gick igenom skärmbilder: att historik och översikt visade exempel stod bara på en knapp, som försvann så fort man scrollade förbi. Nu står det i en tydlig ruta ovanför listan.
- Vi hittade och rättade 5 fel där texten hade för svag kontrast (under WCAG AA) och 4 fel i mörkt läge, och kontrollerade dem med ett automatiskt test.
1 augusti 2026
Stor genomgång: öppen rangordning, ärlighetsgaranti och säkerhet
- /sa-valjer-vi: vikterna och reglerna som faktiskt styr rangordningen, hämtade direkt ur koden, inte en förenklad beskrivning.
- Vi mäter hur lång tid det tar från sökning till beslut på riktiga beslut och visar det öppet. Vi hittar aldrig på siffran.
- Sidor för vanliga typer av resor, med en riktig sökning i stället för bara säljtext.
- Vi tog bort ett gammalt sökflöde, en admininloggning utan lösenord och texter som fanns på två ställen.
- Vi rättade ett fel där den gråa brödtexten hade för svag kontrast (2,64:1 när WCAG AA kräver 4,5:1).
- Säkrare drift: automatiska tester vid varje ändring, tester mot gamla fel, en felsida som fångar allt och skydd i webbläsaren mot vanliga attacker.
- Vi rättade ett fel där mejl om prisbevakning kunde fastna, och täppte till två säkerhetshål: ett sätt att lura gränsen för antal anrop och ett sätt att smyga in egna filter.
- Ett riktigt resultat: varje kort visar poäng, avbokningsvillkor och hur färskt priset är, inte bara löptext.
- Data sparas i en riktig databas (Supabase), prisbevakningen körs på schema och bekräftelser skickas som riktiga mejl (via Resend).
- Gräns för antal anrop, en sidfot och första versionen av juridiksidorna (villkor, integritetspolicy, cookies).
31 juli 2026
Beslutsmotorn blir riktig
- Den riktiga poängmotorn är byggd: sex faktorer som tar hänsyn till risk, hårda regler som stoppar hotell och tre roller (Tryggast, Bäst pris, Pärlan) i stället för en enkel tumregel.
- Vi förstår nu vad du skriver: datum, budget, varför du reser, krav ("vill kunna avboka") och sådant du vill undvika.
- En första koppling till Amadeus för hotellsökning (koden finns, men vi har inga skarpa nycklar än).