OPQ Alert

About OPQ Alert App

For public users, contributors, and curators.

The OPQ Alert App is a lightweight file-based portal for finding, adding, and curating Canadian Order Paper Question records. Python prepares bulk data locally. PHP publishes and edits records on the portal.

Raison d'ĂȘtre

Order Paper Questions are formal written questions used in Parliament to require government answers. They are a critical democratic tool for uncovering facts, records, policies, contracts, decisions, and omissions that may otherwise remain difficult for the public to see.

These records can contain very important evidence, yet most Canadians do not know they exist, and many OPQs are difficult to search, compare, preserve, and follow up on. This app exists for two reasons: to help Canadians understand what OPQs are and what evidence they contain, and to help transparency and accountability groups archive analysis, flag concerning responses, and follow up on identified areas of concern.

Raw submitted PDF filenames are preserved while files are waiting in r/inbox/. After local Python processing, public PDFs and machine-readable TXT files are stored together in the flat r/ repository folder.

1. User Profiles

ProfilePurposeAccess
SeekerBrowse and search the public OPQ table.No password.
ContributorUpload new OPQ PDFs, add metadata, and add analysis links/articles.Password required.
CuratorReview, correct, overwrite, and manage OPQ records.Password required.

2. Seeker Guide

Open the Public Table

Open index.html.

Search

Use the search box to find OPQs by OPQ number, agency, topic, description, source, or article/video label.

Understand Areas of Concern

ValueMeaning
GreenNo automatic concern assigned yet.
YellowOne or more concern areas were detected, such as incomplete response or references without direct links.
RedSerious concern manually flagged for follow-up.
GreyNot assessed yet.

Open Documents

Use PDF for the original OPQ in the r/ folder, TXT for the human-readable record summary in the same folder, Official for the official source link, and article/video links for external analysis.

3. Contributor Guide

Log In

Choose Contributor, enter your initials/user ID, enter the password, and continue. If you want to contribute but do not have login details, use Contact us.

Submit a New OPQ PDF

Use Submit OPQ. Choose the PDF first. The page will try to extract the OPQ ID and title from the file name. Verify or edit fields, then press Submit.

After upload, the original PDF is stored in r/inbox/ and is marked as needing local Python processing until the curator processes it locally.

Edit Metadata

Use Edit Metadata. Search for the OPQ ID and correct or add fields.

Keep Topic neutral, for example vaccines, procurement, privacy, public health.

Use Identified Concern to explain why the OPQ matters. Choose one value from the dropdown.

Add Named Links

Use Analysis & Follow-up for related OPQs, article links, video links, and follow-up actions. For Analysis Articles, Videos, and Linked References, use comma-separated named links:

ivim substack :: https://example.com/article, ivim YT :: https://youtu.be/example

The public table will show the names as clickable links.

Analysis reports can be written manually with ChatGPT Plus, by contributors, or by other tools. This app links to them; it does not require an API-based analysis workflow.

4. Curator Guide

Review Pending Python Processing

Curators can identify portal-uploaded PDFs needing local processing by checking records with a PDF in r/inbox/ and no machine_extracted_at value.

A row needs local processing when it has a PDF but no machine_extracted_at value.

Correct OPQ Metadata

Use Edit OPQ Metadata to correct fields about the OPQ PDF and machine-extracted values. Curators may overwrite existing rows.

Maintain Analysis & Follow-up Metadata

Use Analysis & Follow-up to add links to analysis articles, videos, related OPQs, alert status, concerns, and follow-up actions. Analysis articles themselves can live anywhere, including the portal analysis/ folder.

Concern Rules

The public table uses Alert for colour status and Concerns for concern-area numbers. It can automatically show Yellow with concern 7 when responses are fewer than questions asked, or concern 13 when unlinked references are listed.

Local Publish Workflow

Locally, data-publish/ mirrors ivim.ca/foi/opq/. Run the Python package builder, then upload everything inside data-publish/ to ivim.ca/foi/opq/, preserving folders.

New submitted PDFs belong directly in data-publish/r/inbox/, using the exact submitted filename. Processed public PDFs and generated TXT summaries belong in the flat data-publish/r/ folder. There is no separate processed archive copy.

PDF filenames stay descriptive for human folder browsing, for example 451-0460_vaccine_injury_reports.pdf. TXT filenames stay short and machine-friendly, for example 451-0460.txt. The TXT file begins with the public PDF filename, and the main opq_index.csv remains the metadata authority.

Future local Tkinter tools should provide a curator-friendly interface for scanning inbox folders, reviewing metadata, and generating data-publish/ without needing Codex for routine processing.

5. Field Reference

FieldMeaning
TopicNeutral subject area.
Identified ConcernControlled category explaining why the OPQ matters.
AlertGreen, Yellow, Red, or Grey status used to colour the public table.
ConcernsOne or more numbered concern areas.
# AskedNumber of question parts asked.
RespondedNumber of question parts answered. This should never be higher than # Asked.
Unlinked ReferencesSources named in the OPQ response without extracted direct links.
Linked ReferencesDirect links extracted for referenced sources.
Related OPQsOther OPQs connected to this record.
Analysis & Follow-upNamed links to external or portal-hosted analysis, videos, and follow-up action notes.

6. Good Practices

App Details

FieldValue
NameOPQ Alert App
Version0.9.0
TypeWeb application, compatible with mobile devices.
Data sourcesCanadian parliamentary Order Paper Question PDFs, official government responses, contributor-provided metadata, and linked analysis or follow-up material.
LicenceSource data from Government of Canada sources is used under the Open Government Licence - Canada where applicable. Contributor analysis and linked third-party materials remain subject to their own licences and terms.
Developed byIVIM and Canadian Citizens Care Alliance (CCCA)
Learn moreIVIM.ca, cccalliance.ca
Comments / Questionsinfo@ivim.ca