Field notes: the same dark contact, three nights running

There's a particular kind of satisfaction in a boring answer. Three weeks ago I'd have told you a "repeat dark contact" was mostly a theoretical problem, something that showed up in the training slides but not so much on the actual watch desk. Then I spent a week staring at the same three unmatched detections and realized they weren't three vessels at all.
Here's how it went. Monday's daily list flagged a mid-size contact off the edge of a closed area, no AIS match, nothing unusual about that in itself. Tuesday's list had a contact in almost the same position, same size class, logged about forty minutes earlier in the night than Monday's. Wednesday, same story again, forty-some minutes earlier still. At that point the pattern stopped looking like coincidence and started looking like a vessel that knows the tide table better than I do.
The thing about running a daily unmatched detection list is that each day's output looks like a fresh problem. New positions, new timestamps, a pile of contacts to triage against known traffic and weather. It's easy to treat every line as its own event and move on once you've logged it. What you lose doing that is the thread connecting Monday to Wednesday, which in this case was the actual story. One boat, working the same patch on a rotation tied to slack water, going dark every time it's out there.
I went back through two more weeks of exports once I had a hunch. Same size class, same general bearing from the closed-area boundary, drifting earlier each night in a way that tracked almost exactly with the tide shift. No AIS hit turned up on any of the six nights it appeared, and the pattern itself reads as deliberate: a transponder switched off on purpose, on a schedule the crew has clearly worked out for itself.
This is the part of the job that doesn't photograph well. There's no dramatic chase, no boarding, nothing you'd put in an annual report. It's a spreadsheet row that quietly repeats itself until someone notices the repetition. And the noticing is the hard part, not because the data's unclear but because nobody's job is to sit there cross-referencing six consecutive nights of exports by eye, position by position, looking for a match that isn't obvious until you've already found it.
What made this one catchable was that the list itself didn't change format night to night. Position, size class, timestamp, exported the same way each morning, which meant I could line up Monday against Tuesday against Wednesday without reformatting anything first. That sounds like a small thing. After the third week of doing this job, it doesn't feel small at all. Half the manual AIS-gap trawling I used to do was just getting the data into a shape where I could compare one night to the next.
I don't know yet what this vessel is actually doing in that patch of water. Could be unlicensed gear, could be something more mundane that just happens to look suspicious from altitude. That's a question for a patrol asset, not for a desk review. But the desk review did its job: it turned six unrelated-looking blips into one contact worth a closer look, and it did it off a daily export rather than a week of someone's memory for "didn't I see this boat before."
If your watch desk runs on the same kind of daily list of unmatched detections, start looking for the row that repeats before you look for the row that's new. Illegal Fishing Detection is built around exactly that comparison, so a pattern like this one surfaces on its own instead of waiting for someone to notice it by hand.