{
  "revision": "2026-10-22",
  "generated": {
    "by": "process:drysky-resources-generator",
    "at": "2026-10-22T21:04:57Z"
  },
  "sourceLedger": "https://dry-sky.com/okf/sources/ledger.json",
  "sources": [
    {
      "id": "bbb",
      "title": "BBB business profile",
      "url": "https://www.bbb.org/us/nc/kannapolis/profile/roofing-contractors/dry-sky-roofing-llc-0473-542652",
      "authority": "primary-source-statement",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Public publisher page read; scope limited to the statement below.",
      "supports": "Dry Sky Roofing, LLC; 1502 S Cannon Blvd, Kannapolis; (704) 412-3636; started September 27, 2016; Jimmy Hopkins, Managing Member; BBB accreditation and A+ letter grade.",
      "limit": "Publisher business record, not an independent state license or legal-standing determination."
    },
    {
      "id": "guildquality",
      "title": "GuildQuality company profile",
      "url": "https://www.guildquality.com/profile/dry-sky-roofing-llc",
      "authority": "primary-source-statement",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Public publisher page read; scope limited to the statement below.",
      "supports": "Business name, website and telephone match Dry Sky. Profile still lists 700 N Cannon Blvd Ste 102.",
      "limit": "Known address discrepancy. Retain as identity/review profile; never use its old address as current NAP."
    },
    {
      "id": "kannapolis",
      "title": "Kannapolis inspection jurisdiction",
      "url": "https://www.kannapolisnc.gov/Business/Starting-a-Business",
      "authority": "primary-source-statement",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Public publisher page read; scope limited to the statement below.",
      "supports": "Building code inspections are handled by Cabarrus County, including Rowan portions of Kannapolis, with a Rowan ETJ exception.",
      "limit": "General business guidance. Does not determine whether an individual roof scope needs a permit."
    },
    {
      "id": "charlotte-historic",
      "title": "Charlotte Certificate of Appropriateness",
      "url": "https://www.charlottenc.gov/Growth-and-Development/Planning-and-Development/Historic-District/Certificate-of-Appropriateness",
      "authority": "primary-source-statement",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Public publisher page read; scope limited to the statement below.",
      "supports": "The city provides Certificate of Appropriateness guidance for exterior work within local historic districts.",
      "limit": "Address and work-specific review; no blanket reroof approval or exemption is asserted."
    },
    {
      "id": "lake-four-counties",
      "title": "NC DNCR: creation of Lake Norman",
      "url": "https://www.dncr.nc.gov/blog/2016/09/28/creation-lake-norman-altered-landscape",
      "authority": "primary-source-statement",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Public publisher page read; scope limited to the statement below.",
      "supports": "Lake Norman is in Catawba, Iredell, Lincoln and Mecklenburg counties.",
      "limit": "Geographic context, not a statement of service availability or permit jurisdiction for every parcel."
    },
    {
      "id": "gastonia-permits",
      "title": "Gastonia permits and inspections",
      "url": "https://gastonianc.gov/doing-business/permits-inspections.html",
      "authority": "primary-source-statement",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Public publisher page read; scope limited to the statement below.",
      "supports": "Construction permits moved to Gaston County in August 2022; city zoning approval may be part of the route. The city links a scope-specific process guide.",
      "limit": "Use the linked guide and responsible office for the actual property and work; not every roof repair is assigned the same process."
    },
    {
      "id": "hickory-permit",
      "title": "Hickory Permit Center",
      "url": "https://www.hickorync.gov/permit-center",
      "authority": "primary-source-statement",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Public publisher page read; scope limited to the statement below.",
      "supports": "The city identifies Catawba County as building-code enforcement within Hickory jurisdiction and offers its Permit Center for project routing.",
      "limit": "Confirm jurisdiction using the actual address, not a mailing-city label."
    },
    {
      "id": "statesville-historic",
      "title": "Statesville Historic Preservation Commission",
      "url": "https://www.statesvillenc.net/statesville-historic-preservation-commission",
      "authority": "primary-source-statement",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Public publisher page read; scope limited to the statement below.",
      "supports": "City commission publishes design standards, code guidance and application resources for historic preservation review.",
      "limit": "Resource direction only; no determination that a particular roof is in a district or requires approval."
    },
    {
      "id": "company-site",
      "title": "Dry Sky Roofing website",
      "url": "https://dry-sky.com/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved site artifact and public operator website.",
      "supports": "Founded in 2016, Dry Sky Roofing is a family-owned roofing contractor based in Kannapolis, North Carolina, serving the Concord, Kannapolis, and Charlotte region.",
      "limit": "Operator description; not an independent license or insurance determination."
    },
    {
      "id": "service-roof-replacement",
      "title": "Roof Replacement — Dry Sky Roofing",
      "url": "https://dry-sky.com/services/roof-replacement/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public service page.",
      "supports": "Residential roof replacement with inspection findings, material options, written scope, installation and cleanup planning.",
      "limit": "Scope, price, availability and warranty documents are confirmed for the individual project."
    },
    {
      "id": "service-roof-repair",
      "title": "Roof Repair — Dry Sky Roofing",
      "url": "https://dry-sky.com/services/roof-repair/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public service page.",
      "supports": "Roof inspections and repair planning for leaks, damaged shingles and storm concerns.",
      "limit": "Scope, price, availability and warranty documents are confirmed for the individual project."
    },
    {
      "id": "service-gutters",
      "title": "Gutter Installation — Dry Sky Roofing",
      "url": "https://dry-sky.com/services/gutters/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public service page.",
      "supports": "Gutter installation and repair planning for roof runoff and drainage around the home.",
      "limit": "Scope, price, availability and warranty documents are confirmed for the individual project."
    },
    {
      "id": "service-siding",
      "title": "Siding Installation — Dry Sky Roofing",
      "url": "https://dry-sky.com/services/siding/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public service page.",
      "supports": "Siding installation and replacement for the exterior of the home.",
      "limit": "Scope, price, availability and warranty documents are confirmed for the individual project."
    },
    {
      "id": "service-windows",
      "title": "Window Replacement — Dry Sky Roofing",
      "url": "https://dry-sky.com/services/windows/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public service page.",
      "supports": "Energy-efficient window replacement with attention to fit and exterior finishing.",
      "limit": "Scope, price, availability and warranty documents are confirmed for the individual project."
    },
    {
      "id": "service-skylights",
      "title": "Skylight Installation — Dry Sky Roofing",
      "url": "https://dry-sky.com/services/skylights/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public service page.",
      "supports": "Skylight installation and repair with attention to flashing and the surrounding roof.",
      "limit": "Scope, price, availability and warranty documents are confirmed for the individual project."
    },
    {
      "id": "service-commercial",
      "title": "Commercial Roofing — Dry Sky Roofing",
      "url": "https://dry-sky.com/services/commercial/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public service page.",
      "supports": "Flat and low-slope roofing inspections, repair and replacement planning for commercial buildings.",
      "limit": "Scope, price, availability and warranty documents are confirmed for the individual project."
    },
    {
      "id": "area-concord-kannapolis",
      "title": "Concord & Kannapolis service-area page",
      "url": "https://dry-sky.com/locations/concord-kannapolis/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public locality page.",
      "supports": "Dry Sky publishes a service-area guide for Concord & Kannapolis.",
      "limit": "A service-area guide is not a branch office or a guarantee of availability at every address."
    },
    {
      "id": "area-charlotte",
      "title": "Charlotte service-area page",
      "url": "https://dry-sky.com/locations/charlotte/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public locality page.",
      "supports": "Dry Sky publishes a service-area guide for Charlotte.",
      "limit": "A service-area guide is not a branch office or a guarantee of availability at every address."
    },
    {
      "id": "area-lake-norman",
      "title": "Lake Norman service-area page",
      "url": "https://dry-sky.com/locations/lake-norman/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public locality page.",
      "supports": "Dry Sky publishes a service-area guide for Lake Norman.",
      "limit": "A service-area guide is not a branch office or a guarantee of availability at every address."
    },
    {
      "id": "area-gastonia",
      "title": "Gastonia service-area page",
      "url": "https://dry-sky.com/locations/gastonia/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public locality page.",
      "supports": "Dry Sky publishes a service-area guide for Gastonia.",
      "limit": "A service-area guide is not a branch office or a guarantee of availability at every address."
    },
    {
      "id": "area-hickory",
      "title": "Hickory service-area page",
      "url": "https://dry-sky.com/locations/hickory/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public locality page.",
      "supports": "Dry Sky publishes a service-area guide for Hickory.",
      "limit": "A service-area guide is not a branch office or a guarantee of availability at every address."
    },
    {
      "id": "area-statesville",
      "title": "Statesville service-area page",
      "url": "https://dry-sky.com/locations/statesville/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public locality page.",
      "supports": "Dry Sky publishes a service-area guide for Statesville.",
      "limit": "A service-area guide is not a branch office or a guarantee of availability at every address."
    },
    {
      "id": "angi",
      "title": "Angi reviews",
      "url": "https://www.angi.com/companylist/us/nc/kannapolis/dry-sky-roofing-llc-reviews-1.htm",
      "authority": "operator-attested",
      "observedAt": null,
      "method": "Profile link retained from the approved business inventory or footer; current provider content not independently rechecked.",
      "supports": "Operator-published identity/profile link.",
      "limit": "Do not infer a current rating, review count, credential tier or address from inclusion in this directory."
    },
    {
      "id": "homeadvisor",
      "title": "HomeAdvisor profile",
      "url": "https://www.homeadvisor.com/rated.DrySkyRoofingLLC.59664343.html",
      "authority": "operator-attested",
      "observedAt": null,
      "method": "Profile link retained from the approved business inventory or footer; current provider content not independently rechecked.",
      "supports": "Operator-published identity/profile link.",
      "limit": "Do not infer a current rating, review count, credential tier or address from inclusion in this directory."
    },
    {
      "id": "owens-corning",
      "title": "Owens Corning contractor profile",
      "url": "https://www.owenscorning.com/en-us/roofing/contractors/contractor-profile/222652",
      "authority": "operator-attested",
      "observedAt": null,
      "method": "Profile link retained from the approved business inventory or footer; current provider content not independently rechecked.",
      "supports": "Operator-published identity/profile link.",
      "limit": "Do not infer a current rating, review count, credential tier or address from inclusion in this directory."
    },
    {
      "id": "google-maps",
      "title": "Google Maps and reviews",
      "url": "https://www.google.com/maps/place/Dry+Sky+Roofing/@35.4738099,-80.6112263,17z/data=!3m1!4b1!4m6!3m5!1s0x885408f56c93b733:0x64dbd358cc3a0b3a!8m2!3d35.4738099!4d-80.6112263!16s%2Fg%2F11cspjmy7_",
      "authority": "operator-attested",
      "observedAt": null,
      "method": "Profile link retained from the approved business inventory or footer; current provider content not independently rechecked.",
      "supports": "Operator-published identity/profile link.",
      "limit": "Do not infer a current rating, review count, credential tier or address from inclusion in this directory."
    },
    {
      "id": "facebook",
      "title": "Facebook",
      "url": "https://www.facebook.com/DrySkyRoofing/",
      "authority": "operator-attested",
      "observedAt": null,
      "method": "Profile link retained from the approved business inventory or footer; current provider content not independently rechecked.",
      "supports": "Operator-published identity/profile link.",
      "limit": "Do not infer a current rating, review count, credential tier or address from inclusion in this directory."
    },
    {
      "id": "youtube",
      "title": "YouTube",
      "url": "https://www.youtube.com/@dryskyroofing",
      "authority": "operator-attested",
      "observedAt": null,
      "method": "Profile link retained from the approved business inventory or footer; current provider content not independently rechecked.",
      "supports": "Operator-published identity/profile link.",
      "limit": "Do not infer a current rating, review count, credential tier or address from inclusion in this directory."
    },
    {
      "id": "instagram",
      "title": "Instagram",
      "url": "https://www.instagram.com/dryskyroofing/",
      "authority": "operator-attested",
      "observedAt": null,
      "method": "Profile link retained from the approved business inventory or footer; current provider content not independently rechecked.",
      "supports": "Operator-published identity/profile link.",
      "limit": "Do not infer a current rating, review count, credential tier or address from inclusion in this directory."
    },
    {
      "id": "linkedin",
      "title": "LinkedIn",
      "url": "https://www.linkedin.com/company/dry-sky-roofing",
      "authority": "operator-attested",
      "observedAt": null,
      "method": "Profile link retained from the approved business inventory or footer; current provider content not independently rechecked.",
      "supports": "Operator-published identity/profile link.",
      "limit": "Do not infer a current rating, review count, credential tier or address from inclusion in this directory."
    },
    {
      "id": "contact-page",
      "title": "Contact Dry Sky Roofing",
      "url": "https://dry-sky.com/contact/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved public contact page.",
      "supports": "Contact the team about the property, project scope and scheduling.",
      "limit": "The knowledge bundle does not accept bookings or submit project requests."
    },
    {
      "id": "financing-page",
      "title": "GreenSky financing information",
      "url": "https://dry-sky.com/financing/",
      "authority": "operator-attested",
      "observedAt": "2026-10-22T21:04:57Z",
      "method": "Approved September 17 financing page.",
      "supports": "The public financing page contains the supplied plan details and program disclosure.",
      "limit": "Terms and approval are controlled by the lender; this bundle does not quote or calculate financing."
    }
  ],
  "unknowns": [
    {
      "id": "project-credentials",
      "statement": "Current license and insurance documents for a specific project are not included in this bundle. Request the applicable documents from the team."
    },
    {
      "id": "manufacturer-tier",
      "statement": "The contractor profile link is provided; no current manufacturer tier is independently asserted here."
    },
    {
      "id": "response-availability",
      "statement": "No fixed response time, emergency schedule, price or warranty term is established by this bundle."
    },
    {
      "id": "profile-address",
      "statement": "The GuildQuality page observed on October 22, 2026 still displayed 700 N Cannon Blvd Ste 102. The current business record uses 1502 S Cannon Blvd; the older profile address is not another office."
    }
  ]
}
