Meeting records watch

Agendas, packets and minutes for local public bodies in the Capital Region, Rochester and Mid-Hudson, checked against New York's Open Meetings Law publication rules.

Open Meetings Law publication rubric (COOG-style), v1

These are research indicators, not legal conclusions. Each one records what the public record shows on the venues we checked, or unknown. A missing document on our side is not proof that the body failed to produce or post it: it may be posted somewhere we haven't checked, posted under a different name, or available on request. Only a court or the Committee on Open Government (COOG) can say whether a body complied with the law.

Statute: New York Public Officers Law, Article 7 (Open Meetings Law, §§100–111). Related: §87(3)(a) (Freedom of Information Law).

Window: meetings on or after 2026-07-09 (three months back from the build date), plus scheduled meetings up to 45 days ahead.

1. Notice (§104)

2. Records scheduled to be discussed (§103(e))

- agenda_posted and materials_posted (a packet, backup or attachments): yes or no for past meetings, unknown for upcoming ones. agenda_posted is in_packet when no standalone agenda file is listed but a meeting packet is (packets normally open with the agenda; phase 1 does not open packets to confirm).

- posted_before: yes, no, unknown, or no_record, with a labeled date source. In order of strength, the sources are:

1. A portal publication timestamp, for example Legistar's EventAgendaLastPublishedUTC.

2. This monitor capturing the document before the meeting date.

3. HTTP Last-Modified. It is recorded but not trusted: many portals stamp it at request time.

4. PDF CreationDate or ModDate. This is shown as context only, because a document created before a meeting may still have been posted after it.

3. Minutes timeliness (§106(3))

- minutes_found: yes or no.

- minutes_days: days from the meeting to the earliest evidence of posting, along with what kind of evidence it is. portal_timestamp is exact. upper_bound_first_captured means the minutes were posted no later than the day we first saw them.

- minutes_within_14: yes, no, or unknown.

- minutes_overdue: flagged only when all of the following are true:

- The meeting is known to have occurred, shown by a recording in the video index, a recording link on the portal, or minutes.

- More than 14 days have passed.

- The venue we checked publishes minutes for this body or venue.

- No minutes were found.

4. Minutes contents (§106(1); FOIL §87(3)(a))

- present: motions or resolutions appear along with roll calls, per-member votes, or vote tallies.

- partial: motions appear, but only "carried" or "unanimous" is recorded.

- absent: motions appear with no vote record.

- unknown: there is no text, OCR is pending, or no motions were detected.

5. Executive session (§105(1))

- Purpose: specific (the text tracks the statutory language), vague (only a generic label), or not_stated. A bare statutory citation ("pursuant to §105(1)(f)") with no description is counted as vague, because COOG opinions and court decisions treat reciting the section alone as not identifying the subject. Only motions or statements entering executive session are classified; motions to leave it, and agenda boilerplate such as "may entertain a motion", are ignored.

- Vote: vote_recorded (a tally or "unanimous"), carried_without_tally, or no_vote_recorded.

- Whether the majority was of the total membership can't be verified without the body's size, so it is not scored. The snippet is shown so a reader can check.

6. Livestream or recording (informational)

Expected-meetings calendar

1. Portal meeting lists (CivicPlus AgendaCenter, IQM2, Legistar, BoardDocs public pages, and plain agenda/minutes pages).

2. Video-index dates.

3. Posted annual schedules (phase 2).

Collection ethics