Compass answer layer walkthrough

How the Dallas salary answer became more direct

This page traces one local gated answer-layer turn from user question to typed plan, deterministic data artifact, sealed Opus packet, structured draft, validation, and final UI.

Local enabled session

81e13dfa-0be1-4d5a-9deb-0ac0a169e438

Captured after the answer layer was made the default gated path.

Staging comparison

b10a19c0-6c76-42c4-b4b3-de315380a545

This staging session shows the older deterministic wording for the same Dallas lookup flow.

Answer layer decision

gated / accepted

Opus rewrote the body, validation accepted it, and Compass returned the improved answer.

Before: deterministic renderer

Accurate, but process-first

I looked up Annual base salary for a first year teacher with a bachelor's degree for selected districts.

| District | State | Academic year | Annual base salary for a first year teacher with a bachelor's degree | Sources |
| --- | --- | --- | --- | --- |
| Dallas Independent School District | TX | 2024 - 2025 | $62,000 | [1] [2] |

Methodology
- Sources cite the specific document for each row when available.
- Rows are ordered by district name unless a supported sort is requested.
- Results are restricted to the bachelor's-degree teacher salary lane as requested in the query.
After: Opus answer layer

Same facts, clearer lead

In **Dallas Independent School District (TX)**, the annual base salary for a first-year teacher with a bachelor's degree is **$62,000** for the **2024–2025** academic year.

| District | State | Academic year | Annual base salary for a first year teacher with a bachelor's degree | Sources |
| --- | --- | --- | --- | --- |
| Dallas Independent School District | TX | 2024 - 2025 | $62,000 | [1] [2] |

**Methodology**
- Sources cite the specific document for each row when available.
- Results are restricted to the bachelor's-degree teacher salary lane as requested.

End-to-End Flow

1

User asks

Dallas starting pay, clarified to the bachelor's first-year salary lane.

2

Planner

Produces a typed lookup plan: named district, starting salary metric, BA lane, current year.

3

Catalog + executor

Resolves Dallas ISD and metric 89, then pulls one covered 2024-2025 salary row.

4

Validator + renderer

Proves the artifact and renders the deterministic table, methodology, CSV data, and source markers.

5

AnswerBrief

Seals the rendered answer, table, numeric tokens, source markers, and safe metadata into a JSON packet.

6

Opus stylist

Uses the answer-layer prompt and structured AnswerDraft output to rewrite only the reading experience.

7

Deterministic guard

Checks table preservation, numbers, source markers, caveats, and unsupported policy language.

8

Final UI

Accepted gated draft becomes the visible message; source cards and CSV still come from deterministic artifacts.

Boundary that matters: Opus does not choose the district, metric, value, academic year, citations, table, or source cards. Those are already decided before the answer layer runs.
Typed plan

What Compass thought the user asked

Routeexecute
Operationlookup
DistrictDallas ISD -> Dallas Independent School District
Metricstarting salary, BA lane
Temporalcurrent data; resolved result year is 2024 - 2025
Data artifact

Actual row behind the answer

District ID150
Metric ID89
Academic year2024 - 2025
Value$62,000
Coveragecovered / answer_value
Sources

Source metadata carried by Compass

MarkerTitleTypePage
[1]Dallas Independent School District Salary Schedule, 2024-2025Salary Schedulepp. 11& 12
[2]Dallas Independent School District Board PolicyBoard Policynot page-specific
Coverage frame

Why Compass can answer confidently

Universe1
In scope1
Addressed1
Real data rows1
Not reviewed0
AnswerBrief sent to Opus

The model-facing packet

Compass sends this sealed evidence packet as JSON to the answer stylist. This is the important part: it is a rewrite brief, not a data-retrieval tool.

route: execute result_type: metric_lookup artifact: 0e969fd6d4b5642f immutable: table-1 tokens: 2024 / 2025 / $62,000 sources: [1] [2]
Show exact AnswerBrief JSON
{
  "deterministic_body": "I looked up Annual base salary for a first year teacher with a bachelor's degree for selected districts.\n\n| District | State | Academic year | Annual base salary for a first year teacher with a bachelor's degree | Sources |\n| --- | --- | --- | --- | --- |\n| Dallas Independent School District | TX | 2024 - 2025 | $62,000 | [1] [2] |\n\nMethodology\n- Sources cite the specific document for each row when available.\n- Rows are ordered by district name unless a supported sort is requested.\n- Results are restricted to the bachelor's-degree teacher salary lane as requested in the query.",
  "user_question": "What is the annual base salary for a first year teacher with a bachelor's degree for Dallas ISD?",
  "route": "execute",
  "result_type": "metric_lookup",
  "artifact_id": "0e969fd6d4b5642f",
  "manifest_metadata": {
    "question": "What is the annual base salary for a first year teacher with a bachelor's degree for Dallas ISD?",
    "artifact_id": "0e969fd6d4b5642f",
    "row_count": 1
  },
  "facts": [],
  "immutable_blocks": [
    {
      "kind": "table",
      "text": "| District | State | Academic year | Annual base salary for a first year teacher with a bachelor's degree | Sources |\n| --- | --- | --- | --- | --- |\n| Dallas Independent School District | TX | 2024 - 2025 | $62,000 | [1] [2] |",
      "block_id": "table-1"
    }
  ],
  "numeric_tokens": [
    "2024",
    "2025",
    "$62,000"
  ],
  "source_markers": [
    "[1]",
    "[2]"
  ],
  "caveat_fragments": [],
  "allowed_nctq_context": [],
  "suggested_followups": [],
  "style_notes": []
}
Opus guidance

Instructions + structured output

Modelgateway/anthropic:claude-opus-4-6
Temperature0.0
Max tokens4096
Output contractAnswerDraft: body, used_fact_labels, preserved_block_ids
Show prompt excerpt
# Compass Answer Layer Prompt

You are Compass's answer layer. You improve the user's final reading experience
after Compass has already planned, resolved, executed, validated, and rendered a
deterministic answer.

Your job is to make the answer clearer, more useful, and more human without
changing the facts.

## Inputs You Receive

You receive a sealed answer brief. Treat it as the complete universe of facts
you may use.

The brief may include:

- the user's original question
- the deterministic answer body
- the answer route and result type
- validated rows, values, ranks, coverage states, academic year, and source markers
- required caveats
- allowed NCTQ policy context
- immutable markdown blocks such as tables and source lists
- suggested follow-up options that Compass can actually answer

## Non-Negotiable Rules

1. Do not add facts, numbers, districts, metrics, source markers, citations, or
   policy claims that are not present in the answer brief.
2. Do not change numeric values, percentages, ranks, academic years, district
   names, state names, metric names, or source markers.
3. Preserve immutable markdown blocks exactly when the brief marks them as
   immutable.
4. Do not invent NCTQ positions, rationales, publications, or exemplars.
5. Do not imply Compass has complete coverage when the brief says coverage is
   partial, not reviewed, older-year only, not applicable, out of universe, or
   unsupported.
6. Do not apologize repeatedly or sound defensive. Be candid, helpful, and calm.
7. Do not mention internal implementation details such as validators,
   ResultSet, artifact IDs, planner routes, coverage frames, schemas, or runtime
   traces.

If following these rules prevents you from improving the answer, return a light
touch revision that preserves the deterministic answer almost exactly.
Validation

Why this draft was allowed through

  • Rendered manifest statusstatus=renderedpass
  • Execution validationvalidation_valid=truepass
  • Immutable tabletable-1 appears unchanged in draftpass
  • Numeric tokens2024, 2025, and $62,000 onlypass
  • Source markersonly [1] and [2]pass
  • NCTQ policy claimsno unsupported policy stance addedpass

What this example also teaches us

  • facts is currently empty, so Opus relies mostly on the deterministic body plus table/source/numeric guards.
  • Methodology is not immutable yet, so Opus can simplify redundant methodology bullets.
  • Source cards are UI metadata, not part of the markdown body sent as immutable source-list text in this example.

These are not blockers for the MVP. They are the next tightening points as we make the packet richer and the contract more reviewable.

Show full captured walkthrough JSON
{
  "local_session_id": "81e13dfa-0be1-4d5a-9deb-0ac0a169e438",
  "staging_session_id": "b10a19c0-6c76-42c4-b4b3-de315380a545",
  "prompt": "What is the annual base salary for a first year teacher with a bachelor's degree for Dallas ISD?",
  "planner": {
    "route": "execute",
    "operation": "lookup",
    "confidence": 0.95,
    "selection": {
      "scope": "named_districts",
      "districts": [
        "Dallas ISD"
      ],
      "states": []
    },
    "metrics": [
      {
        "name": "starting salary",
        "role": "primary",
        "degree_lane": "ba"
      }
    ],
    "temporal": {
      "intent": "current",
      "academic_year": null
    }
  },
  "execution_row": {
    "district_id": 150,
    "district_name": "Dallas Independent School District",
    "state": "TX",
    "metric_id": 89,
    "metric_name": "Annual base salary for a first year teacher with a bachelor's degree",
    "academic_year": "2024 - 2025",
    "value": "$62,000",
    "coverage_state": "covered",
    "coverage_reason": "answer_value",
    "citation_markers": [
      1,
      2
    ]
  },
  "citations": [
    {
      "marker": 1,
      "title": "Dallas Independent School District Salary Schedule, 2024-2025",
      "document_type": "Salary Schedule",
      "page_ref": "pp. 11& 12",
      "url": "https://nctqdocs.blob.core.windows.net/tcd-salaryschedule/Dallas_Independent_School_District_TX_Salary_Schedule_2024-2025_ID18665.pdf"
    },
    {
      "marker": 2,
      "title": "Dallas Independent School District Board Policy",
      "document_type": "Board Policy",
      "page_ref": null,
      "url": "https://pol.tasb.org/PolicyOnline?key=361"
    }
  ],
  "coverage_frame": {
    "universe_count": 1,
    "in_scope_count": 1,
    "addressed_count": 1,
    "real_data_count": 1,
    "not_reviewed_count": 0,
    "out_of_universe_count": 0,
    "coverage_ratio": 1.0
  },
  "deterministic_body": "I looked up Annual base salary for a first year teacher with a bachelor's degree for selected districts.\n\n| District | State | Academic year | Annual base salary for a first year teacher with a bachelor's degree | Sources |\n| --- | --- | --- | --- | --- |\n| Dallas Independent School District | TX | 2024 - 2025 | $62,000 | [1] [2] |\n\nMethodology\n- Sources cite the specific document for each row when available.\n- Rows are ordered by district name unless a supported sort is requested.\n- Results are restricted to the bachelor's-degree teacher salary lane as requested in the query.",
  "answer_brief": {
    "deterministic_body": "I looked up Annual base salary for a first year teacher with a bachelor's degree for selected districts.\n\n| District | State | Academic year | Annual base salary for a first year teacher with a bachelor's degree | Sources |\n| --- | --- | --- | --- | --- |\n| Dallas Independent School District | TX | 2024 - 2025 | $62,000 | [1] [2] |\n\nMethodology\n- Sources cite the specific document for each row when available.\n- Rows are ordered by district name unless a supported sort is requested.\n- Results are restricted to the bachelor's-degree teacher salary lane as requested in the query.",
    "user_question": "What is the annual base salary for a first year teacher with a bachelor's degree for Dallas ISD?",
    "route": "execute",
    "result_type": "metric_lookup",
    "artifact_id": "0e969fd6d4b5642f",
    "manifest_metadata": {
      "question": "What is the annual base salary for a first year teacher with a bachelor's degree for Dallas ISD?",
      "artifact_id": "0e969fd6d4b5642f",
      "row_count": 1
    },
    "facts": [],
    "immutable_blocks": [
      {
        "kind": "table",
        "text": "| District | State | Academic year | Annual base salary for a first year teacher with a bachelor's degree | Sources |\n| --- | --- | --- | --- | --- |\n| Dallas Independent School District | TX | 2024 - 2025 | $62,000 | [1] [2] |",
        "block_id": "table-1"
      }
    ],
    "numeric_tokens": [
      "2024",
      "2025",
      "$62,000"
    ],
    "source_markers": [
      "[1]",
      "[2]"
    ],
    "caveat_fragments": [],
    "allowed_nctq_context": [],
    "suggested_followups": [],
    "style_notes": []
  },
  "opus_model": "gateway/anthropic:claude-opus-4-6",
  "model_settings": {
    "temperature": 0.0,
    "max_tokens": 4096,
    "timeout_seconds": 90
  },
  "answer_layer_prompt_excerpt": "# Compass Answer Layer Prompt\n\nYou are Compass's answer layer. You improve the user's final reading experience\nafter Compass has already planned, resolved, executed, validated, and rendered a\ndeterministic answer.\n\nYour job is to make the answer clearer, more useful, and more human without\nchanging the facts.\n\n## Inputs You Receive\n\nYou receive a sealed answer brief. Treat it as the complete universe of facts\nyou may use.\n\nThe brief may include:\n\n- the user's original question\n- the deterministic answer body\n- the answer route and result type\n- validated rows, values, ranks, coverage states, academic year, and source markers\n- required caveats\n- allowed NCTQ policy context\n- immutable markdown blocks such as tables and source lists\n- suggested follow-up options that Compass can actually answer\n\n## Non-Negotiable Rules\n\n1. Do not add facts, numbers, districts, metrics, source markers, citations, or\n   policy claims that are not present in the answer brief.\n2. Do not change numeric values, percentages, ranks, academic years, district\n   names, state names, metric names, or source markers.\n3. Preserve immutable markdown blocks exactly when the brief marks them as\n   immutable.\n4. Do not invent NCTQ positions, rationales, publications, or exemplars.\n5. Do not imply Compass has complete coverage when the brief says coverage is\n   partial, not reviewed, older-year only, not applicable, out of universe, or\n   unsupported.\n6. Do not apologize repeatedly or sound defensive. Be candid, helpful, and calm.\n7. Do not mention internal implementation details such as validators,\n   ResultSet, artifact IDs, planner routes, coverage frames, schemas, or runtime\n   traces.\n\nIf following these rules prevents you from improving the answer, return a light\ntouch revision that preserves the deterministic answer almost exactly.\n",
  "answer_draft": {
    "body": "In **Dallas Independent School District (TX)**, the annual base salary for a first-year teacher with a bachelor's degree is **$62,000** for the **2024–2025** academic year.\n\n| District | State | Academic year | Annual base salary for a first year teacher with a bachelor's degree | Sources |\n| --- | --- | --- | --- | --- |\n| Dallas Independent School District | TX | 2024 - 2025 | $62,000 | [1] [2] |\n\n**Methodology**\n- Sources cite the specific document for each row when available.\n- Results are restricted to the bachelor's-degree teacher salary lane as requested.",
    "used_fact_labels": [],
    "preserved_block_ids": [
      "table-1"
    ]
  },
  "answer_layer_report": {
    "mode": "gated",
    "attempted": true,
    "accepted": true,
    "status": "accepted"
  },
  "validation_checks": [
    {
      "check": "Rendered manifest status",
      "evidence": "status=rendered",
      "result": "pass"
    },
    {
      "check": "Execution validation",
      "evidence": "validation_valid=true",
      "result": "pass"
    },
    {
      "check": "Immutable table",
      "evidence": "table-1 appears unchanged in draft",
      "result": "pass"
    },
    {
      "check": "Numeric tokens",
      "evidence": "2024, 2025, and $62,000 only",
      "result": "pass"
    },
    {
      "check": "Source markers",
      "evidence": "only [1] and [2]",
      "result": "pass"
    },
    {
      "check": "NCTQ policy claims",
      "evidence": "no unsupported policy stance added",
      "result": "pass"
    }
  ],
  "known_gaps": [
    "facts is currently empty, so Opus relies mostly on the deterministic body plus table/source/numeric guards.",
    "Methodology is not immutable yet, so Opus can simplify redundant methodology bullets.",
    "Source cards are UI metadata, not part of the markdown body sent as immutable source-list text in this example."
  ]
}

Generated from local branch codex/answer-layer-mvp. Source packet saved beside this page as dallas-salary-answer-layer-packet.json.