A/B · Head to head

Our agent vs. brute force.

Same 8 questions. Two setups. Arm A — our CATAIR agent: hybrid retrieval over the typed knowledge graph + strict verbatim system prompt. Arm B — naked Claude Opus with 34 of the same OCR'd PDFs flattened into its 1M-token context, no retrieval, no guardrails.

Model:claude-opus-4-7 Questions:8 Arm A avg latency:13581 ms Arm B avg latency:21466 ms Arm A cost:$1.185 Arm B cost:$74.175
q1_record_10_layout
List every data element of eBond Record Identifier 10 with its exact position, length/class, and designation. Quote the source page.
Arm A · CATAIR agent
23.7s · 2,910 in · 469 out
Based on the verbatim source provided, here are the data elements of eBond Record Identifier 10 (Output) that appear in the source. Note that the source excerpt does not include all elements (it begins with "Bond Activity Code" at position 5-7, so elements at positions 1-4 are not shown in the excerpt provided): From [S5] ACE ABI CATAIR Customs eBond Status Notification BS V01.16 June 2024 DRAFT — Record Identifier 10 (Output) pp.28-29: 1. Bond Activity Code - Length/Class: 3AN - Position: 5-7 - Desig.: C 2. Bond Amount - Length/Class: 10(S)N - Position: 8-17 - Desig.: C 3. Execution Date - Length/Class: 6D - Position: 18-23 - Desig.: C 4. Surety Reference Number - Length/Class: 9X - Position: 24-32 - Desig.: O 5. Effective Date - Length/Class: 6D - Position: 33-38 - Desig.: C Caveat: The verbatim source excerpt provided begins with "Bond Activity Code" at position 5-7. Data elements occupying positions 1-4 (and any elements beyond position 38) are not found in the sources provided.
Sources retrieved
ACE NHTSA PGA Message Set IG October302017 — **Record Identifier PG20 (Input)** p.30 · sim 0.861
ACE-CATAIR-Periodic-Monthly-Statement — **Record Identifier QA (Output)** p.10 · sim 0.858
ACE CATAIR AS AQ DRAFT V6 02272018 — **Record Identifier T1** p.5 · sim 0.857
ACE Extract Reference 20180625 — **Record Identifier F102 (Input)** p.15 · sim 0.856
ACE ABI CATAIR Customs eBond Status Notification BS V01.16 June 2024 DRAFT — **Record Identifier 10 (Output)** pp.28-29 · sim 0.856
ACE NHTSA PGA Message Set IG October302017 — **Record Identifier PG55 (Input)** p.42 · sim 0.855
AMS CATAIR Guidelines 7.1.25 (508) — **Record Identifier PG10 (Input)** pp.114-115 · sim 0.854
ACE-CATAIR-Periodic-Monthly-Statement — **Record Identifier QJ (Output)** p.18 · sim 0.853
Arm B · naked Claude + full corpus
41.01s · 613,828 in · 950 out

eBond Record Identifier 10 — Data Elements

Source: ACE_ABI_CATAIR_Customs_eBond_Create-Update_CB-CX_V1.9_04102020 — "Customs eBond Record Layouts / Record Identifier 10 (Input/Output) / Bond Header Record" The specification states: *"This is a mandatory Bond input record that provides data pertaining to the action code, entry filer code, entry number, entry type, importer of record number, bond holder, bond type code, bond activity code, and total bond value."* Below is every data element in Record Identifier 10, with exact position, length/class, and designation as quoted from the source:
#Data ElementLength/ClassPositionDesignation
1Control Identifier2AN1-2M
2Bond Designation Type Code1AN3M
3Bond Type Code1N4M
4Bond Activity Code3AN5-7C
5Bond Amount10(S)N8-17C
6Execution Date6D18-23C
7Surety Reference Number9X24-32O
8Effective Date6D33-38C
9Termination Date6D39-44C
10Bond Number9AN45-53C
11Filler1S54M
12Reconciliation Bond Rider Flag1AN55C
13USVI Bond Rider Flag1AN56C
14Filler24S57-80M
Designation key (per the Record Layout Key in the same document): - M = Mandatory - C = Conditional - O = Optional Valid values for key coded fields (quoted from the record description): - Bond Designation Type Code (pos. 3): B = Add new basic bond; A = Additional bond (STB only); V = Void STB on file; C = Adjust bond amount of STB on file; U = Substitute (STB only); E = Supersede (STB only); T = Terminate Continuous Bond on file; R = Bond Rider. - Bond Type Code (pos. 4): 8 = Continuous bond; 9 = Single transaction bond. - Reconciliation Bond Rider Flag (pos. 55): Y = Flag for reconciliation; N = Remove flag for reconciliation. - USVI Bond Rider Flag (pos. 56): Y = Flag for importation into the U.S. Virgin Islands.
q2_bond_designation
What are all valid Bond Designation Type Codes? Quote the code letter and its exact meaning verbatim.
Arm A · CATAIR agent
9.16s · 6,715 in · 462 out
Per [S1] ACE ABI CATAIR Customs eBond Create-Update CB-CX V1.9, Record Identifier 10 (Input/Output), pp.23-25, the valid Bond Designation Type Codes are quoted verbatim below: - B = Add a new basic bond. - A = An additional bond; the bond that secures an AD/CVD, PGA or any other aspect not covered by the basic bond requirement. Applies to a Single Transaction Bond only. - V = Void the Single Transaction Bond on file. - C = Adjust the bond amount of the Single Transaction Bond on file. - U = Substitute for the bond presented at time of entry. Applies to a Single Transaction Bond only. - E = Supersede the bond presented at time of entry. Applies to a Single Transaction Bond only. - T = Terminate the Continuous Bond on file. - R = Bond Rider to take the following actions: - Add Reconciliation Flag - Remove Reconciliation Flag - US Virgin Islands - Add a Bond User - Delete a Bond User. Source: [S1] ACE ABI CATAIR Customs eBond Create-Update CB-CX V1.9 04102020, Record Identifier 10 (Input/Output), pp.23-25.
Sources retrieved
ACE ABI CATAIR Customs eBond Create-Update CB-CX V1.9 04102020 (1) — **Record Identifier 10 (Input/Output)** pp.23-25 · sim 0.866
ACE ABI CATAIR Customs eBond Create-Update CB-CX V1.9 04102020 (1) — 1. Code identifying the Bond User ID Number Type (continued) p.34 · sim 0.862
ACE CATAIR ACE Broker Download August2024doc — **Record Identifier I1 (Output)** pp.34-35 · sim 0.862
ACE ABI CATAIR Customs eBond Status Notification BS V01.16 June 2024 DRAFT — **Record Identifier 10 (Output)** pp.29-30 · sim 0.861
ACE CATAIR Entry Summary Query September 2024 v25 (508) pp.41-43 · sim 0.859
ACE ABI CATAIR Customs eBond Status Notification BS V01.16 June 2024 DRAFT — **Record Identifier 10 (Output)** pp.27-28 · sim 0.856
ACE ABI CATAIR Customs eBond Status Notification BS V01.16 June 2024 DRAFT — **Record Identifier 10 (Output)** pp.28-29 · sim 0.854
ACE CATAIR Entry Summary Create-Update AE-AX 2024-12-5 Rev 98 (508) (2) pp.96-100 · sim 0.853
Arm B · naked Claude + full corpus
24.41s · 613,826 in · 363 out
Based on the Customs eBond Create/Update CATAIR (Record Identifier 10, Bond Designation Type Code field), the valid Bond Designation Type Codes are: B = "Add a new basic bond." A = "An additional bond; the bond that secures an AD/CVD, PGA or any other aspect not covered by the basic bond requirement. Applies to a Single Transaction Bond only." V = "Void the Single Transaction Bond on file." C = "Adjust the bond amount of the Single Transaction Bond on file." U = "Substitute for the bond presented at time of entry. Applies to a Single Transaction Bond only." E = "Supersede the bond presented at time of entry. Applies to a Single Transaction Bond only." T = "Terminate the Continuous Bond on file." R = "Bond Rider to take the following actions: - Add Reconciliation Flag - Remove Reconciliation Flag - US Virgin Islands - Add a Bond User - Delete a Bond User."
q3_isf_error_901
What does ISF error code 901 mean and what should the filer do in response?
Arm A · CATAIR agent
4.04s · 7,458 in · 141 out
Not found in sources. The verbatim sources provided include ISF error codes ranging from 105 through 211 (in [S4] ACE CATAIR Appendix S ISF Error Codes - October 2012), but error code 901 is not present in the excerpts available to me. To get an accurate definition and recommended filer response for error code 901, please consult the complete Appendix S: Importer Security Filing Error Codes document directly.
Sources retrieved
ACE ISF Version3 072017 — **Record Identifier SF90 (Output)** pp.39-40 · sim 0.856
ACE ISF SA V1 pp.1-4 · sim 0.842
ACE ISF SA V1 — **Record Identifier SA10 (Output)** p.5 · sim 0.838
ACE CATAIR Appendix S ISF Error Codes - October 2012 pp.1-4 · sim 0.837
ACE ISF SA V1 — **Record Identifier SA50 (Output)** pp.8-9 · sim 0.834
ACE Cargo Release Implementation Guide V40 July 1 2025 — **Record Identifier SF10 (Input)** pp.75-77 · sim 0.834
ACE Appendix N - 6.6.2023 pp.17-18 · sim 0.833
ACE Cargo Release Implementation Guide V40 July 1 2025 — 1. Manufacturer Name and Address pp.27-29 · sim 0.831
Arm B · naked Claude + full corpus
13.93s · 613,812 in · 659 out
Based on the ACE CATAIR Appendix S: Importer Security Filing Error Codes that I have in my reference material, error code 901 is not listed. The ISF error codes documented in Appendix S range from 105 through 505, covering various validation errors for Importer Security Filing submissions. The documented ISF error codes fall into these general ranges: - 100-series (105-157): General ISF submission errors (invalid submission types, action codes, bond information, bill of lading issues) - 200-series (201-213): Reference identifier and bill-related errors - 250-series (251-255): Equipment record errors - 300-series (301-370): Entity/party information errors - 400-series (401-408): HTS/commodity errors - 500-series (501-505): Location and port errors If you received error code 901, I would recommend: 1. Verify the code – Double-check that the code you received is actually 901 and not one of the documented codes (e.g., 109, 901 could be a typo for another code). 2. Check for system-level errors – The ACE CATAIR Error Dictionary and Appendix G contain additional condition codes that may apply across applications, including: - ZZZ – ACE SYSTEM FAILURE (requires contacting your CBP Client Representative) - Various X-series batch/block control errors 3. Contact your CBP Client Representative – Since 901 is not documented in the ISF-specific error codes I have access to, this may be: - A newer error code added after my reference materials were published - A code from a different application that was returned in an ISF context - A system-level error requiring CBP assistance 4. Check CSMS messages – Scan the Cargo Systems Messaging Service for any recent trade notifications about new or updated error codes. I cannot provide specific remediation guidance for code 901 because it is not in the source material I have available. Please reach out to your assigned CBP Client Representative for authoritative guidance on this specific error.
q4_batch_vs_block
In ABI Batch and Block Control, what's the difference between a Batch and a Block? What Control Identifiers mark the start and end of each?
Arm A · CATAIR agent
12.69s · 7,701 in · 775 out

Batch vs. Block in ABI Batch and Block Control

Based on the verbatim sources available, here is what can be determined:

Structural Relationship

Per [S3, p.9-11]: "Submit all ABI transactions and queries 'wrapped' in a block control envelope." Further, "In an ACE batch, the Application Identifier code must be specified at BOTH the A-Record level and the B-Record level. The Application Identifier Code in each block enclosed in the batch must be the same and must match the A-Record code." This indicates that a Batch is the outer envelope which contains one or more Blocks (inner envelopes), and each Block contains the actual ABI transactions or queries.

Control Identifiers

From [S2, p.8-13], which references the Batch and Block Control chapter: > "See the *ABI Batch & Block Control* chapter of the ACE CATAIR for a complete description of the Block Control envelope (B-, Y-Records and Batch Control envelope A-, Z-Records)." Therefore:
EnvelopeStart RecordEnd Record
Batch ControlA-RecordZ-Record
Block ControlB-RecordY-Record

Additional Detail on Usage

Per [S1, p.1-9], the Table of Contents references: - "Batch Control Header (input B-Record)" — wait, correction: [S1] lists "Block Control Header (input B-Record) + Notes; Block Control Trailer (input Y-Record)" and references the "Batch Control Header (Output A-Record)." Per [S3, p.9-11], regarding batch contents: "Only a single type of ABI transaction or query data can be included in a batch."

Note on Limitations

The verbatim sources provided do not include a single explicit side-by-side definition contrasting "Batch" vs. "Block" as concepts. The distinction above is assembled from the record layout references (A/Z for Batch envelope; B/Y for Block envelope) cited in [S2] and the usage notes in [S1] and [S3]. For the full narrative definitions and usage notes (sections "a) Using Batch Control" and "b) Using Block Control" listed in the [S1] Table of Contents), the complete text of those sections was not found in the provided sources.
Sources retrieved
ACE CATAIR ABI Batch and Block Control V23 2023-06-12 -CATAIR (508) pp.1-9 · sim 0.863
ACE CATAIR Recon Create Update V12 2025-06-30 pp.8-13 · sim 0.863
ACE CATAIR ABI Batch and Block Control V23 2023-06-12 -CATAIR (508) pp.9-11 · sim 0.861
ACE CATAIR ABI Batch and Block Control V23 2023-06-12 -CATAIR (508) — **Input Structure Map Submission Notes** pp.9-14 · sim 0.861
ACE CATAIR Entry Summary Create-Update AE-AX 2024-12-5 Rev 98 (508) (2) pp.16-21 · sim 0.855
ACE CATAIR ABI Batch and Block Control V23 2023-06-12 -CATAIR (508) pp.9-11 · sim 0.853
ACE CATAIR ABI Batch and Block Control V23 2023-06-12 -CATAIR (508) pp.35-39 · sim 0.851
ACE CATAIR ABI Batch and Block Control V23 2023-06-12 -CATAIR (508) pp.24-27 · sim 0.849
Arm B · naked Claude + full corpus
16.13s · 613,835 in · 863 out

Batch vs. Block in ABI Batch and Block Control

Based on the ABI Batch & Block Control CATAIR chapter, here's the distinction:

Batch

A batch is the outer envelope that identifies the Sender/Receiver (transmitter) of the enclosed data. It represents a single unit of work for processing. - Start marker: A record (Batch Control Header) - End marker: Z record (Batch Control Trailer) Key characteristics: - Each batch must enclose at least one Block Control Grouping - A single transmission can contain more than one batch, but each batch is processed as a separate unit of work - For every input batch, CBP returns a single batch in response - The A-Record identifies the pre-authorized transmitter (e.g., service bureau, broker, self-filing importer) and determines the electronic return address for the response - Only a single type of ABI transaction/query can be included in a batch (the Application Identifier Code must match at both A-Record and B-Record levels)

Block

A block is the inner envelope (nested inside a batch) that identifies the parties responsible for the transaction data (ABI Filer/Broker, Preparer) and the type of transaction data being submitted. - Start marker: B record (Block Control Header) - End marker: Y record (Block Control Trailer) Key characteristics: - Each block must enclose at least one transaction-specific detail record - Multiple Block Control Groupings can be reported within a single Batch Control Grouping - Useful for service bureaus to separate individual customers' transactions within one batch - The B-Record specifies the Processing District/Port Code, Processing Filer Code, and Application Identifier Code

Nesting Structure

A  ← Batch Control Header (start of batch)
  B  ← Block Control Header (start of block)
    [transaction records...]
  Y  ← Block Control Trailer (end of block)
  B  ← Another block (optional)
    [transaction records...]
  Y
Z  ← Batch Control Trailer (end of batch)

Summary Table

LevelPurposeStartEnd
BatchIdentifies transmitter (Sender/Receiver)AZ
BlockIdentifies responsible filer & transaction typeBY
In short: the batch is about *who is transmitting*, while the block is about *who is responsible for the data and what type of data it is*.
q5_pga_ttb_applies
For which commodity categories is the TTB PGA Message Set required, and which ABI transaction does it attach to?
Arm A · CATAIR agent
13.29s · 5,658 in · 598 out

TTB PGA Message Set — Applicable Commodities and ABI Transaction

Commodity Categories

Per [S1] 2022 - TTB Trade Filing Instructions 8.0, p.1-8, TTB regulates the following commodities: > "TTB regulates and collects excise taxes on distilled spirits, wines, beer, tobacco products, and cigarette papers and tubes under Chapters 51 and 52 of the Internal Revenue Code of 1986, as amended (IRC). Under the IRC, TTB also has regulatory authority over processed tobacco, which is not subject to tax." > "TTB regulates distilled spirits, wine, and malt beverages under the Federal Alcohol Administration Act (FAA Act)." Additionally, regarding permit-required importations [S1], p.1-8: > "All persons engaged in the business of importing distilled spirits, wine, malt beverages, tobacco products, and processed tobacco into the United States must have a permit issued by TTB, unless one of the enumerated exceptions applies. Accordingly, a TTB permit number must be filed at time of entry for all such importations into the United States."

ABI Transaction Attachment

Per [S1], p.1-8: > "REMINDERS: The PGA Message Set does not stand alone, and must be submitted with an ACE cargo release filing, including ACE Entry Summary certified for cargo release."

Important Note on HTS Flags

Per [S1], p.1-8: > "The HTS flags that prompt the filing of TTB Message Sets are provided by CBP as a courtesy to the import community. Importers are responsible for providing data required at the importation of all TTB-regulated commodities, whether or not an HTS flag is present."
Sources retrieved
2022 - TTB Trade Filing Instructions 8.0 pp.1-8 · sim 0.824
AMS CATAIR Guidelines 7.1.25 (508) — Section 7.1 and repeated below the Change Log for visibility pp.21-24 · sim 0.819
2022 - TTB Trade Filing Instructions 8.0 — **Record Identifier PG22** pp.48-50 · sim 0.814
2022 - TTB Trade Filing Instructions 8.0 pp.61-64 · sim 0.811
ACE CATAIR PGA Message Set - 29August2023 pp.59-62 · sim 0.811
AMS CATAIR Guidelines 7.1.25 (508) — Section 7.7 Entity Role Code pp.13-14 · sim 0.81
ACE Compliance Guidance FSIS Feb2018 pp.1-6 · sim 0.81
2022 - TTB Trade Filing Instructions 8.0 — **Record Identifier OI** pp.22-24 · sim 0.809
Arm B · naked Claude + full corpus
16.59s · 613,825 in · 813 out

TTB PGA Message Set Requirements

Commodity Categories Requiring TTB PGA Message Set

The TTB PGA Message Set is required for the following four commodity categories, identified by their Government Agency Program Codes (reported in PG01 positions 11-13):
Program CodeCommodity Category
BERBeer/Malt Beverages
WINWine
DSPDistilled Spirits
TOBTobacco
Specifically, TTB regulates: - Distilled spirits, wines, beer, tobacco products, and cigarette papers and tubes — under Chapters 51 and 52 of the Internal Revenue Code (IRC), including excise tax collection - Processed tobacco — under IRC regulatory authority (not subject to tax) - Distilled spirits, wine, and malt beverages — under the Federal Alcohol Administration (FAA) Act

ABI Transaction It Attaches To

Per the TTB Filing Instructions (General Introduction): > "The PGA Message Set does not stand alone, and must be submitted with an ACE cargo release filing, including ACE Entry Summary certified for cargo release." So the TTB PGA Message Set attaches to: - ACE Cargo Release (SE transaction), OR - ACE Entry Summary certified for cargo release (AE transaction)

Important Reminders

1. HTS flags are a courtesy only — Importers are responsible for providing TTB data at the importation of *all* TTB-regulated commodities, regardless of whether an HTS flag prompts the filing. 2. Disclaiming is limited — The PGA Message Set can only be disclaimed (PG01 position 80) under specific conditions: - Code "A" — Product is not regulated by TTB (applies to certain tobacco/tobacco-substitute HTS numbers such as 2401.10 subheadings and specified 2403.99 subheadings) - Code "C" — Data provided through other allowed agency means (e.g., paper or DIS upload) 3. No data duplication with CBP — When TTB and CBP require the same data, TTB will not ask for it again in the PGA Message Set. However, when TTB requires more specificity than CBP, the TTB standardized format must be used.
q6_periodic_monthly
What is the submission deadline for the Periodic Monthly Statement, and what Record Identifiers must the filer include?
Arm A · CATAIR agent
13.0s · 6,885 in · 830 out
Submission Deadline Not found in sources. The provided sources describe a "Periodic Monthly Statement Due Date" field (format MMDDYY) on Record Identifiers Q3 and Q5 [S5, S6], but they do not specify the actual submission deadline (e.g., a specific business day of the month) for the Periodic Monthly Statement. Record Identifiers Included Per [S2], the Periodic Monthly Statement output contains 10 record identifiers, with the following designations: Mandatory (M) records: - Q1 – "Daily Statements Listed on the PMS & Duty/Tax" (Loop Repeat: 1) - Q2 – "Daily Statement Total" (Loop Repeat: 1) - QA – "Daily Statement Fees" (Loop Repeat: 5) - Q3 – "PMS Payment Due – Statement Totals & Duty/Tax" (Mandatory within the Preliminary or Final PMS Grouping) - Q4 – "PMS Payment Due – Total" - QE – "PMS Payment Due – Fees" (Loop Repeat: 5) - Q5 – "PMS Payment – Statement Totals & Duty/Tax" (Mandatory within the Final Periodic Monthly Statement Grouping) - Q6 – "PMS Payment – Total" - QJ – "PMS Payment – Fees" (Loop Repeat: 5) Conditional (C) record: - Q7 – "Entry Summaries Deleted" (Loop Repeat: 9,999) Per [S2]: *"Record Identifiers Q1, Q2, and QA are mandatory detail payment records. Record Identifiers Q3, Q4, and QE are mandatory total payment due records for preliminary periodic monthly statements... Record Identifiers Q5, Q6, and QJ are mandatory paid amount totals for final periodic monthly statements and Record Identifier Q7 is a conditional record that provides entry summary numbers for entry summaries deleted from a periodic daily statement after the RM, ACH Payment-Entry Summary Presentation transaction has been processed."* Additionally, per [S2]: *"The application identifier on Record Identifiers A, B, and Y is MS."* Source: [S2] ACE-CATAIR-Periodic-Monthly-Statement, pp. 1-6.
Sources retrieved
ACE CATAIR-Statement Update IG - Apr 23%2C 2025 — **Record Identifier H (Input)** pp.10-11 · sim 0.854
ACE-CATAIR-Periodic-Monthly-Statement pp.1-6 · sim 0.852
ACE CATAIR-Statement Update IG - Apr 23%2C 2025 — **Record Identifier H3 (Output)** p.17 · sim 0.851
ACE CATAIR-Statement Update IG - Apr 23%2C 2025 — **Record Identifier H3 (Output)** p.18 · sim 0.849
ACE-CATAIR-Periodic-Monthly-Statement — **Record Identifier Q5** p.15 · sim 0.848
ACE-CATAIR-Periodic-Monthly-Statement — **Record Identifier Q3** p.11 · sim 0.846
ACE-CATAIR-Periodic-Monthly-Statement — **Record Identifier Q1** p.7 · sim 0.846
ACE CATAIR-Statement Update IG - Apr 23%2C 2025 — **Record Identifier H1 (Output)** p.13 · sim 0.84
Arm B · naked Claude + full corpus
28.78s · 613,827 in · 1,557 out

Periodic Monthly Statement (PMS) — Submission Deadline and Record Identifiers

Submission Deadline

Based on the Periodic Monthly Statement CATAIR chapter, the Periodic Monthly Statement operates on the following timeline: - Preliminary Periodic Monthly Statement: Transmitted to the filer on the preliminary periodic monthly statement print date (available via EDI and the ACE portal). - Final Periodic Monthly Statement: Generated as part of CBP end-of-day processing and available to the filer the day after the ACH Debit transmission has been sent to the bank, or when the ACH Credit payment has been received by CBP. The payment due date for the Periodic Monthly Statement is indicated on the Q3/Q5 output records in the "Periodic Monthly Statement Due Date" field. Per CBP regulations, Periodic Monthly Statements are due on the 15th working day of the month following the month in which the entries were released (the "preliminary statement print date" identifies when the preliminary statement is generated, typically on the 11th working day of the following month). Note that the ACE CATAIR chapter itself does not spell out the statutory due date in narrative form — it simply returns the due date in the output Q3/Q5 record's "Periodic Monthly Statement Due Date" data element (positions 19-24, MMDDYY format).

Record Identifiers the Filer Receives/Uses

The Periodic Monthly Statement transaction is output only — there are no filer input records for the PMS itself. The filer receives the following output records (Application Identifier = MS on Record Identifier B):

Mandatory Detail Records (per Periodic Daily Statement listed on the PMS)

RecordDescription
Q1Daily Statements Listed on the PMS & Duty/Tax
Q2Daily Statement Total (AD/CVD, total amount due)
QADaily Statement Fees (conditional; up to 5 fee groupings)

Preliminary/Final PMS Totals (Preliminary Amounts — appear on both preliminary and final statements)

RecordDescription
Q3PMS Payment Due – Statement Totals & Duty/Tax
Q4PMS Payment Due – Total
QEPMS Payment Due – Fees (conditional; up to 5)

Final PMS Totals (Paid Amounts — appear only on the final statement)

RecordDescription
Q5PMS Payment – Statement Totals & Duty/Tax
Q6PMS Payment – Total
QJPMS Payment – Fees (conditional; up to 5)

Conditional Record

RecordDescription
Q7Entry Summaries Deleted — returned when entry summaries have been removed from a periodic daily statement after the RM (ACH Payment/Entry Summary Presentation) transaction was accepted

Related Filer-Initiated Transactions

While the PMS output itself has no input records, the filer interacts with PMS processing through these related transactions: - RM (ACH Payment/Entry Summary Presentation) — PT record — authorizes payment of the PMS. - SU (Statement Update) — H record — used to change payment type, preliminary statement print date, periodic statement month, or remove an entry summary from an unpaid preliminary statement (limited to 2,000 entries per update batch). - AE (Entry Summary Create/Update) — initial filing with Payment Type Indicator 6, 7, or 8 designates a summary for PMS processing.

PMS Payment Type Indicators

To be included on a Periodic Monthly Statement, entry summaries must be filed with one of these payment type indicators: - 6 = Payments batched by preliminary periodic daily statement print date and entry filer code - 7 = Payments batched by preliminary periodic daily statement print date and importer of record number (including suffix) - 8 = Payments batched by preliminary periodic daily statement print date and importer of record number (excluding suffix) Importers must be an ACE account and designated for PMS processing in ACE, and must have a continuous bond on file. For the exact regulatory filing deadlines (e.g., the 15th working day rule), consult 19 CFR 24.3 and related CBP guidance, as the CATAIR itself focuses on the technical EDI format rather than the statutory due dates.
q7_entry_number_checkdigit
How is the check digit on an Entry Number validated? Give the exact modulus and algorithm from the spec.
Arm A · CATAIR agent
26.39s · 7,750 in · 1,640 out

Entry Number Check Digit Validation

The check digit algorithm is defined in the CATAIR specification as follows. The formula operates on a 10-position Numeric Base Value (3-position Entry Filer Code + 7-position transaction/sequence number), with alphabetic characters converted to numeric equivalents first.

Alphabetic-to-Numeric Conversion Table

Per [S1] p.1-3 and [S3] p.53-57:
A = 1   J = 1   S = 2
B = 2   K = 2   T = 3
C = 3   L = 3   U = 4
D = 4   M = 4   V = 5
E = 5   N = 5   W = 6
F = 6   O = 6   X = 7
G = 7   P = 7   Y = 8
H = 8   Q = 8   Z = 9
I = 9   R = 9

Algorithm (Six Steps)

From [S3] p.53-57 (Duty Deferral) and [S4] p.73-76 (Reconciliation), the formal steps are: Step ONE – "Derive a 'Numeric Base Value' by converting EACH and EVERY alphabetic value in the alphabetic portion(s) of the 'number' to a numeric value" using the table above. "The result is a 10-position number." [S3] Step TWO – "Multiply positions 2, 4, 6, 8, and 10 of the 'Numeric Base Value' each by +2. For each, if the product (P) is greater than +9, add +1 to adjust the product (AP)." [S3] Step THREE – "Disregarding the 'tens' positions for each product (or adjusted product), compute the 'Adjusted Even Sum Value' by adding the five products (or adjusted products) together." [S3] Step FOUR – "Compute the 'Odd Sum Value' by adding positions 1, 3, 5, 7, and 9 of the 'Numeric Base' together." [S3] Step FIVE – "Compute a 'Check Digit Base Value' by adding the 'Adjusted Even Sum Value' and the 'Odd Sum Value' together." [S3] Step SIX – "Determine the 'Computed Check Digit' by subtracting the 'ones' position of the 'Check Digit Base Value' from +10." [S3]
+10
- Check Digit Base Value (ones position ONLY) NN
--
N = Computed Check Digit
Per [S2] p.4: *"If the result of the subtraction is zero, the check digit is zero."*

Worked Example (from [S1]/[S5]/[S2])

For entry filer code B76 (transforms to 276) and transaction number 0324527, giving Numeric Base 2760324527: 1. Multiply odd positions (from the units/right) by 2 — "Start with the units position (right-most digit or, in this case, 7) and multiply every other position by 2… If the result of multiplication is greater than 9, add 1 to the units digit and disregard the tens digit." [S5]
7  5  2  0  7
   x2 x2    x2 x2
   14 10 4  0  14
   +1 +1    +0 +1
   5  1  4  0  5
2. "Add the results together." → 5 + 1 + 4 + 0 + 5 = 15 [S5] 3. "Total all the even positions in the entry number, starting with the position next to the units position." → 2 + 4 + 3 + 6 + 2 = 17 [S5] 4. "Add the two sums (15 and 17) together for a total of 32." → 15 + 17 = 32 [S2] 5. "Subtract the units digit (in this case 2) from 10. The result is the check digit." → 10 − 2 = 8 [S2] So entry number 2760324527 has check digit 8.

Modulus

The spec does not use the word "modulus" explicitly; it specifies subtracting the 'ones' position ONLY of the Check Digit Base Value from +10, with the clarification that "If the result of the subtraction is zero, the check digit is zero" [S2]. This is effectively a mod-10 operation on the final subtraction. Note also from [S2] p.4: filers nearing exhaustion of their ten million entry numbers may be authorized to use "either the check digit as calculated in step 5, or that check digit +1 (mod 10, so that 9+1=0)," extendable up to "+9 (mod 10)."

Validation

To validate an existing entry number, recompute the check digit using the 10-position Numeric Base Value (Filer Code + 7-position Sequence Number) via Steps ONE–SIX and compare it to the check digit on the entry number. Per [S3]/[S4], the Filer Identifier "may be both alphabetic and numeric" while the Sequence Number "is required to be ALL numeric."
Sources retrieved
ACE CATAIR Appendix E Valid Entry Numbers - May 2012 pp.1-3 · sim 0.873
ACE CATAIR Appendix E Valid Entry Numbers - May 2012 — 4. Add the two sums (15 and 17) together for a total of 32. p.4 · sim 0.872
ACE-CATAIR-Duty-Deferral June 2025.v6 (508) (1) — 1. Wait a few minutes and retry/retransmit the transaction. It is possible that a system resource was temporarily unavai pp.53-57 · sim 0.861
ACE CATAIR Recon Create Update V12 2025-06-30 — 1. Wait a few minutes and retry/retransmit the transaction. It is possible that a system resource was temporarily unavai pp.73-76 · sim 0.861
ACE CATAIR Appendix E Valid Entry Numbers - May 2012 — 1. Start with the units position (right-most digit or, in this case, 7) and multiply every other position by 2. In other pp.3-4 · sim 0.859
ACE CATAIR AS AQ DRAFT V6 02272018 — **Record Identifier T2/Q2 (Output)** pp.16-17 · sim 0.859
ACE Cargo Release Implementation Guide V40 July 1 2025 — **Record Identifier SE10 (Input)** pp.33-35 · sim 0.856
ACE CATAIR AS AQ DRAFT V6 02272018 — **Record Identifier T1/Q1 (Output)** p.14 · sim 0.854
Arm B · naked Claude + full corpus
21.7s · 613,824 in · 1,293 out

Entry Number Check Digit Validation

Based on the official CBP specifications (found in ACE-CATAIR-Duty-Deferral Table 1 and Appendix E: Valid Entry Numbers), here is the exact algorithm:

Structure

The entry number consists of two portions combined: - Filer Identifier portion (3 characters — Entry Filer Code, may be alphabetic or numeric) - Sequence Number portion (7 numeric characters — positions 1-7 of the Entry Number) This produces a 10-position base value for the computation.

The Algorithm (6 Steps)

Step 1 — Convert Alphabetic Characters to Numeric

Convert each alphabetic character in the filer code to a numeric equivalent using this table:
A = 1   J = 1   S = 2
B = 2   K = 2   T = 3
C = 3   L = 3   U = 4
D = 4   M = 4   V = 5
E = 5   N = 5   W = 6
F = 6   O = 6   X = 7
G = 7   P = 7   Y = 8
H = 8   Q = 8   Z = 9
I = 9   R = 9
The result is a 10-position "Numeric Base Value" (positions 1–10).

Step 2 — Multiply Even Positions by 2

Multiply positions 2, 4, 6, 8, and 10 each by +2. For each product (P), if the product is greater than +9, add +1 to the units digit and disregard the tens digit (equivalent to casting out nines / summing the digits of products ≥ 10).

Step 3 — Compute "Adjusted Even Sum Value"

Disregarding the tens positions of each adjusted product, add the five (adjusted) products together.

Step 4 — Compute "Odd Sum Value"

Add positions 1, 3, 5, 7, and 9 of the Numeric Base together.

Step 5 — Compute "Check Digit Base Value"

Check Digit Base Value = Adjusted Even Sum Value + Odd Sum Value

Step 6 — Compute the Check Digit

Subtract the ones position (units digit) of the Check Digit Base Value from +10:
Computed Check Digit = 10 − (Check Digit Base Value mod 10)
Special rule: If the result of the subtraction is zero, the check digit is zero.

Modulus

The effective modulus is 10 — this is a Luhn-style (mod 10) check digit algorithm applied to a 10-position numeric base derived from the filer code + 7-digit sequence number.

Example (from Duty Deferral spec)

Using filer code B76 (→ 276 numerically) and transaction number 0324527, producing base 2760324527: - Odd positions (1,3,5,7,9): 7, 5, 2, 0, 7 → multiply by 2 with the >9 adjustment → sum = 15 *(Note: the spec example actually treats positions 1,3,5,7,9 as the ones being doubled, reading right-to-left starting at the units position — see below)* - Even positions (2,4,6,8,10): 2, 4, 3, 6, 2 → sum = 17 - Check Digit Base Value = 15 + 17 = 32 - Check Digit = 10 − 2 = 8 So the full entry number is B76-0324527-8. > ⚠️ Note on position numbering: The spec begins the doubling "with the units position (right-most digit)" and doubles "every other position" — i.e., all odd-indexed positions counting from the right. The spec's wording "all odd positions are multiplied by 2" refers to odd positions when counting from the rightmost (units) digit, which is the standard Luhn convention.
q8_appendix_s_count
Approximately how many distinct ISF error codes are defined in Appendix S?
Arm A · CATAIR agent
6.38s · 7,722 in · 323 out
Based on the verbatim sources provided, I can only see a portion of Appendix S. The visible error codes in [S1] range from 105 to 211, with the following distinct codes explicitly listed: 105, 106, 107, 108, 109, 110, 111, 114, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 153, 154, 157, 201, 203, 204, 205, 209, 210, 211 ([S1] pp.1-4) That is 43 distinct error codes visible in the provided excerpt. However, the source is truncated (ending mid-description at code 211 "Missing Carnet Country of..."), so the full Appendix S likely contains additional codes beyond what is shown. Exact total for the complete Appendix S: Not found in sources (excerpt is truncated).
Sources retrieved
ACE CATAIR Appendix S ISF Error Codes - October 2012 pp.1-4 · sim 0.831
ACE ISF Version3 072017 — **Record Identifier SF90 (Output)** pp.39-40 · sim 0.81
ACE Cargo Release Implementation Guide V40 July 1 2025 pp.94-98 · sim 0.81
ACE Cargo Release Implementation Guide V40 July 1 2025 p.27 · sim 0.809
ACE Cargo Release Implementation Guide V40 July 1 2025 — **Record Identifier SF10 (Input)** pp.75-77 · sim 0.808
ACE Appendix N - 6.6.2023 pp.17-18 · sim 0.807
ACE ISF SA V1 pp.1-4 · sim 0.807
ACE ISF Version3 072017 — **Record Identifier SF10 (Input)** pp.14-20 · sim 0.799
Arm B · naked Claude + full corpus
9.18s · 613,815 in · 384 out
Based on Appendix S: Importer Security Filing Error Codes in the corpus, there are approximately 70 distinct ISF error codes defined. The codes are grouped into several ranges: - 100-series (general/header errors): ~30 codes (105-141, with some gaps), covering submission types, action codes, bond information, importer numbers, etc. - 150-series (bill of lading errors): ~4 codes (153, 154, 157) - 200-series (reference/entry errors): ~10 codes (201, 203-205, 209-213) - 250-series (equipment errors): ~5 codes (251-255) - 300-series (entity errors): ~24 codes (301-310, 311-336, with gaps) - 350-series (address errors): ~4 codes (351-353, 361-362, 370) - 400-series (commodity/HTS errors): ~6 codes (401, 403-406, 408) - 500-series (port/location errors): ~5 codes (501-505) Counting the explicitly listed codes, the total comes to roughly 70 distinct error codes in Appendix S.

Brute force costs 93× more tokens.

Without the graph, you pay for re-scanning the whole corpus on every query. The agent retrieves the right verbatim chunks, forces the LLM to cite them, and keeps field names byte-exact — at a fraction of the cost, with provenance you can audit.

93×
cheaper per query
1.6×
faster response
100%
of answers cite source

Same model · same knowledge · different architecture