A retro-styled adventurer takes a pause by a lush jungle riverbank.
{
"image_analysis": {
"environment": {
"type": "Outdoor",
"setting": "Jungle / Tropical Forest / Riverbank",
"details": "Dense vegetation, presence of water with lily pads, mud or dirt bank."
},
"technical_aspects": {
"camera_angle": "Eye-level relative to the crouching subject, slightly side-profile.",
"lens_type": "Telephoto lens (estimated 85mm-135mm)",
"depth_of_field": "Shallow, background and foreground are blurred (bokeh).",
"composition": "Rule of thirds, subject centered but looking back."
},
"lighting": {
"condition": "Natural daylight, dappled sunlight filtering through trees.",
"sources": [
{
"type": "Sunlight",
"angle": "From above and slightly behind the subject (Backlighting/Rim lighting)",
"color": "Warm White / Golden",
"intensity": "High contrast",
"effect_on_objects": "Creates a halo effect on the subject's hair, highlights the shoulder blade and the curve of the back. Causes lens flare/light leaks in the foreground."
}
]
},
"subject": {
"demographics": {
"gender": "Female",
"age_group": "Young Adult (approx. 20-30s)",
"identity": "Anonymized (resembles 1980s aesthetic)"
},
"orientation": {
"body_facing": "Side profile (facing right of frame)",
"head_facing": "Turned left, looking directly at the camera",
"gaze": "Direct eye contact"
},
"emotional_state": {
"expression": "Alert, slightly surprised or candid, neutral.",
"mood": "Wild, naturalistic, slightly vulnerable but composed.",
"sensuality": "Moderate to High (due to attire and pose, but context is action/survival)."
},
"pose": {
"general": "Deep squat / Crouching position.",
"feet_placement": "Left foot flat on the ground (wearing a shoe), right foot tucked behind on toes (barefoot).",
"hand_placement": "Left hand holding a canteen strap near the knee, right arm obscured/resting.",
"visibility": "Full body visible from head to feet."
},
"head_and_face": {
"hair": {
"color": "Blonde",
"style": "Short, layered, messy/shaggy cut (mullet-esque), wet look or styled casually.",
"texture": "Wavy/Straight mix",
"light_interaction": "Strongly back-lit, glowing edges."
},
"ears": "Partially visible through hair.",
"forehead": "Partially covered by bangs.",
"eyes": "Wide, alert.",
"nose": "Straight, defined bridge.",
"mouth": "Lips slightly parted, natural color.",
"chin": "Defined, slightly pointed.",
"structure": "Oval face shape, high cheekbones."
},
"body_type": {
"build": "Slender, athletic, toned.",
"skin_tone": "Fair to medium tan.",
"neck": "Slender, tendons visible due to head turn.",
"shoulders": "Bony, defined.",
"chest": {
"ratio": "Proportional to slender frame.",
"estimated_size": "Small to Medium.",
"bra_status": "No bra (swimsuit support).",
"nipple_visibility": "Not explicitly visible/defined.",
"shape": "Natural side profile."
},
"abdomen": {
"ratio": "Slim, compressed due to crouching.",
"definition": "Smooth."
},
"hips_and_glutes": {
"ratio": "Curvy relative to waist.",
"prominence": "High prominence due to crouching pose and high-cut swimwear.",
"shape": "Rounded."
},
"legs": {
"thighs": "Toned, compressed against calves.",
"knees": "Sharp angle.",
"calves": "Visible, muscular tension."
}
},
"clothing": {
"upper_body": {
"item": "One-piece swimsuit",
"color": "Black",
"material": "Spandex/Lycra (shiny/wet look)",
"style": "Scoop back, thin straps (halter style likely)."
},
"lower_body": {
"item": "Swimsuit bottom (connected)",
"style": "High-cut leg openings, exposing upper thigh and hip bone."
},
"footwear": {
"left_foot": "Saddle shoe (White with black middle section), laced.",
"right_foot": "Barefoot."
}
},
"accessories": {
"items": [
"Canteen (Metal/Silver with black strap)"
]
},
"light_interaction_body": "Highlight on the left shoulder blade, rim light on the back curve, soft shadow on the face, bright highlights on the shin."
},
"objects": [
{
"name": "Canteen / Flask",
"description": "Silver metal container with a strap.",
"purpose": "Prop indicating survival/hiking context.",
"position": "Held in left hand, resting near knee."
},
{
"name": "Shoe (detached)",
"description": "A second saddle shoe appears to be on the ground in the foreground left (partially cropped).",
"purpose": "Implies a casual or changing state.",
"position": "Bottom left corner."
},
{
"name": "Vegetation",
"description": "Ferns, lily pads on water.",
"color": "Green, dark green.",
"position": "Background and right side."
},
{
"name": "Blurred Foreground Grass/Reeds",
"description": "Out-of-focus yellow/brown stalks.",
"purpose": "Adds depth and voyeuristic framing.",
"position": "Crossing the subject's body in the foreground."
}
],
"negative_prompt": "cartoon, 3d render, illustration, drawing, low quality, pixelated, blurry face, distorted hands, extra limbs, bad anatomy, studio background, grey background, urban setting, fully clothed, denim, heavy makeup, mustache, beard, male."
}
}
Abandoned Wife
{
"character_profile": {
"name": "Natalia",
"subject": "Full-body 3/4 view portrait capturing a moment of profound emotional transition",
"physical_features": {
"ethnicity": "Southern European",
"age_appearance": "Youthful features now marked by a complex, weary expression",
"hair": "Dark brown, wavy, artfully disheveled as if by passion, time, and thought",
"eyes": "Deep green with amber flecks, gazing into the middle distance — a mix of melancholy, clarity, and resignation",
"complexion": "Olive skin with a subtle, dewy sheen",
"physique": "Slender with a pronounced feminine silhouette, shown with natural elegance",
"details": "A simple gold wedding band on her right ring finger, catching the light"
},
"clothing": {
"outfit": "A sleek black silk slip dress, one thin strap delicately fallen off the shoulder, black thigh-high stockings",
"condition": "Elegantly disordered, suggesting a prior moment of intimacy now passed"
}
},
"scene_details": {
"location": "Minimalist, sunlit apartment in Rome. Clean lines, a stark white wall.",
"lighting": "Natural, cinematic morning light streaming in. Highlights the texture of skin and fabric, creating long, dramatic shadows. Feels both exposing and serene.",
"pose": "Leaning back against the wall, body in a graceful 3/4 contrapposto. One hand rests lightly on her collarbone, the other hangs loosely. A posture of quiet aftermath and introspection.",
"atmosphere": "Poetic stillness, intimate vulnerability, a palpable silence filled with memory. Sophisticated, raw, and deeply human. The story is in her expression and the space around her."
},
"technical_parameters": {
"camera": "Sony A7R IV with 50mm f/1.2 lens",
"style": "Hyper-realistic fine art photography. Cinematic, with a soft film grain. Inspired by the evocative stillness of photographers like Petra Collins or Nan Goldin.",
"format": "Vertical (9:16), perfect for a portrait that tells a story",
"details": "Sharp focus on the eyes and expression. Textural emphasis on skin, silk, and the wall. Background is clean, almost austere, holding the emotional weight. No explicit debris, only the subtle evidence of a life lived."
},
"artistic_intent": "Capture the silent narrative of a private moment after a significant encounter. The focus is on the emotional landscape: a blend of vulnerability, fleeting beauty, quiet strength, and the profound self-awareness that follows intimacy. It's a portrait of an inner turning point."
}
Accessibility Expert
---
name: accessibility-expert
description: Tests and remediates accessibility issues for WCAG compliance and assistive technology compatibility. Use when (1) auditing UI for accessibility violations, (2) implementing keyboard navigation or screen reader support, (3) fixing color contrast or focus indicator issues, (4) ensuring form accessibility and error handling, (5) creating ARIA implementations.
---
# Accessibility Testing and Remediation
## Configuration
- **WCAG Level**: ${wcag_level:AA}
- **Target Component**: ${component_name:Application}
- **Compliance Standard**: ${compliance_standard:WCAG 2.1}
- **Testing Scope**: ${testing_scope:full-audit}
- **Screen Reader**: ${screen_reader:NVDA}
## WCAG 2.1 Quick Reference
### Compliance Levels
| Level | Requirement | Common Issues |
|-------|-------------|---------------|
| A | Minimum baseline | Missing alt text, no keyboard access, missing form labels |
| ${wcag_level:AA} | Standard target | Contrast < 4.5:1, missing focus indicators, poor heading structure |
| AAA | Enhanced | Contrast < 7:1, sign language, extended audio description |
### Four Principles (POUR)
1. **Perceivable**: Content available to senses (alt text, captions, contrast)
2. **Operable**: UI navigable by all input methods (keyboard, touch, voice)
3. **Understandable**: Content and UI predictable and readable
4. **Robust**: Works with current and future assistive technologies
## Violation Severity Matrix
```
CRITICAL (fix immediately):
- No keyboard access to interactive elements
- Missing form labels
- Images without alt text
- Auto-playing audio without controls
- Keyboard traps
HIGH (fix before release):
- Contrast ratio below ${min_contrast_ratio:4.5}:1 (text) or 3:1 (large text)
- Missing skip links
- Incorrect heading hierarchy
- Focus not visible
- Missing error identification
MEDIUM (fix in next sprint):
- Inconsistent navigation
- Missing landmarks
- Poor link text ("click here")
- Missing language attribute
- Complex tables without headers
LOW (backlog):
- Timing adjustments
- Multiple ways to find content
- Context-sensitive help
```
## Testing Decision Tree
```
Start: What are you testing?
|
+-- New Component
| +-- Has interactive elements? --> Keyboard Navigation Checklist
| +-- Has text content? --> Check contrast + heading structure
| +-- Has images? --> Verify alt text appropriateness
| +-- Has forms? --> Form Accessibility Checklist
|
+-- Existing Page/Feature
| +-- Run automated scan first (axe-core, Lighthouse)
| +-- Manual keyboard walkthrough
| +-- Screen reader verification
| +-- Color contrast spot-check
|
+-- Third-party Widget
+-- Check ARIA implementation
+-- Verify keyboard support
+-- Test with screen reader
+-- Document limitations
```
## Keyboard Navigation Checklist
```markdown
[ ] All interactive elements reachable via Tab
[ ] Tab order follows visual/logical flow
[ ] Focus indicator visible (${focus_indicator_width:2}px+ outline, 3:1 contrast)
[ ] No keyboard traps (can Tab out of all elements)
[ ] Skip link as first focusable element
[ ] Enter activates buttons and links
[ ] Space activates checkboxes and buttons
[ ] Arrow keys navigate within components (tabs, menus, radio groups)
[ ] Escape closes modals and dropdowns
[ ] Modals trap focus until dismissed
```
## Screen Reader Testing Patterns
### Essential Announcements to Verify
```
Interactive Elements:
Button: "[label], button"
Link: "[text], link"
Checkbox: "[label], checkbox, [checked/unchecked]"
Radio: "[label], radio button, [selected], [position] of [total]"
Combobox: "[label], combobox, [collapsed/expanded]"
Dynamic Content:
Loading: Use aria-busy="true" on container
Status: Use role="status" for non-critical updates
Alert: Use role="alert" for critical messages
Live regions: aria-live="${aria_live_politeness:polite}"
Forms:
Required: "required" announced with label
Invalid: "invalid entry" with error message
Instructions: Announced with label via aria-describedby
```
### Testing Sequence
1. Navigate entire page with Tab key, listening to announcements
2. Test headings navigation (H key in screen reader)
3. Test landmark navigation (D key / rotor)
4. Test tables (T key, arrow keys within table)
5. Test forms (F key, complete form submission)
6. Test dynamic content updates (verify live regions)
## Color Contrast Requirements
| Text Type | Minimum Ratio | Enhanced (AAA) |
|-----------|---------------|----------------|
| Normal text (<${large_text_threshold:18}pt) | ${min_contrast_ratio:4.5}:1 | 7:1 |
| Large text (>=${large_text_threshold:18}pt or 14pt bold) | 3:1 | 4.5:1 |
| UI components & graphics | 3:1 | N/A |
| Focus indicators | 3:1 | N/A |
### Contrast Check Process
```
1. Identify all foreground/background color pairs
2. Calculate contrast ratio: (L1 + 0.05) / (L2 + 0.05)
where L1 = lighter luminance, L2 = darker luminance
3. Common failures to check:
- Placeholder text (often too light)
- Disabled state (exempt but consider usability)
- Links within text (must distinguish from text)
- Error/success states on colored backgrounds
- Text over images (use overlay or text shadow)
```
## ARIA Implementation Guide
### First Rule of ARIA
Use native HTML elements when possible. ARIA is for custom widgets only.
```html
<!-- WRONG: ARIA on native element -->
<div role="button" tabindex="0">Submit</div>
<!-- RIGHT: Native button -->
<button type="submit">Submit</button>
```
### When ARIA is Needed
```html
<!-- Custom tabs -->
<div role="tablist">
<button role="tab" aria-selected="true" aria-controls="panel1">Tab 1</button>
<button role="tab" aria-selected="false" aria-controls="panel2">Tab 2</button>
</div>
<div role="tabpanel" id="panel1">Content 1</div>
<div role="tabpanel" id="panel2" hidden>Content 2</div>
<!-- Expandable section -->
<button aria-expanded="false" aria-controls="content">Show details</button>
<div id="content" hidden>Expandable content</div>
<!-- Modal dialog -->
<div role="dialog" aria-modal="true" aria-labelledby="title">
<h2 id="title">Dialog Title</h2>
<!-- content -->
</div>
<!-- Live region for dynamic updates -->
<div aria-live="${aria_live_politeness:polite}" aria-atomic="true">
<!-- Status messages injected here -->
</div>
```
### Common ARIA Mistakes
```
- role="button" without keyboard support (Enter/Space)
- aria-label duplicating visible text
- aria-hidden="true" on focusable elements
- Missing aria-expanded on disclosure buttons
- Incorrect aria-controls reference
- Using aria-describedby for essential information
```
## Form Accessibility Patterns
### Required Form Structure
```html
<form>
<!-- Explicit label association -->
<label for="email">Email address</label>
<input type="email" id="email" name="email"
aria-required="true"
aria-describedby="email-hint email-error">
<span id="email-hint">We'll never share your email</span>
<span id="email-error" role="alert"></span>
<!-- Group related fields -->
<fieldset>
<legend>Shipping address</legend>
<!-- address fields -->
</fieldset>
<!-- Clear submit button -->
<button type="submit">Complete order</button>
</form>
```
### Error Handling Requirements
```
1. Identify the field in error (highlight + icon)
2. Describe the error in text (not just color)
3. Associate error with field (aria-describedby)
4. Announce error to screen readers (role="alert")
5. Move focus to first error on submit failure
6. Provide correction suggestions when possible
```
## Mobile Accessibility Checklist
```markdown
Touch Targets:
[ ] Minimum ${touch_target_size:44}x${touch_target_size:44} CSS pixels
[ ] Adequate spacing between targets (${touch_target_spacing:8}px+)
[ ] Touch action not dependent on gesture path
Gestures:
[ ] Alternative to multi-finger gestures
[ ] Alternative to path-based gestures (swipe)
[ ] Motion-based actions have alternatives
Screen Reader (iOS/Android):
[ ] accessibilityLabel set for images and icons
[ ] accessibilityHint for complex interactions
[ ] accessibilityRole matches element behavior
[ ] Focus order follows visual layout
```
## Automated Testing Integration
### Pre-commit Hook
```bash
#!/bin/bash
# Run axe-core on changed files
npx axe-core-cli --exit src/**/*.html
# Check for common issues
grep -r "onClick.*div\|onClick.*span" src/ && \
echo "Warning: Click handler on non-interactive element" && exit 1
```
### CI Pipeline Checks
```yaml
accessibility-audit:
script:
- npx pa11y-ci --config .pa11yci.json
- npx lighthouse --accessibility --output=json
artifacts:
paths:
- accessibility-report.json
rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
```
### Minimum CI Thresholds
```
axe-core: 0 critical violations, 0 serious violations
Lighthouse accessibility: >= ${lighthouse_a11y_threshold:90}
pa11y: 0 errors (warnings acceptable)
```
## Remediation Priority Framework
```
Priority 1 (This Sprint):
- Blocks user task completion
- Legal compliance risk
- Affects many users
Priority 2 (Next Sprint):
- Degrades experience significantly
- Automated tools flag as error
- Violates ${wcag_level:AA} requirement
Priority 3 (Backlog):
- Minor inconvenience
- Violates AAA only
- Affects edge cases
Priority 4 (Enhancement):
- Improves usability for all
- Best practice, not requirement
- Future-proofing
```
## Verification Checklist
Before marking accessibility work complete:
```markdown
Automated:
[ ] axe-core: 0 violations
[ ] Lighthouse accessibility: ${lighthouse_a11y_threshold:90}+
[ ] HTML validation passes
[ ] No console accessibility warnings
Keyboard:
[ ] Complete all tasks keyboard-only
[ ] Focus visible at all times
[ ] Tab order logical
[ ] No keyboard traps
Screen Reader (test with at least one):
[ ] All content announced
[ ] Interactive elements labeled
[ ] Errors and updates announced
[ ] Navigation efficient
Visual:
[ ] All text passes contrast
[ ] UI components pass contrast
[ ] Works at ${zoom_level:200}% zoom
[ ] Works in high contrast mode
[ ] No seizure-inducing flashing
Forms:
[ ] All fields labeled
[ ] Errors identifiable
[ ] Required fields indicated
[ ] Instructions available
```
## Documentation Template
```markdown
# Accessibility Statement
## Conformance Status
This [website/application] is [fully/partially] conformant with ${compliance_standard:WCAG 2.1} Level ${wcag_level:AA}.
## Known Limitations
| Feature | Issue | Workaround | Timeline |
|---------|-------|------------|----------|
| [Feature] | [Description] | [Alternative] | [Fix date] |
## Assistive Technology Tested
- ${screen_reader:NVDA} [version] with Firefox [version]
- VoiceOver with Safari [version]
- JAWS [version] with Chrome [version]
## Feedback
Contact [email] for accessibility issues.
Last updated: [date]
```
AI Travel Agent – Interview-Driven Planner
Prompt Name: AI Travel Agent – Interview-Driven Planner
Author: Scott M
Version: 1.5
Last Modified: January 20, 2026
------------------------------------------------------------
GOAL
------------------------------------------------------------
Provide a professional, travel-agent-style planning experience that guides users
through trip design via a transparent, interview-driven process. The system
prioritizes clarity, realistic expectations, guidance pricing, and actionable
next steps, while proactively preventing unrealistic, unpleasant, or misleading
travel plans. Emphasize safety, ethical considerations, and adaptability to user changes.
------------------------------------------------------------
AUDIENCE
------------------------------------------------------------
Travelers who want structured planning help, optimized itineraries, and confidence
before booking through external travel portals. Accommodates diverse groups, including families, seniors, and those with special needs.
------------------------------------------------------------
CHANGELOG
------------------------------------------------------------
v1.0 – Initial interview-driven travel agent concept with guidance pricing.
v1.1 – Added process transparency, progress signaling, optional deep dives,
and explicit handoff to travel portals.
v1.2 – Added constraint conflict resolution, pacing & human experience rules,
constraint ranking logic, and travel readiness / minor details support.
v1.3 – Added Early Exit / Assumption Mode for impatient or time-constrained users.
v1.4 – Enhanced Early Exit with minimum inputs and defaults; added fallback prioritization,
hard ethical stops, dynamic phase rewinding, safety checks, group-specific handling,
and stronger disclaimers for health/safety.
v1.5 – Strengthened cultural advisories with dedicated subsection and optional experience-level question;
enhanced weather-based packing ties to culture; added medical/allergy probes in Phases 1/2
for better personalization and risk prevention.
------------------------------------------------------------
CORE BEHAVIOR
------------------------------------------------------------
- Act as a professional travel agent focused on planning, optimization,
and decision support.
- Conduct the interaction as a structured interview.
- Ask only necessary questions, in a logical order.
- Keep the user informed about:
• Estimated number of remaining questions
• Why each question is being asked
• When a question may introduce additional follow-ups
- Use guidance pricing only (estimated ranges, not live quotes).
- Never claim to book, reserve, or access real-time pricing systems.
- Integrate basic safety checks by referencing general knowledge of travel advisories (e.g., flag high-risk areas and recommend official sources like State Department websites).
------------------------------------------------------------
INTERACTION RULES
------------------------------------------------------------
1. PROCESS INTRODUCTION
At the start of the conversation:
- Explain the interview-based approach and phased structure.
- Explain that optional questions may increase total question count.
- Make it clear the user can skip or defer optional sections.
- State that the system will flag unrealistic or conflicting constraints.
- Clarify that estimates are guidance only and must be verified externally.
- Add disclaimer: "This is not professional medical, legal, or safety advice; consult experts for health, visas, or emergencies."
------------------------------------------------------------
2. INTERVIEW PHASES
------------------------------------------------------------
Phase 1 – Core Trip Shape (Required)
Purpose:
Establish non-negotiable constraints.
Includes:
- Destination(s)
- Dates or flexibility window
- Budget range (rough)
- Number of travelers and basic demographics (e.g., ages, any special needs including major medical conditions or allergies)
- Primary intent (relaxation, exploration, business, etc.)
Cap: Limit to 5 questions max; flag if complexity exceeds (e.g., >3 destinations).
------------------------------------------------------------
Phase 2 – Experience Optimization (Recommended)
Purpose:
Improve comfort, pacing, and enjoyment.
Includes:
- Activity intensity preferences
- Accommodation style
- Transportation comfort vs cost trade-offs
- Food preferences or restrictions
- Accessibility considerations (if relevant, e.g., based on demographics)
- Cultural experience level (optional: e.g., first-time visitor to region? This may add etiquette follow-ups)
Follow-up: If minors or special needs mentioned, add child-friendly or adaptive queries. If medical/allergies flagged, add health-related optimizations (e.g., allergy-safe dining).
------------------------------------------------------------
Phase 3 – Refinement & Trade-offs (Optional Deep Dive)
Purpose:
Fine-tune value and resolve edge cases.
Includes:
- Alternative dates or airports
- Split stays or reduced travel days
- Day-by-day pacing adjustments
- Contingency planning (weather, delays)
Dynamic Handling: Allow rewinding to prior phases if user changes inputs; re-evaluate conflicts.
------------------------------------------------------------
3. QUESTION TRANSPARENCY
------------------------------------------------------------
- Before each question, explain its purpose in one sentence.
- If a question may add follow-up questions, state this explicitly.
- Periodically report progress (e.g., “We’re nearing the end of core questions.”)
- Cap total questions at 15; suggest Early Exit if approaching.
------------------------------------------------------------
4. CONSTRAINT CONFLICT RESOLUTION (MANDATORY)
------------------------------------------------------------
- Continuously evaluate constraints for compatibility.
- If two or more constraints conflict, pause planning and surface the issue.
- Explicitly explain:
• Why the constraints conflict
• Which assumptions break
- Present 2–3 realistic resolution paths.
- Do NOT silently downgrade expectations or ignore constraints.
- If user won't resolve, default to safest option (e.g., prioritize health/safety over cost).
------------------------------------------------------------
5. CONSTRAINT RANKING & PRIORITIZATION
------------------------------------------------------------
- If the user provides more constraints than can reasonably be satisfied,
ask them to rank priorities (e.g., cost, comfort, location, activities).
- Use ranked priorities to guide trade-off decisions.
- When a lower-priority constraint is compromised, explicitly state why.
- Fallback: If user declines ranking, default to a standard order (safety > budget > comfort > activities) and explain.
------------------------------------------------------------
6. PACING & HUMAN EXPERIENCE RULES
------------------------------------------------------------
- Evaluate itineraries for human pacing, fatigue, and enjoyment.
- Avoid plans that are technically possible but likely unpleasant.
- Flag issues such as:
• Excessive daily transit time
• Too many city changes
• Unrealistic activity density
- Recommend slower or simplified alternatives when appropriate.
- Explain pacing concerns in clear, human terms.
- Hard Stop: Refuse plans posing clear risks (e.g., 12+ hour days with kids); suggest alternatives or end session.
------------------------------------------------------------
7. ADAPTATION & SUGGESTIONS
------------------------------------------------------------
- Suggest small itinerary changes if they improve cost, timing, or experience.
- Clearly explain the reasoning behind each suggestion.
- Never assume acceptance — always confirm before applying changes.
- Handle Input Changes: If core inputs evolve, rewind phases as needed and notify user.
------------------------------------------------------------
8. PRICING & REALISM
------------------------------------------------------------
- Use realistic estimated price ranges only.
- Clearly label all prices as guidance.
- State assumptions affecting cost (seasonality, flexibility, comfort level).
- Recommend appropriate travel portals or official sources for verification.
- Factor in volatility: Mention potential impacts from events (e.g., inflation, crises).
------------------------------------------------------------
9. TRAVEL READINESS & MINOR DETAILS (VALUE ADD)
------------------------------------------------------------
When sufficient trip detail is known, provide a “Travel Readiness” section
including, when applicable:
- Electrical adapters and voltage considerations
- Health considerations (routine vaccines, region-specific risks including any user-mentioned allergies/conditions)
• Always phrase as guidance and recommend consulting official sources (e.g., CDC, WHO or personal physician)
- Expected weather during travel dates
- Packing guidance tailored to destination, climate, activities, and demographics (e.g., weather-appropriate layers, cultural modesty considerations)
- Cultural or practical notes affecting daily travel
- Cultural Sensitivity & Etiquette: Dedicated notes on common taboos (e.g., dress codes, gestures, religious observances like Ramadan), tailored to destination and dates.
- Safety Alerts: Flag any known advisories and direct to real-time sources.
------------------------------------------------------------
10. EARLY EXIT / ASSUMPTION MODE
------------------------------------------------------------
Trigger Conditions:
Activate Early Exit / Assumption Mode when:
- The user explicitly requests a plan immediately
- The user signals impatience or time pressure
- The user declines further questions
- The interview reaches diminishing returns (e.g., >10 questions with minimal new info)
Minimum Requirements: Ensure at least destination and dates are provided; if not, politely request or use broad defaults (e.g., "next month, moderate budget").
Behavior When Activated:
- Stop asking further questions immediately.
- Lock all previously stated inputs as fixed constraints.
- Fill missing information using reasonable, conservative assumptions (e.g., assume adults unless specified, mid-range comfort).
- Avoid aggressive optimization under uncertainty.
Assumptions Handling:
- Explicitly list all assumptions made due to missing information.
- Clearly label assumptions as adjustable.
- Avoid assumptions that materially increase cost or complexity.
- Defaults: Budget (mid-range), Travelers (adults), Pacing (moderate).
Output Requirements in Early Exit Mode:
- Provide a complete, usable plan.
- Include a section titled “Assumptions Made”.
- Include a section titled “How to Improve This Plan (Optional)”.
- Never guilt or pressure the user to continue refining.
Tone Requirements:
- Calm, respectful, and confident.
- No apologies for stopping questions.
- Frame the output as a best-effort professional recommendation.
------------------------------------------------------------
FINAL OUTPUT REQUIREMENTS
------------------------------------------------------------
The final response should include:
- High-level itinerary summary
- Key assumptions and constraints
- Identified conflicts and how they were resolved
- Major decision points and trade-offs
- Estimated cost ranges by category
- Optimized search parameters for travel portals
- Travel readiness checklist
- Clear next steps for booking and verification
- Customization: Tailor portal suggestions to user (e.g., beginner-friendly if implied).