{
  "evidence": {
    "github": {
      "title": "GitHub Classroom · full shutdown",
      "url": "https://github.blog/changelog/2026-08-27-github-classroom-deprecated/",
      "date": "Notice: August 27, 2026 · effective August 28, 2026",
      "quality": "Provider announcement; dated change",
      "claim": "GitHub decommissioned Classroom’s website, APIs, and related services on August 28, 2026. Its May 26 announcement had already stopped new sign-ups. Accounts, repositories, and organizations remain; some Classroom-specific metadata is subject to deletion.",
      "scope": "This removes a course-management and automation layer. It does not remove GitHub itself or establish that all free Actions or Codespaces benefits have ended.",
      "rechecked_at": "2026-10-19"
    },
    "colab": {
      "title": "Google Colab Pro for Education · offer closed",
      "url": "https://research.google.com/colaboratory/faq.html",
      "date": "Closed to new users by September 21, 2026 (Greg Chism update received October 20); provider FAQ checked October 8, 2026; exact effective date not stated",
      "quality": "Provider policy verifies status; user-reported earlier boundary date",
      "claim": "The FAQ says new sign-ups for the free one-year Pro for Education subscription are no longer available. Previously verified users keep the benefit until their one-year mark, unless replaced with a paid personal subscription.",
      "scope": "Google announced a limited number of these subscriptions on July 18, 2025. The current FAQ establishes withdrawal of the offer, not deletion of education accounts or the end of free Colab. The phrase “quietly pulled” is an interpretation of the FAQ-only notice; the absence of a separate announcement cannot be proved. Free Colab still has variable, non-guaranteed resource limits. Greg Chism reports it was already closed to new users by September 21, 2026. This is an attributed upper boundary, not the exact effective closure date.",
      "rechecked_at": "2026-10-19",
      "user_update": {
        "reported_by": "Greg Chism",
        "received": "2026-10-20",
        "closed_to_new_users_by": "2026-09-21",
        "basis": "User reports the program was already closed to new users by this date; not independently dated by the provider FAQ."
      }
    },
    "colablaunch": {
      "title": "Google · original education offer",
      "url": "https://blog.google/products-and-platforms/products/education/colab-higher-education/",
      "date": "July 18, 2025",
      "quality": "Provider launch announcement",
      "claim": "Google offered a limited number of free one-year Colab Pro subscriptions to verified students and faculty at U.S. higher education institutions.",
      "scope": "The original offer was explicitly limited. It was not a permanent entitlement or a commitment to every future cohort."
    },
    "aws": {
      "title": "AWS · twelve-month and six-month Free Tier comparison",
      "url": "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-free-tier-usage.html",
      "date": "New-account boundary: July 15, 2025",
      "quality": "Provider documentation with an explicit before/after table",
      "claim": "For accounts created before July 15, 2025, the documented EC2 Free Tier benefit lasted 12 months with usage limits and possible overage billing. Newer accounts receive a credit-based free plan lasting at most six months, ending sooner if credits run out; usage cannot exceed the free-plan limits.",
      "scope": "This is the general Free Tier used by students, not a verified six-month change to AWS Educate or Academy. The new plan also changes eligible instances, credits, and spending protection. Remaining credits may last up to 12 months if a user upgrades to a paid plan, subject to terms.",
      "rechecked_at": "2026-10-19"
    },
    "awsfaq": {
      "title": "AWS · credit and free-plan expiration rules",
      "url": "https://aws.amazon.com/free/free-tier-faqs/",
      "date": "Current FAQ checked October 8, 2026",
      "quality": "Provider FAQ; confirms distinction between credits and free plan",
      "claim": "The free plan ends after six months or exhaustion of credits. Free Tier credits generally expire twelve months after account creation and can apply after an eligible upgrade to a paid plan.",
      "scope": "A six-month free plan is not equivalent to a six-month expiry for every credit or every educational program."
    },
    "heroku": {
      "title": "Heroku · free compute and databases withdrawn",
      "url": "https://devcenter.heroku.com/changelog-items/2461",
      "date": "Announced August 25, 2022 · effective November 28, 2022",
      "quality": "Provider changelog; dated change",
      "claim": "Heroku ended its free Dynos, Postgres, and Redis plans and began scaling down free dynos and deleting free databases on November 28, 2022.",
      "scope": "General-purpose hosting and data services used in teaching. This is not evidence that every later Heroku student credit offer ended.",
      "rechecked_at": "2026-10-19"
    },
    "replit": {
      "title": "Replit · Teams for Education decommissioned",
      "url": "https://bucknell.teamdynamix.com/TDClient/40/IT/KB/Article/529/Replit-FAQ",
      "date": "Provider notice December 6, 2023 · removal August 1, 2024",
      "quality": "University service record, corroborating the indexed provider announcement",
      "claim": "Users were notified November 14, 2023. New team creation and updates stopped November 15. Replit removed Teams for Education and deleted its data on August 1, 2024 after an export period.",
      "scope": "The original Replit announcement at blog.replit.com/update-on-teams-for-education was readable through Exa’s indexed copy but returned HTTP 404 during direct verification. This link opens Bucknell’s institutional notice with the same staged timeline. Replit’s broader product continued; the 2023 and 2024 milestones are one product withdrawal."
    },
    "glitch": {
      "title": "Glitch · project hosting ended",
      "url": "https://blog.glitch.com/post/changes-are-coming-to-glitch",
      "date": "Announced May 22, 2025 · effective July 8, 2025",
      "quality": "Provider announcement; dated change",
      "claim": "Glitch ended project hosting and user profiles on July 8, 2025. Code downloads remained available through the end of 2025, with a redirect transition.",
      "scope": "General-purpose creative coding and hosting used in teaching; this is a hosting loss, not a withdrawal of GPU notebooks or an education-only account."
    },
    "studiolab": {
      "title": "AWS SageMaker Studio Lab · new customers closed",
      "url": "https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lab-availability-change.html",
      "date": "Current provider documentation checked October 8, 2026 · effective date not stated",
      "quality": "Provider policy; verified status, uncertain change date",
      "claim": "Studio Lab is closed to new customers. Existing customers may continue using it; AWS plans security and availability work but no new features.",
      "scope": "The existing free notebook service is not fully shut down. An external documentation-change tracker suggests July 30, 2026, but the current primary notice does not date the change; the deck deliberately uses the observation date."
    },
    "access": {
      "title": "ACCESS · eligibility, educational periods, review, renewal",
      "url": "https://allocations.access-ci.org/allocations-policy",
      "date": "Current policy checked October 8, 2026",
      "quality": "Official program policy",
      "claim": "Eligible U.S.-based educators may lead allocations. Educational projects align with individual courses or training periods; they are typically not extended. ACCESS accepts educational uses at all scales with suitable justification. Smaller project requests are reviewed continually; Maximize requests use semiannual review and renewal.",
      "scope": "A pooled teaching-service proposal needs program/provider agreement about structure and eligible uses. An award does not guarantee future approval, permanent student accounts, synchronous GPU availability, or local support staffing.",
      "rechecked_at": "2026-10-19"
    },
    "types": {
      "title": "ACCESS · allocation scale",
      "url": "https://allocations.access-ci.org/project-types",
      "date": "Current program page checked October 8, 2026",
      "quality": "Official program description",
      "claim": "Explore, Discover, and Accelerate have published credit limits of 400,000, 1,500,000, and 3,000,000 respectively; Maximize requests resource-specific allocations. Discover explicitly includes large classes and training events. Start smaller and upgrade if needed.",
      "scope": "Limits are not guaranteed awards. Current policy awards up to half of the credit limit initially and the remainder through a justified supplement. Credits are not interchangeable with CPU core-hours or GPU-hours without resource-specific conversion. The deck does not prescribe Maximize merely because the user wants a large allocation."
    },
    "nairr": {
      "title": "NAIRR Pilot Classroom · instructor request",
      "url": "https://nairrpilot.org/opportunities/education-call",
      "date": "Current classroom call checked October 8, 2026",
      "quality": "Official classroom opportunity and proposal instructions",
      "claim": "U.S.-based instructors can request resources for undergraduate or graduate AI coursework or short training in any discipline with U.S.-based participants. Prepare a course/resource description of at most three pages plus a lead biosketch. Identify software, compute and storage needs, support, readiness, a preferred provider, and an alternate.",
      "scope": "Only selected providers support this call. Resource match and availability are conditional. Instructors or their teams provide primary student technical support. Course development/testing is also eligible. A central program should assist instructors rather than imply that pilot awards are automatic or unrestricted."
    },
    "jetstream": {
      "title": "Jetstream2 · teaching environments",
      "url": "https://docs.jetstream-cloud.org/tutorial/classroom/overview/",
      "date": "Current resource documentation checked October 8, 2026",
      "quality": "Resource-provider teaching guide",
      "claim": "Jetstream2 documents classroom workflows including JupyterHub, reproducible environments, AI/ML, virtual desktops, and web hosting.",
      "scope": "This supports the feasibility of the diagram’s software choices. The pictured service is proposed; it is not a verified deployment. A gateway or hub still needs engineering, operating ownership, and the appropriate allocation."
    },
    "budget": {
      "title": "Jetstream2 · classroom allocation planning",
      "url": "https://docs.jetstream-cloud.org/tutorial/classroom/allocation/",
      "date": "Current planning guide checked October 8, 2026",
      "quality": "Resource-provider sizing guidance",
      "claim": "Plan course duration, student count, instance size, GPU needs, active hours, and storage. Account for idle instances and operational overhead when estimating resource use.",
      "scope": "The calculator uses illustrative demand assumptions, not provider benchmarks. CPU and GPU hours must be mapped to the chosen resource’s accounting; shared-service and course quotas require an actual operating design."
    },
    "reporting": {
      "title": "NAIRR Classroom · reporting requirements",
      "url": "https://nairrpilot.org/app/site/media/docs/NAIRR_Pilot_Classroom_Reporting.pdf",
      "date": "April 2025, version 2 · current guidance checked October 8, 2026",
      "quality": "Official reporting guidance; corroborated by April 2026 newsletter",
      "claim": "Submit a progress report halfway through the course or training and a final report within 30 days of completion. Report resource use, participation, educational outcomes, and issues.",
      "scope": "The proposed program needs to collect enough course evidence to complete these reports; allocation acquisition is only one stage of delivery."
    },
    "programs": {
      "title": "UArizona InfoSci · current degree roster",
      "url": "https://infosci.arizona.edu/programs",
      "claim": "The current program finder lists nine non-cyber degree awards: five bachelor’s degrees, MS Data Science, MS Information Science, MA Library & Information Science, and PhD Information.",
      "scope": "BAS Cyber Defense, BS Cyber Operations and MS Cyber Operations are excluded. Certificates, minors and accelerated pathways are not additional degree awards. Platform-to-assignment matches are an instructional assessment, not a college endorsement or tested curriculum deployment.",
      "date": "Checked October 8, 2026",
      "quality": "Official provider / program documentation"
    },
    "codespaces": {
      "title": "Codespaces · free personal-account quotas",
      "url": "https://docs.github.com/en/billing/concepts/product-billing/github-codespaces",
      "claim": "Personal Free includes 120 core-hours and 15 GB-month; Pro includes 180 core-hours and 20 GB-month. On a 2-core machine those amounts mean 60 and 90 active wall-clock hours. Larger machines spend the quota faster.",
      "scope": "Organizations have no included free quota. Stored codespaces consume storage even when stopped. Without a payment method usage stops at the limit; paid overages depend on billing settings. Use personal ownership deliberately; Classroom’s former organization benefit is not assumed.",
      "date": "Rechecked October 13, 2026",
      "quality": "Official provider / program documentation",
      "rechecked_at": "2026-10-19"
    },
    "students": {
      "title": "Codespaces · verified student benefit",
      "url": "https://docs.github.com/en/education/about-github-education/github-education-for-students/about-github-education-for-students",
      "claim": "Verified students receive up to 180 core-hours per month on personal accounts, with storage equivalent to GitHub Pro.",
      "scope": "Verification and benefit eligibility must be established before teaching. Some documentation still describes the closed Classroom integration; the recommendation uses only the personal-account benefit.",
      "date": "Rechecked October 13, 2026",
      "quality": "Official provider / program documentation"
    },
    "codespacesgpu": {
      "title": "Codespaces · machine learning and GPU boundary",
      "url": "https://docs.github.com/en/codespaces/developing-in-a-codespace/getting-started-with-github-codespaces-for-machine-learning",
      "claim": "GitHub documents notebook-based ML and JupyterLab. Its GPU machine trial is not generally available.",
      "scope": "Installing CUDA software does not confer a GPU. Treat ordinary free Codespaces as CPU compute; a full desktop game / XR workstation is outside this recommendation.",
      "date": "Checked October 8, 2026",
      "quality": "Official provider / program documentation"
    },
    "kaggle": {
      "title": "Kaggle · free accelerator notebooks",
      "url": "https://www.kaggle.com/docs/notebooks",
      "claim": "Kaggle offers free GPU notebooks subject to availability. Current notebook documentation lists 12-hour CPU/GPU sessions and 20 GB of saved working space, and references T4 and P100 hardware.",
      "scope": "An older official GPU tips page still says 9-hour sessions and 30 hours/week. Plan short checkpointed labs below nine hours and check the live timer, quota and available hardware. Large-model fit depends on actual VRAM; two GPUs do not automatically pool memory. No classroom concurrency reservation is established.",
      "date": "Checked October 8, 2026",
      "quality": "Official provider / program documentation"
    },
    "kagglequota": {
      "title": "Kaggle · floating weekly GPU quota",
      "url": "https://www.kaggle.com/product-feedback/173129",
      "claim": "The provider describes a weekly floating GPU quota, with the account/editor showing the current allowance; it can vary with demand and resource availability.",
      "scope": "The historical 30-hour figure is not presented as a guaranteed class entitlement. Extra hours linked to a paid Colab promotion are excluded from the free recommendation.",
      "date": "Checked October 8, 2026",
      "quality": "Official provider / program documentation"
    },
    "pages": {
      "title": "GitHub Pages · static hosting",
      "url": "https://docs.github.com/en/pages/getting-started-with-github-pages/what-is-github-pages",
      "claim": "Pages serves HTML, CSS and JavaScript from repositories. GitHub Free supports Pages in public repositories.",
      "scope": "This hosts a browser project; it does not supply server-side application compute or a GPU. Public project hosting is unsuitable for private study records.",
      "date": "Checked October 8, 2026",
      "quality": "Official provider / program documentation"
    },
    "pageslimits": {
      "title": "GitHub Pages · size and bandwidth limits",
      "url": "https://docs.github.com/en/pages/getting-started-with-github-pages/github-pages-limits",
      "claim": "Published sites may be at most 1 GB, with a soft 100 GB monthly bandwidth limit and deployment / rate limits.",
      "scope": "Large game assets, media archives, persistent databases and multiplayer backends need another service. Free public hosting does not imply private access control.",
      "date": "Checked October 8, 2026",
      "quality": "Official provider / program documentation"
    },
    "p5": {
      "title": "p5.js · free browser creative coding",
      "url": "https://p5js.org/about/",
      "claim": "p5.js is a free open-source JavaScript library with a web editor for interactive and audio-visual works, including WebGL.",
      "scope": "Rendering runs on the learner’s device. Device performance, browser capabilities and peripheral access remain course constraints; this is not cloud GPU capacity.",
      "date": "Checked October 8, 2026",
      "quality": "Official provider / program documentation"
    },
    "twine": {
      "title": "Twine · free interactive narratives",
      "url": "https://twinery.org/",
      "claim": "Twine supports browser or desktop authoring of nonlinear stories and exports HTML, with optional CSS and JavaScript.",
      "scope": "Suitable for narrative and interaction prototypes, not a replacement for full game-engine or VR labs. Export backups rather than depending on browser storage.",
      "date": "Checked October 8, 2026",
      "quality": "Official provider / program documentation"
    },
    "cudalive": {
      "title": "cuda.live · optional CUDA micro-exercises",
      "url": "https://cuda.live/pricing",
      "claim": "The independent provider advertises 15 free execution credits per month, a five-runs-per-15-minute rate limit, and T4 GPUs with 16 GB memory. One credit is one execution.",
      "scope": "Optional tightly bounded CUDA demonstration, not a primary semester GPU environment. This is independent of Codabench, the service the user intended. No classroom concurrency guarantee was verified.",
      "date": "Checked October 8, 2026",
      "quality": "Official provider / program documentation"
    },
    "gitlabrollout": {
      "title": "GitLab · five-user private-group limit rollout",
      "url": "https://about.gitlab.com/blog/efficient-free-tier/",
      "date": "Announced March 24, 2022; new groups from December 28, 2022; remaining enforcement August 15, 2026",
      "claim": "GitLab’s staged Free SaaS change limits private top-level groups to five users. Its June 18, 2026 update schedules enforcement on all remaining affected namespaces for August 15, 2026.",
      "scope": "Public groups, self-managed Free and qualifying Education/Open Source programs are exempt. The 2022 and 2026 entries are stages of one restriction, not two vanished services. Earlier proposed rollout dates were revised.",
      "quality": "Primary provider / institutional source"
    },
    "gitlablimits": {
      "title": "GitLab · current free user and group limits",
      "url": "https://docs.gitlab.com/user/free_user_limit/",
      "date": "New-account group boundary: January 27, 2026; checked October 10, 2026",
      "claim": "New Free accounts created after January 27, 2026 are limited to three top-level groups. A private Free namespace exceeding five users becomes read-only.",
      "scope": "Groups are organizational containers, not a three-repository limit. The documentation gives June 13, 2023 for older private groups; the announcement separately documents remaining enforcement in 2026. Avoid a universal one-day rollout claim.",
      "quality": "Primary provider / institutional source"
    },
    "bitbucket": {
      "title": "Bitbucket · free workspace storage and feature reduction",
      "url": "https://www.atlassian.com/blog/bitbucket/important-changes-coming-to-bitbucket-clouds-free-plan",
      "date": "Announced January 27, 2025; enforcement delayed to May 29, 2025",
      "claim": "Free workspaces receive a 1 GB aggregate repository storage cap, lose Downloads and Snippets, and have 90-day pipeline-log retention. Over-limit workspaces become read-only.",
      "scope": "The provider update supersedes the original April 28 date. Paid plans are excluded. Inactive free repositories may be archived, with admin restoration; this is not a blanket deletion announcement. Special academic plans must be checked separately.",
      "quality": "Primary provider / institutional source"
    },
    "bitbucketpolicy": {
      "title": "Bitbucket · aggregate Git storage versus LFS",
      "url": "https://support.atlassian.com/bitbucket-cloud/docs/reduce-repository-size/",
      "date": "Checked October 10, 2026",
      "claim": "Current support guidance confirms 1 GB total repository storage across a Free workspace.",
      "scope": "Git storage is distinct from the LFS allowance. Some pricing/billing pages retain per-repository wording; this deck follows the dated change and current support policy, and advises checking the actual workspace quota.",
      "quality": "Primary provider / institutional source"
    },
    "cloudsource": {
      "title": "Google Cloud Source Repositories · new access withdrawn",
      "url": "https://cloud.google.com/source-repositories/pricing",
      "date": "Effective June 17, 2024; checked October 10, 2026",
      "claim": "Cloud Source Repositories is unavailable to new customers. Its free tier included five project-users and 50 GB of storage; organizations already using it before the cutoff are unaffected by the new-access change.",
      "scope": "This is loss of a new free-hosting route, not proof that existing repositories were shut down or deleted. Secure Source Manager is a separate product, not assumed to be a free classroom substitute.",
      "quality": "Primary provider / institutional source"
    },
    "githubfree": {
      "title": "GitHub · free repositories still available",
      "url": "https://docs.github.com/en/get-started/learning-about-github/githubs-plans",
      "date": "Checked October 10, 2026",
      "claim": "GitHub Free still includes unlimited public and private repositories and collaborators for personal accounts and organizations, with limited private-repository features.",
      "scope": "Repository count is not unlimited file storage, build time, premium controls or permanent policy. Classroom shutdown is separate. This counterexample prevents an unsupported claim that free repository hosting universally disappeared.",
      "quality": "Primary provider / institutional source",
      "rechecked_at": "2026-10-19"
    },
    "gitlabedu": {
      "title": "GitLab for Education · viable institutional bridge",
      "url": "https://about.gitlab.com/solutions/education/join/",
      "date": "Checked October 10, 2026",
      "claim": "Qualifying institutions can apply for free Ultimate licenses with unlimited seats, for instruction and non-commercial academic research. Licenses last one year with annual renewal and community support.",
      "scope": "Full-time faculty/staff apply; students do not receive direct institutional licenses. Administrative IT operations are excluded. Eligibility and renewal are conditional; this task verified neither a UArizona license nor an application or deployment.",
      "quality": "Primary provider / institutional source"
    },
    "repobackup": {
      "title": "Repository recovery · code and related records",
      "url": "https://docs.github.com/en/repositories/archiving-a-github-repository/backing-up-a-repository",
      "date": "Checked October 10, 2026",
      "claim": "A Git mirror clone preserves revision history; Git LFS objects must also be fetched. Wikis and selected metadata require additional export paths.",
      "scope": "A Git clone is not a complete course-system backup. Migration archives omit some data and have no documented supported GitHub restore. The proposed service must test its own restore path for LFS, issues, permissions, artifacts and assessment links.",
      "quality": "Primary provider / institutional source"
    },
    "forgemirror": {
      "title": "Forgejo · candidate managed mirror service",
      "url": "https://forgejo.org/docs/latest/user/repo-mirror/",
      "date": "Checked October 10, 2026",
      "claim": "Forgejo documents pull and push mirroring of commits, branches and tags, supporting a proposed managed Git continuity layer.",
      "scope": "A mirror is not an independent backup: deletions can propagate. LFS and non-Git records need separate handling. Hosting, authentication, patching, support and storage cost staff time; no campus installation or capacity has been verified.",
      "quality": "Primary provider / institutional source"
    },
    "redata": {
      "title": "UArizona Libraries · archival code and data",
      "url": "https://lib.arizona.edu/research/data/data-management/best-practices/sharing",
      "date": "Checked October 10, 2026",
      "claim": "Libraries recommend a trusted data repository, such as ReDATA, for citable publicly releasable code/data, while retaining an offline copy. ReDATA integrates with GitHub.",
      "scope": "A curated research deposit is distinct from live Git hosting and private student submissions. Retention, eligibility and storage are purpose-specific; a compute allocation alone is not a durable archive.",
      "quality": "Primary provider / institutional source"
    },
    "osfprojects": {
      "title": "OSF · announced Projects withdrawal",
      "url": "https://www.cos.io/osf-changes",
      "date": "Announced in 2026; upcoming November 16, 2026 and after February 19, 2027",
      "quality": "Primary provider / institutional record",
      "claim": "OSF will stop creation of new projects and child components starting November 16, 2026. After February 19, 2027, public and private projects become read-only. Existing public projects remain accessible and citable; OSF anticipates eventual removal of private projects with 12 months advance notice.",
      "scope": "Future effective dates fall outside the five-year historical window. OSF Registries and community-run preprint workflows continue. This is withdrawal of an active collaboration/file-storage workspace, not immediate deletion of all OSF content. No private-project deletion date is established.",
      "category": "Library repositories",
      "status": "Announced upcoming withdrawal",
      "checked_at": "2026-10-10",
      "rechecked_at": "2026-10-19"
    },
    "osfpreprints": {
      "title": "OSF · generalist preprint suspension",
      "url": "https://www.cos.io/blog/update-on-future-of-osf-preprints",
      "date": "October 16, 2025 update",
      "quality": "Primary provider / institutional record",
      "claim": "COS made the suspension of new submissions to its generalist preprint server indefinite. Existing preprints remain accessible and can be revised. Community-led services such as SocArXiv and PsyArXiv continue.",
      "scope": "Loss of a generalist submission route, not shutdown of every OSF preprint service or loss of existing papers.",
      "category": "Library repositories",
      "status": "Submission route withdrawn",
      "checked_at": "2026-10-10"
    },
    "osfpreprintstart": {
      "title": "OSF · start of generalist submission suspension",
      "url": "https://help.osf.io/article/687-osf-preprints-suspension",
      "date": "Effective August 25, 2025",
      "quality": "Primary provider / institutional record",
      "claim": "The generalist OSF Preprints server suspended new submissions on August 25, 2025. Existing content and revisions continued; community-run servers were excluded.",
      "scope": "August and October notices are stages of one withdrawal, not two separate lost repositories.",
      "category": "Library repositories",
      "status": "Submission route withdrawn",
      "checked_at": "2026-10-10"
    },
    "dryadfees": {
      "title": "Dryad · size-based publishing charges",
      "url": "https://datadryad.org/help/requirements/costs",
      "date": "Fee schedule effective May 6, 2025; vouchers no longer accepted from June 2024",
      "quality": "Primary provider / institutional record",
      "claim": "Unsponsored publishing charges are $150 up to 5 GB, $180 up to 10 GB and $520 up to 50 GB. Partner sponsorship covers submissions up to 10 GB; larger submissions incur additional charges under the partner agreement. Any author may request a waiver, but submissions over 10 GB are excluded from waivers.",
      "scope": "A changed funding model and size boundary, not a universal transition from free to paid. Sponsorship and waiver eligibility must be verified for the actual author, journal and institution; no UArizona sponsorship is assumed.",
      "category": "Library repositories",
      "status": "Changed publishing costs",
      "checked_at": "2026-10-10"
    },
    "figsharelimits": {
      "title": "Figshare · current free-account limits",
      "url": "https://info.figshare.com/user-guide/account-limits/",
      "date": "Checked October 10, 2026; no reduction date established",
      "quality": "Primary provider / institutional record",
      "claim": "Free figshare.com accounts provide 20 GB of private storage, a 20 GB individual-file limit and a 500-item account limit. Institutional settings may differ; larger publication needs may require Figshare Plus.",
      "scope": "Current capacity limits, not evidence of a recent cut or closure. Public scholarly publication and private collaboration are different uses.",
      "category": "Library repositories",
      "status": "Existing limit",
      "checked_at": "2026-10-10"
    },
    "zenodoquota": {
      "title": "Zenodo · current storage quota",
      "url": "https://help.zenodo.org/docs/deposit/manage-quota/",
      "date": "Checked October 10, 2026; no reduction date established",
      "quality": "Primary provider / institutional record",
      "claim": "Zenodo documents a default 50 GB quota per record and an additional 150 GB allowance distributable across uploads. Its quota page permits multiple records below the default limit.",
      "scope": "An available research-publication route with limits, not evidence of withdrawal. Appropriate research content, record organization, permissions and preservation needs still matter; this is not private course database hosting.",
      "category": "Library repositories",
      "status": "Surviving free route",
      "checked_at": "2026-10-10"
    },
    "omekafree": {
      "title": "Omeka.net · free collection hosting",
      "url": "https://info.omeka.net/signup/",
      "date": "Checked October 10, 2026; no reduction date established",
      "quality": "Primary provider / institutional record",
      "claim": "The free hosted plan includes one site, 500 MB of storage and a limited set of themes and plugins. Larger plans are paid.",
      "scope": "Useful for a small digital-collection or exhibition exercise. Large scans, audio and video can exceed the quota. No recent free-plan reduction was verified; self-hosted Omeka has separate operating costs.",
      "category": "Library repositories",
      "status": "Existing limit",
      "checked_at": "2026-10-10"
    },
    "redataavailability": {
      "title": "UArizona ReDATA · availability warning",
      "url": "https://lib.arizona.edu/research/data/redata",
      "date": "Warning dated January 6, 2026; checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "UArizona Libraries warns of intermittent latency and request errors due to high-volume automated traffic, including forced logouts, occasional saving difficulties and temporary restrictions on automated downloads. ReDATA remains the official public research-materials repository with curated deposits and DOIs.",
      "scope": "An availability/automation incident, not a storage-account cut, repository closure or security breach. A current posted warning does not prove uninterrupted failure since January.",
      "category": "Library repositories",
      "status": "Availability warning",
      "checked_at": "2026-10-10"
    },
    "campusrepository": {
      "title": "UArizona · Campus Repository remains free",
      "url": "https://lib.arizona.edu/research/share/campus-repository",
      "date": "Checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "The Campus Repository is free to campus and provides public access to scholarly publications, presentations, reports, theses, dissertations and related materials. Faculty, researchers and departments can establish collections with Libraries.",
      "scope": "A surviving institutional route. Public deposit requires suitable rights and content; this is not a private assignment-submission system or live application backend. No recent reduction was verified.",
      "category": "Library repositories",
      "status": "Surviving campus route",
      "checked_at": "2026-10-10",
      "rechecked_at": "2026-10-19"
    },
    "googlepool": {
      "title": "Google Workspace Education · pooled storage",
      "url": "https://support.google.com/a/answer/10403871",
      "date": "Policy effective July 2022",
      "quality": "Primary provider / institutional record",
      "claim": "Google moved education subscriptions to pooled storage in July 2022, with a baseline 100 TB shared across users and accounts, including Drive, Gmail and Photos. Additional capacity and institutional allocation settings depend on the subscription.",
      "scope": "A working-storage policy change affecting preparation and collaboration around repositories. It is not a claim that a library repository lost 100 TB or that UArizona currently has this baseline quota.",
      "category": "Working storage",
      "status": "Institutional storage policy change",
      "checked_at": "2026-10-10"
    },
    "microsoftpool": {
      "title": "Microsoft Education · pooled storage and A1 cap",
      "url": "https://www.microsoft.com/en-us/education/products/microsoft-365-storage-options",
      "date": "A1 cap: February 1, 2024; pooled-storage rollout: contract renewal no earlier than August 1, 2024",
      "quality": "Primary provider / institutional record",
      "claim": "Free Office 365 A1 users are capped at 100 GB of OneDrive storage. Education tenants receive 100 TB baseline pooled storage across OneDrive, SharePoint and Exchange, plus capacity for eligible paid licenses and purchased storage. Administrators may assign lower A1 limits.",
      "scope": "The A1 cap does not apply identically to every education license. The institutional pool and any account quota depend on the actual contract. Working storage is not curated long-term repository stewardship.",
      "category": "Working storage",
      "status": "Free-plan storage restriction",
      "checked_at": "2026-10-10"
    },
    "dspacefree": {
      "title": "DSpace · software and export capabilities",
      "url": "https://wiki.lyrasis.org/spaces/DSPACE/pages/19006250/User+FAQ",
      "date": "FAQ updated April 10, 2023; checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "DSpace is freely available under an open-source BSD license. It supports institutional digital objects and export/import of content and metadata through documented formats.",
      "scope": "Free software does not supply free hosting, staff or durable storage. No DSpace free-account reduction was verified. Export formats and restores must be tested against the deployed version.",
      "category": "Preservation",
      "status": "Operating dependency",
      "checked_at": "2026-10-10"
    },
    "preservationhosting": {
      "title": "Lyrasis · managed repository and preservation hosting",
      "url": "https://lyrasis.org/hosting/",
      "date": "Checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Lyrasis offers managed ArchivesSpace, CollectionSpace, DSpaceDirect and DuraCloud Preserve hosting. Its subscription model funds hosting support and the open-source communities behind these services.",
      "scope": "Evidence of an operating and stewardship cost, not a dated reduction in a previously free hosting entitlement. No campus subscription or service availability was verified.",
      "category": "Preservation",
      "status": "Operating dependency",
      "checked_at": "2026-10-10"
    },
    "planetscalehobby": {
      "title": "PlanetScale · free Hobby retired",
      "url": "https://planetscale.com/changelog/hobby-deprecated",
      "date": "New Hobby creation stopped March 6, 2024; retirement April 8, 2024",
      "quality": "Primary provider / institutional record",
      "claim": "PlanetScale retired Hobby on April 8, 2024 and put remaining Hobby databases to sleep. Users needed to upgrade or wake their database for a 24-hour export window.",
      "scope": "Loss of the former free database plan, not closure of PlanetScale or all its paid databases. No perpetual ability to recover an old database is promised.",
      "category": "Databases",
      "status": "Free tier withdrawn",
      "checked_at": "2026-10-10"
    },
    "renderexpiry": {
      "title": "Render · free Postgres shortened",
      "url": "https://render.com/changelog/free-postgresql-instances-now-expire-after-30-days-previously-90",
      "date": "Effective May 20, 2024 for newly created free databases",
      "quality": "Primary provider / institutional record",
      "claim": "New free Render PostgreSQL databases expire after 30 days, down from 90. Databases created before the change retained their original expiry date. A 14-day upgrade grace period follows expiry before deletion.",
      "scope": "An explicit duration reduction affecting new free databases. A 30-day database cannot cover a normal semester without migration or paid continuation. It does not establish that free web hosting ended.",
      "category": "Databases",
      "status": "Free lifetime reduced",
      "checked_at": "2026-10-10",
      "rechecked_at": "2026-10-19"
    },
    "renderfree": {
      "title": "Render · current free hosting and database limits",
      "url": "https://render.com/docs/free",
      "date": "Checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Free web services spin down after 15 minutes without inbound traffic and share 750 running instance-hours per workspace per month. Their filesystem is ephemeral. Free Postgres has 1 GB storage, one active database per workspace, 30-day expiry and no provider backups. Free Key Value is in-memory and loses data on restart.",
      "scope": "Current limits must be separated from the dated Postgres reduction. Persistent assessment data must not live solely on a web filesystem or free in-memory store. Quota exhaustion can suspend services; bandwidth/build overages depend on payment and spend settings.",
      "category": "Hosting and databases",
      "status": "Existing limit",
      "checked_at": "2026-10-10"
    },
    "elephantsql": {
      "title": "ElephantSQL · service end of life and deletion",
      "url": "https://www.elephantsql.com/eol.html",
      "date": "No new signups May 1, 2024; EOL January 27, 2025; blackout February 28, 2025",
      "quality": "Primary provider / institutional record",
      "claim": "ElephantSQL stopped new signups, reached EOL January 27, 2025, then entered a staged brownout. Its customer timeline sets February 28, 2025 as final termination and deletion of all data.",
      "scope": "Full service withdrawal affecting free and paid usage. January 27 is not the final deletion date; the staged dates must not be collapsed. PostgreSQL elsewhere remains available.",
      "category": "Databases",
      "status": "Service shutdown",
      "checked_at": "2026-10-10"
    },
    "faunaeol": {
      "title": "Fauna · service shutdown and account deletion",
      "url": "https://docs.fauna.com/fauna/current/eol-faq/",
      "date": "Effective May 30, 2025, noon Pacific",
      "quality": "Historical provider FAQ read through indexed copy; live status corroborates shutdown",
      "claim": "Fauna announced shutdown of the managed database service at noon Pacific on May 30, 2025. Customers had to migrate applications and export data; the FAQ stated accounts and associated data would be permanently deleted afterward.",
      "scope": "Historical provider FAQ read through Exa’s indexed copy; its original URL no longer resolves on a direct check. The separate live provider status record confirms shutdown. This was a full managed-service withdrawal, including Free, not merely a plan cut; announced deletion was not independently audited.",
      "category": "Databases",
      "status": "Service shutdown",
      "checked_at": "2026-10-10",
      "link_label": "Historical provider FAQ (currently unavailable)"
    },
    "faunastatus": {
      "title": "Fauna · shutdown confirmed by service status",
      "url": "https://fauna.statuspage.io/",
      "date": "May 30, 2025, 12:02 Pacific update",
      "quality": "Primary provider / institutional record",
      "claim": "The provider status page confirmed the service was shut down on May 30, 2025. Its preceding notices said unmigrated applications would cease functioning and no extension was available.",
      "scope": "Corroborates the effective shutdown instead of treating an announcement alone as execution.",
      "category": "Databases",
      "status": "Shutdown confirmation",
      "checked_at": "2026-10-10"
    },
    "flylegacy": {
      "title": "Fly.io · legacy allowances retained for old organizations",
      "url": "https://docs.fly.io/about/discontinued-plans",
      "date": "Plans deprecated October 7, 2024; checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Fly.io discontinued its old plans for new customers and retained their included free allowances for eligible existing organizations. Those allowances included up to three 256 MB shared-CPU VMs and 3 GB persistent volumes. Existing Legacy Free Hobby has no subscription fee, subject to its terms.",
      "scope": "The October date is the documented discontinued-plan boundary, not proof that every new user had free Hobby until that day. Older changes had already introduced paid Hobby. Do not claim all legacy allowances were revoked.",
      "category": "Hosting",
      "status": "New-customer access boundary",
      "checked_at": "2026-10-10"
    },
    "flycurrent": {
      "title": "Fly.io · current new-account trial",
      "url": "https://docs.fly.io/about/pricing",
      "date": "Checked October 10, 2026; current trial effective date not established",
      "quality": "Primary provider / institutional record",
      "claim": "New organizations have no recurring free hosting tier or monthly free compute allowance. A card-free trial lasts at most two hours of Machine runtime or seven days, whichever comes first; continued billable resources require a card. Some ancillary allowances remain free.",
      "scope": "A current trial is not semester infrastructure. Eligible legacy organizations retain documented allowances; this is not a provider shutdown or evidence that every resource is charged.",
      "category": "Hosting",
      "status": "Existing access limit",
      "checked_at": "2026-10-10"
    },
    "railway2023": {
      "title": "Railway · original recurring credits withdrawn",
      "url": "https://blog.railway.com/p/pricing-and-plans-migration-guide-2023",
      "date": "Announced June 2, 2023; rollout July 3–August 1, 2023",
      "quality": "Primary provider / institutional record",
      "claim": "Railway replaced its former recurring $5 monthly Starter credits with a one-time $5 trial grant and introduced a $5/month Hobby subscription with included usage. Some qualified existing users received subscription-fee waivers.",
      "scope": "Historical change, not the current entire product. Railway now documents a smaller recurring Free plan; do not claim it has no free tier today.",
      "category": "Hosting and databases",
      "status": "Recurring allowance withdrawn",
      "checked_at": "2026-10-10"
    },
    "railwayfree": {
      "title": "Railway · current smaller Free plan",
      "url": "https://docs.railway.com/pricing/plans",
      "date": "Checked October 10, 2026; reintroduction date not established",
      "quality": "Primary provider / institutional record",
      "claim": "Railway now offers Free at $0/month with $1 monthly usage credit for small apps, alongside a one-time $5 trial and paid Hobby/Pro. Hobby is $5/month even when resource use is lower than its included $5.",
      "scope": "A counterexample to permanent disappearance of all free usage. A dollar of metered usage is not a promised number of class hours, persistent database capacity or guaranteed course availability. Billing and data-retention terms need checking before deployment.",
      "category": "Hosting and databases",
      "status": "Surviving smaller free route",
      "checked_at": "2026-10-10"
    },
    "cyclicshutdown": {
      "title": "Cyclic · hosting shutdown",
      "url": "https://kamlasater.com/blog/cyclic-is-shutting-down/",
      "date": "Announced April 26, 2024; free usage shutdown began May 10; all usage May 31, 2024",
      "quality": "Dated provider notice preserved by its author; original provider URL has a certificate error",
      "claim": "Cyclic disabled new signups immediately and announced it would begin turning off free-tier usage May 10, 2024 and all usage May 31. The provider attributed closure to insufficient sales to sustain the service.",
      "scope": "A general application-hosting shutdown, not an education-account policy. The original provider URL now fails certificate verification; the same dated notice remains on its author’s site. Dates describe the announced staged turn-off; no individual student deployment or data-deletion outcome was inspected.",
      "category": "Hosting",
      "status": "Service shutdown",
      "checked_at": "2026-10-10"
    },
    "netlifycredits": {
      "title": "Netlify · new-account credit model",
      "url": "https://docs.netlify.com/manage/accounts-and-billing/billing/billing-for-credit-based-plans/how-credits-work",
      "date": "New accounts from September 4, 2025; checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "New accounts use credit-based plans. Free receives 300 credits per month with a hard limit; when credits run out, all web projects on the account pause. Existing eligible pre-September 4, 2025 accounts can retain legacy plans.",
      "scope": "A changed quota model, not a universal removal of free hosting or a measured capacity reduction for every workload. Credit consumption depends on deploys, compute and traffic; old allowances must not be compared with credits as interchangeable units.",
      "category": "Hosting",
      "status": "Quota-model change",
      "checked_at": "2026-10-10"
    },
    "firebasebilling": {
      "title": "Firebase Cloud Storage · billing required",
      "url": "https://firebase.google.com/docs/storage/faqs-storage-changes-announced-sept-2024",
      "date": "Announced September 2024; existing-bucket access requirement from February 3, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Cloud Storage for Firebase requires a Blaze pay-as-you-go project linked to Cloud Billing, including access to legacy default buckets from February 3, 2026. Without upgrade, users lose read/write and console access; existing bucket data remains. No-cost usage still exists on Blaze.",
      "scope": "Object/file storage, not Firestore database or Firebase Hosting shutdown. Loss of a billing-free access path is different from all usage becoming paid. This current FAQ supersedes older documentation carrying earlier planned deadlines.",
      "category": "Object storage",
      "status": "Billing-account requirement",
      "checked_at": "2026-10-10"
    },
    "cloudflarepages": {
      "title": "Cloudflare Pages · free static hosting limits",
      "url": "https://developers.cloudflare.com/pages/platform/limits/",
      "date": "Checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Free Pages sites can contain up to 20,000 files with a maximum 25 MiB per asset. Pages Functions consume Workers quota and have separate execution constraints.",
      "scope": "A surviving route for static exhibits and course sites; static hosting does not itself supply a database, general persistent server or archival storage. No recent reduction is claimed.",
      "category": "Current free options",
      "status": "Surviving free route",
      "checked_at": "2026-10-10"
    },
    "cloudflareworkers": {
      "title": "Cloudflare Workers · free execution limits",
      "url": "https://developers.cloudflare.com/workers/platform/limits/",
      "date": "Checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Workers Free provides 100,000 requests per day and a 10 ms CPU-time limit per invocation. Exceeding the daily quota can return an error. Static-asset requests and other product quotas have separate rules.",
      "scope": "Suitable for lightweight APIs and request handling within limits, not long CPU analyses or arbitrary always-on application servers. CPU time is not elapsed request time.",
      "category": "Current free options",
      "status": "Existing limit",
      "checked_at": "2026-10-10"
    },
    "d1limits": {
      "title": "Cloudflare D1 · free database limits",
      "url": "https://developers.cloudflare.com/d1/platform/limits/",
      "date": "Documentation updated April 21, 2026; checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "D1 Free supports ten databases per account, 500 MB per database, 5 GB aggregate storage and seven days of Time Travel recovery.",
      "scope": "Small SQLite-style web databases. SQL dialect, API, per-query limits and platform integration differ from PostgreSQL/MySQL and are not a drop-in replacement for every database course. Recovery windows do not replace independent exports.",
      "category": "Current free options",
      "status": "Existing limit",
      "checked_at": "2026-10-10"
    },
    "d1pricing": {
      "title": "Cloudflare D1 · free daily query allowance",
      "url": "https://developers.cloudflare.com/d1/platform/pricing/",
      "date": "Documentation updated April 21, 2026; checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Workers Free includes five million rows read per day and 100,000 rows written per day for D1, with 5 GB total database storage. Rows scanned count even if a query returns fewer rows.",
      "scope": "Allowance units are rows, not SQL requests or students. Full-table scans can exhaust a class budget faster than indexed queries. No recent cut was verified.",
      "category": "Current free options",
      "status": "Existing limit",
      "checked_at": "2026-10-10"
    },
    "neonfree": {
      "title": "Neon · current free Postgres plan",
      "url": "https://neon.com/docs/introduction/plans",
      "date": "Direct live provider page checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "The live plan table provides 100 projects, 100 CU-hours per project monthly, 1 GB storage per project and 20 GB aggregate account storage. Free compute scales to zero after five idle minutes; recovery history is limited to six hours and a data-change allowance.",
      "scope": "A viable small PostgreSQL teaching route with a compute and storage ceiling, not guaranteed always-on capacity. An indexed older free-tier URL returned 0.5 GB, but direct live retrieval of both URLs confirmed 1 GB and the 20 GB total. Recheck the actual account before class; a short history window is not semester backup.",
      "category": "Current free options",
      "status": "Surviving free route",
      "checked_at": "2026-10-10"
    },
    "neonpricing": {
      "title": "Neon · current free plan pricing corroboration",
      "url": "https://neon.com/pricing",
      "date": "Checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Neon lists Free at $0, 100 CU-hours per project and 1 GB database storage per project, with scale to zero. Paid plans meter usage separately.",
      "scope": "Corroborates the current per-project allowance. Use the plan documentation for the 20 GB aggregate account boundary. Do not use a cached older quota as evidence of a new reduction.",
      "category": "Current free options",
      "status": "Surviving free route",
      "checked_at": "2026-10-10"
    },
    "supabasefree": {
      "title": "Supabase · current free backend plan",
      "url": "https://supabase.com/pricing",
      "date": "Checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Free includes a 500 MB database per project, 1 GB file storage and two active projects. Free projects pause after one week of inactivity; other API, egress, authentication and function limits apply.",
      "scope": "Useful for small course apps that teach PostgreSQL, auth and backend APIs. Shared organization quotas and inactivity pauses constrain full-class provision and between-term continuity. No recent database free-tier removal is established.",
      "category": "Current free options",
      "status": "Surviving free route",
      "checked_at": "2026-10-10"
    },
    "supabasebackups": {
      "title": "Supabase · free backups and file-storage boundary",
      "url": "https://supabase.com/docs/guides/platform/backups",
      "date": "Checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Automatic daily backups are documented for Pro, Team and Enterprise. Supabase recommends regular database exports and off-site backups for Free projects. Database backups exclude the actual objects stored through the Storage API.",
      "scope": "A database dump does not preserve uploaded images, documents or media; export objects separately. No hosted backup or restoration was performed in this research.",
      "category": "Current free options",
      "status": "Recovery boundary",
      "checked_at": "2026-10-10"
    },
    "mongofree": {
      "title": "MongoDB Atlas · current free document database",
      "url": "https://www.mongodb.com/docs/atlas/reference/free-shared-limitations/",
      "date": "Checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Atlas Free supports one cluster per project and 0.5 GB of data plus indexes. It has no managed backups, limits operations and connections, and automatically pauses after 30 days with no connections. MongoDB documents manual dump/restore as an alternative.",
      "scope": "Suitable for small document-database exercises, not sharding, full administration, realistic high-load benchmarks or durable records without separate recovery. Free remains available; no recent withdrawal is claimed.",
      "category": "Current free options",
      "status": "Surviving free route",
      "checked_at": "2026-10-10"
    },
    "vercelhobby": {
      "title": "Vercel · personal Hobby hosting limits",
      "url": "https://vercel.com/docs/plans/hobby",
      "date": "Checked October 10, 2026",
      "quality": "Primary provider / institutional record",
      "claim": "Hobby remains free for personal, non-commercial use. It lacks paid team collaboration and has resource quotas; exceeding most allowances requires waiting up to 30 days. Functions and platform services have execution limits.",
      "scope": "Suitable for eligible personal student demos; an institution-wide course service or team deployment cannot be assumed eligible under personal-use terms. No recent free-plan withdrawal was verified.",
      "category": "Current free options",
      "status": "Eligibility and quota boundary",
      "checked_at": "2026-10-10"
    },
    "codabench": {
      "title": "Codabench · free benchmark hosting and bounded CPU scoring",
      "url": "https://www.codabench.org/",
      "claim": "The public instance allows free participation and competition hosting. Its current announcement provides a shared default CPU queue for small jobs, typically result submissions, capped at 20 minutes per job. Organizers are expected to supply their own queue for code submissions.",
      "scope": "This is the service intended by the user, correcting the earlier CUDA benchmark-suite identification. It is a benchmark/evaluation service, not a general GPU notebook entitlement. Shared-queue capacity, storage and class concurrency were not reserved or tested. Exa/web extracted unrelated text for the homepage; direct live HTML returned the actual Codabench announcement and is saved locally. No security incident is inferred from that extraction anomaly.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "codabenchworkers": {
      "title": "Codabench · organizer-supplied CPU / GPU workers",
      "url": "https://docs.codabench.org/latest/Organizers/Running_a_benchmark/Compute-Worker-Management---Setup/",
      "claim": "Organizers can attach physical or virtual machines as compute workers. CPU and GPU worker setup is documented; GPU workers require suitable hardware, NVIDIA support and a compatible competition image.",
      "scope": "GPU support is an integration capability, not a free GPU allocation. Hosting, worker operations, data, isolation and resource limits need separately funded/approved compute. An ACCESS-backed queue is a proposed design, subject to resource, networking and container policies.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "codabenchqueues": {
      "title": "Codabench · shared and dedicated queues",
      "url": "https://docs.codabench.org/latest/Organizers/Running_a_benchmark/Queue-Management/",
      "claim": "Queues dispatch submissions between competitions and internal/external workers. Organizers can create queues, control public access and add collaborators; multiple workers can serve a queue.",
      "scope": "A queue does not create CPU/GPU capacity. Class concurrency and deadline bursts require a tested worker pool. Protect broker credentials and use an appropriately isolated submission environment.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "codabenchmigration": {
      "title": "Codabench · CodaLab migration boundaries",
      "url": "https://docs.codabench.org/latest/Organizers/Benchmark_Creation/How-to-transition-from-CodaLab-to-Codabench/",
      "claim": "Codabench is the maintained successor to CodaLab Competitions. Sign-up is free; old competition bundles are compatible. Migration requires a new account and export/re-upload of the competition bundle. Leaderboard results do not transfer automatically; submissions must be re-submitted.",
      "scope": "Compatible software is not complete preservation of course history. Export submissions, results and grading records independently; do not promise recovery from an already phased-out service.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "codalabsunset": {
      "title": "CodaLab Competitions · phased out in 2025",
      "url": "https://docs.codabench.org/latest/Newsletters_Archive/CodaLab-in-2025/",
      "claim": "The project’s 2025 retrospective states that CodaLab Competitions and its main servers were phased out at the end of 2025 and development/community activity moved to Codabench.",
      "scope": "A confirmed project-reported platform transition, not disappearance of all free benchmarking. No exact final day or deletion of every archive is established. CodaLab Worksheets is a separate service and is not covered by this finding.",
      "date": "End of 2025; project retrospective checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "kagglecommunity": {
      "title": "Kaggle · no-cost Community Competitions",
      "url": "https://www.kaggle.com/c/about/community",
      "claim": "Kaggle offers self-service Community Competitions with no cost to hosts or participants, dataset hosting, live leaderboards and automated prediction scoring. Educators are explicitly eligible to host.",
      "scope": "Competition scoring is not an allocation for arbitrary training or sustained GPU work. Participants develop locally or in separately quota-limited notebooks. Community hosting has no hands-on support; featured/managed competitions have different terms.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "kagglesetup": {
      "title": "Kaggle · competition access and notebook limits",
      "url": "https://www.kaggle.com/docs/competitions-setup",
      "claim": "Prediction competitions score answer files; hackathon competitions use judges for open-ended work. Hosts can select public/private visibility and link or email-based access. Restricted-email competitions disable notebooks by default to prevent data leaks.",
      "scope": "Invite/private settings must be rehearsed. Do not assume a locked class competition also supplies usable notebook GPUs. A leaderboard score is not a complete course assessment; use approved data and follow account rules.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "evalaipricing": {
      "title": "EvalAI · paid hosted challenge plans",
      "url": "https://evalai.readthedocs.io/en/latest/01-getting-started/pricing.html",
      "claim": "Current hosted plans are monthly subscriptions: Essentials $125, Core $250, Advanced $850, and Remote Evaluation $100 with organizer-supplied compute. Hosted worker plans include one concurrent evaluation; extra workers are billed separately.",
      "scope": "A functional analogue to Codabench, but not a verified free hosted classroom route. Remote evaluation still carries a hosting fee and compute costs. No historical free-tier withdrawal date is established; these are current prices, not a new dated loss.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "evalaisource": {
      "title": "EvalAI · open-source self-hosting",
      "url": "https://github.com/Cloud-CV/EvalAI",
      "claim": "The official open-source project supports customized challenge evaluation, remote workers and local Docker deployment.",
      "scope": "Open-source availability does not provide free operated hosting or GPUs. A self-hosted pilot needs an operator, service host, storage, worker isolation, backups and actual license/deployment review.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "binder": {
      "title": "Binder · free ephemeral teaching notebooks",
      "url": "https://mybinder.readthedocs.io/en/latest/about/user-guidelines.html",
      "claim": "mybinder.org provides at least 1 GB RAM, up to 2 GB; exceeding 2 GB restarts the kernel. Sessions shut down after ten idle minutes and aim for up to six hours or one CPU-hour of intensive work. The default per-repository concurrent-user cap is 100; larger events can request an increase without a guarantee.",
      "scope": "Useful for short reproducible Python/R demonstrations and small-data workshops; not persistent files, reserved capacity, a GPU entitlement, long training or controlled-data teaching. Download work before the session ends. A funded BinderHub/JupyterHub is the capacity route if this is insufficient.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "lightningpricing": {
      "title": "Lightning AI · current introductory credits and restart boundary",
      "url": "https://lightning.ai/pricing/",
      "claim": "The live rendered Free plan provides one active free Studio with four-hour restarts. The FAQ offers five introductory credits at registration and 25 more after adding a card, expiring after 12 months. GPU-hour marketing varies by machine/rate and is not a fixed recurring monthly allowance.",
      "scope": "A conditional development/pilot route. Do not repeat older indexed claims of 15 monthly credits or promise 80 GPU hours to every student. The pricing UI warns that free Studios become paid after four hours; confirm current stopping/billing behavior and use checkpoints. No paid signup or account provisioning was performed.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "lightningbilling": {
      "title": "Lightning AI · billing and storage scope",
      "url": "https://lightning.ai/docs/platform/overview/faq/billing.md",
      "claim": "Eligible free users receive promotional credits, with eligibility, amount and expiration subject to change. One CPU Studio and the first 10 GB of Drive storage are free; other compute and storage can consume credits.",
      "scope": "No fixed recurring GPU allowance is promised by current billing terms. Academic discounts are paid. Check actual account credit expiry and the four-hour CPU session/restart boundary before class.",
      "date": "Rechecked October 16, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "zerogpu": {
      "title": "Hugging Face ZeroGPU · short shared GPU demos",
      "url": "https://huggingface.co/docs/hub/spaces-zerogpu",
      "claim": "Existing ZeroGPU Spaces can be used free. Signed-in Free users receive five GPU minutes per daily quota, resetting 24 hours after first use. Free personal accounts with verified email, older than 30 days and in good standing can host up to two ZeroGPU Spaces. Hosting supports Gradio; organization hosting requires a Team or Enterprise plan.",
      "scope": "For short inference/model-behavior demonstrations, not full notebook training, dedicated GPUs or a semester service reservation. Queue priorities vary. Larger GPU sizing consumes quota faster. This current policy supersedes older descriptions that required PRO for every personal host.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "hfspaces": {
      "title": "Hugging Face Spaces · current creation and persistence boundaries",
      "url": "https://huggingface.co/docs/hub/spaces-overview",
      "claim": "Static Spaces are free. Creating ordinary compute-backed Gradio/Docker Spaces now requires PRO for personal accounts or Team/Enterprise for organizations, except eligible personal ZeroGPU Spaces. CPU Basic has no hourly compute cost, but creation can require a paid plan. Default disk is nonpersistent, and idle free hardware sleeps.",
      "scope": "Do not describe every CPU demo host as a free account route merely because its hourly rate is zero. Static pages run on the visitor device; ZeroGPU is a special bounded exception. No effective date of a creation-policy change is established here.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "codegrade": {
      "title": "CodeGrade · bounded free classroom autograding",
      "url": "https://www.codegrade.com/landing/free",
      "claim": "The provider advertises a free tier for courses up to 50 students, without a card or expiration, including a browser code editor, automated grading, inline feedback and plagiarism detection across 175+ languages.",
      "scope": "A teaching/assessment analogue, not a GPU notebook or a proven replacement for all GitHub Classroom automation. Verify actual free-plan account scope, execution quotas, LMS features, data handling and roster growth before adoption. No UArizona integration or deployment was tested.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "chagrade": {
      "title": "ChaGrade · challenge-linked classroom workflow",
      "url": "https://chagrade.lri.fr/",
      "claim": "The project’s live page offers class creation and grading attached to challenges, individual/team homework and questions beyond challenge performance. It labels the service Work In Progress, version 0.1, and links its open-source project.",
      "scope": "A relevant adjacent workflow to inspect, not a verified production-ready free entitlement. Current support, terms, quotas and Codabench integration were not established; public signup buttons do not prove those properties. Do not promise it as the college grading baseline.",
      "date": "Checked October 11, 2026",
      "quality": "Primary provider / project documentation; current direct verification",
      "checked_at": "2026-10-11"
    },
    "fedaccess": {
      "title": "ACCESS · national resource and support federation",
      "url": "https://access-ci.org/get-started/for-ci-community/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NSF-supported ACCESS connects researchers and educators to compute, cloud, storage, gateways and support. Resource providers supply the underlying systems; access is governed by allocation and provider policies.",
      "scope": "ACCESS is an access/support program, not a single machine. Do not add provider capacity twice when counting ACCESS and Jetstream2 or other participating systems. Grants, account approval and scheduling remain separate.",
      "checked_at": "2026-10-12"
    },
    "fednairr": {
      "title": "NAIRR Classroom · AI teaching resource request",
      "url": "https://nairrpilot.org/opportunities/education-call",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "US-based instructors can request selected NAIRR Classroom resources for AI coursework or training with US-based participants, including any discipline that incorporates AI. Requests specify hardware, storage, dates and support.",
      "scope": "NSF-led cross-agency/partner ecosystem, including in-kind contributions; not every donated service is federally purchased. Instructor/TA technical support is expected. Selected resource availability and approval govern access; this is not an awarded college pilot.",
      "checked_at": "2026-10-12"
    },
    "fedosg": {
      "title": "OSG · consortium, funding and services",
      "url": "https://osg-htc.org/about/introduction/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "OSG operates distributed computing/data services across contributing institutions. Its funding page names NSF PATh and IRIS-HEP support and in-kind contributions including DOE laboratories.",
      "scope": "Open Science Grid is the consortium/ecosystem. The general-access compute pool is OSPool; OSDF is a data-delivery federation. These are distinct services, not three independent pools of the same capacity. Funding acknowledgments include dated historical context.",
      "checked_at": "2026-10-12"
    },
    "fedospool": {
      "title": "OSPool · opportunistic high-throughput capacity",
      "url": "https://osg-htc.org/services/ospool/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "US-affiliated academic, nonprofit and government research projects can request OSG access-point accounts. OSPool supports many independent CPU/GPU jobs under fair share; jobs should complete or checkpoint within 20 hours.",
      "scope": "Contributed capacity can interrupt jobs and does not reserve a whole class or finish any job at a promised time. Consult facilitators for educational projects. It is not the natural environment for interactive notebooks or tightly coupled MPI workloads.",
      "checked_at": "2026-10-12"
    },
    "fedpath": {
      "title": "PATh Facility · dedicated throughput credits",
      "url": "https://portal.path-cc.io/documentation/overview/references/PATh_vs_OSPool/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "The NSF-supported PATh Facility provides dedicated credit-based HTC capacity for NSF-funded research, including larger CPU/GPU, memory, disk and longer jobs than opportunistic OSPool work.",
      "scope": "Separate eligibility/credit process from OSPool. User-facing guarantees in the comparison concern provisioned job resources, not unlimited credits, instant start times, classroom reservations or perpetual storage. MESA funding makes consultation relevant, not automatic approval.",
      "checked_at": "2026-10-12"
    },
    "fednrp": {
      "title": "National Research Platform / Nautilus · shared services",
      "url": "https://nrp.ai/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NSF-funded NRP offers eligible US nonprofit research and education shared GPUs/CPUs, hosted notebooks, model APIs, storage and Kubernetes-hosted services. Nautilus is its underlying cluster.",
      "scope": "NRP and Nautilus are two names for one platform layer, not independent capacities. Shared scheduling, account onboarding, quotas and operations still apply. Hosted services can help teaching but are not a preservation or availability guarantee.",
      "checked_at": "2026-10-12"
    },
    "fednrpllm": {
      "title": "NRP · hosted open-weight model APIs",
      "url": "https://nrp.ai/documentation/userdocs/ai/llm-managed",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NRP documents hosted browser chat and an OpenAI-compatible API for a changing catalog of open-weight language models.",
      "scope": "Model/API access is a distinct product from a GPU training allocation. Models can be added or retired; verify current quotas, supported use and prompt/data handling before class. No account token or API call was tested.",
      "checked_at": "2026-10-12"
    },
    "fedjetstream": {
      "title": "Jetstream2 · teaching cloud through ACCESS",
      "url": "https://docs.jetstream-cloud.org/tutorial/classroom/overview/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "Jetstream2 provides documented course/workshop workflows for virtual machines, standardized environments, virtual GPUs and web applications. Its classroom guidance links instructors to ACCESS allocations.",
      "scope": "An ACCESS resource provider, not a second federal allocation program. Instance runtime has no notebook-style session cap, but allocation duration, credits, GPU availability, support and backups still bound use. Operators must size always-on services explicitly.",
      "checked_at": "2026-10-12"
    },
    "fedjetstreamfund": {
      "title": "Jetstream2 · NSF research-cloud system",
      "url": "https://docs.jetstream-cloud.org/overview/overview-doc/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "Jetstream2 is described as NSF science and engineering cloud infrastructure with CPU, GPU, memory and storage resources.",
      "scope": "Funding provenance establishes public infrastructure, not an approved allocation or a promise of a dedicated GPU per student.",
      "checked_at": "2026-10-12"
    },
    "fedcloudbank": {
      "title": "CloudBank Classroom · managed teaching environment",
      "url": "https://www.cloudbank.org/training/nairr-pilot-cloudbank-classroom",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NSF-supported CloudBank Classroom offers browser-based Python/R/C++ tools, persistent student storage and university login. US educators request it through NAIRR Classroom; the page describes one-year allocations with renewal.",
      "scope": "CloudBank brokers commercial cloud resources; it is not a vendor free tier. Approval, provider capacity, awarded budget and configuration govern access. GPU availability is not assumed. The page mixes ACCESS/NAIRR terminology; confirm the actual onboarding route with the provider.",
      "checked_at": "2026-10-12"
    },
    "fedchameleon": {
      "title": "Chameleon · funded experimental cloud testbed",
      "url": "https://chameleoncloud.org/learn/frequently-asked-questions/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NSF-funded Chameleon supports computer-science research and education using reconfigurable bare metal, VMs and specialized hardware. Approved projects receive time-limited service-unit allocations and make reservations.",
      "scope": "A systems/ML-systems experimentation route, not unrestricted production hosting. Leases, units and renewal differ by resource; current docs distinguish short GPU/bare-metal leases from longer non-GPU VM leases. Student access normally needs an eligible PI/project.",
      "checked_at": "2026-10-12"
    },
    "fedcloudlab": {
      "title": "CloudLab · classes and reservation boundaries",
      "url": "https://docs.cloudlab.us/classes.html",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "CloudLab supports class projects with isolated root-access environments and resource reservations. Nodes should be held only during active experiments; data on experiment nodes is ephemeral.",
      "scope": "Useful for systems, distributed application and network classes. Large deadline bursts can exhaust shared nodes; backups and reservations must be planned. An experiment reservation is not permission to run a semester-long production service.",
      "checked_at": "2026-10-12"
    },
    "fedcloudlabfund": {
      "title": "CloudLab · NSF-supported research facility",
      "url": "https://www.cloudlab.us/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "CloudLab identifies itself as NSF-supported infrastructure for research into the future of cloud computing.",
      "scope": "Research testbed purpose and project approval distinguish this from ordinary unlimited cloud hosting. Funding and teaching suitability do not establish resource availability on a course date.",
      "checked_at": "2026-10-12"
    },
    "fedfabric": {
      "title": "FABRIC · programmable network and edge testbed",
      "url": "https://portal.fabric-testbed.net/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider portal and indexed provider about-page content",
      "claim": "FABRIC lists NSF grants supporting distributed compute/storage connected by programmable high-speed networks for networking, distributed computing, machine learning and science experimentation.",
      "scope": "Network/edge experiments, data movement and distributed AI are its defining purpose; it is not just a generic GPU pool. Projects, resource slices and policies must fit the experiment. No course slice was reserved. The former about-page path returned 404 on the direct check; its indexed provider content was reviewed and the live portal is linked.",
      "checked_at": "2026-10-12"
    },
    "fedncar": {
      "title": "NSF NCAR · domain-specific classroom allocations",
      "url": "https://ncar-hpc-docs.readthedocs.io/en/stable/allocations/university-allocations/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NSF NCAR offers no-cost eligible Earth-system science research/instruction, including classroom/workshop allocations for US two- and four-year institutions. It documents individual accounts, compute reservations and setup lead time.",
      "scope": "A domain-specific route for environmental/geospatial data coursework, not a general all-college compute entitlement. Eligible classes need not have a separate external research award. Allocation resource limits and proportional CPU/GPU requests remain provider-specific.",
      "checked_at": "2026-10-12"
    },
    "feddoe": {
      "title": "DOE ASCR · leadership computing allocation routes",
      "url": "https://science.osti.gov/ascr/Facilities/Accessing-ASCR-Facilities/ALCC/Call-for-Proposals",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "DOE ALCC awards computing at NERSC, ALCF and OLCF through scientific/computational merit review. Universities, industry and agencies may apply; DOE sponsorship is not required for ALCC.",
      "scope": "Mission-aligned research capacity, not a routine classroom account offer. INCITE and other facility routes have different scale/eligibility. Do not treat a past cycle deadline as an open call or combine node-hours with CPU/GPU-hours without conversion.",
      "checked_at": "2026-10-12"
    },
    "fednasa": {
      "title": "NASA HEC · sponsored mission-research resources",
      "url": "https://hec.nasa.gov/request/mission_directorates.html",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NASA-supported mission research can request HEC computing through its request-management process; mission-directorate sponsorship and capacity review govern awards.",
      "scope": "Not an open general classroom pool. An allocation is computing time rather than a direct cash grant; some categories are considered case by case without a guarantee. Current request windows and eligibility must be checked.",
      "checked_at": "2026-10-12"
    },
    "fedanvil": {
      "title": "NIH NHGRI AnVIL · domain cloud-analysis platform",
      "url": "https://anvilproject.org/overview",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NHGRI AnVIL combines genomic data access, cloud analysis, notebooks, workflow tools and data-sharing components such as Terra, Dockstore, Bioconductor and Galaxy.",
      "scope": "NIH AnVIL is distinct from Purdue’s ACCESS Anvil supercomputer. Biomedical/domain and controlled-data access policies apply; the federal-funded platform does not make all execution free.",
      "checked_at": "2026-10-12"
    },
    "fedanvilcost": {
      "title": "AnVIL · execution and storage costs",
      "url": "https://anvilproject.org/learn/control-cloud-costs/understanding-cloud-costs",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "Browsing AnVIL components is free, while notebooks, workflows, storage and egress can incur commercial cloud charges.",
      "scope": "NIH STRIDES discounts, awarded credits or funded training can cover costs only under their actual terms. Historical 2021/22 credit calls are not counted as currently open free offers. Budget ownership and approved data access remain necessary.",
      "checked_at": "2026-10-12"
    },
    "fedidss": {
      "title": "NSF · six named 2026 IDSS awards",
      "url": "https://www.nsf.gov/news/nsf-announces-83m-investment-integrated-data-systems",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NSF announced $83 million in IDSS awards on July 22, 2026. Named projects are FabAID and NDP in Category I; iDLab, BRIDGE, NSDF and MESA in Category II.",
      "scope": "These are data-system investments with computing integration, not six interchangeable free GPU pools. Grant category and announced scope do not establish a user quota, production service level or open access portal. Planning awards are separate.",
      "checked_at": "2026-10-12"
    },
    "fedidssprogram": {
      "title": "NSF IDSS · program and integration remit",
      "url": "https://www.nsf.gov/funding/opportunities/idss-integrated-data-systems-services/nsf26-509/solicitation",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "Integrated Data Systems and Services funds national-scale data infrastructure: new systems, transitions/expansions to operations, and planning. It emphasizes transdisciplinary data integration with existing compute, instruments and repositories.",
      "scope": "A grant program funding service operators, not a direct end-user allocation. Operational and planning stages must stay distinct. It complements ACCESS/NAIRR rather than replacing their resource requests.",
      "checked_at": "2026-10-12"
    },
    "fedmesa": {
      "title": "MESA · published data/AI tools and portal",
      "url": "https://idss-mesa.github.io/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "MESA identifies NSF IDSS award 2632685 and presents metadata/agent tools, a DuckLake/iRODS stack, and portal applications such as JupyterLab, RStudio, VS Code and a remote desktop over national infrastructure.",
      "scope": "Public project documentation, not a hands-on acceptance test. GPU application builds do not guarantee GPU entitlement. CyVerse/TACC/ACCESS/NAIRR resources retain their own policies. No private proposal, staff plan or internal milestone is used as public service evidence.",
      "checked_at": "2026-10-12"
    },
    "fedndp": {
      "title": "NDP · data discovery and education ecosystem",
      "url": "https://nationaldataplatform.org/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "The National Data Platform describes a federated data ecosystem, educational activities and compute-ready data/AI services; its page also labels some capabilities as forthcoming.",
      "scope": "Separate the existing catalog/education activity from the funded national expansion and forthcoming features. Provider consultation is needed to establish workspace capacity, course onboarding and actual quotas; no unlimited classroom capacity is claimed.",
      "checked_at": "2026-10-12"
    },
    "fedfabaid": {
      "title": "FabAID · data services fabric",
      "url": "https://fabaid.io/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "FabAID describes an NSF-funded open service layer for federated storage, caching, discovery, transformation and workflows supporting data-intensive and AI science.",
      "scope": "Data services complement resource pools; they are not additional allocated GPU-hours or a permanent archive. Current service-specific onboarding, storage responsibility and production guarantees require confirmation.",
      "checked_at": "2026-10-12"
    },
    "fedidlab": {
      "title": "iDLab · interactive cross-site environment",
      "url": "https://idlab.onescienceplace.org/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "iDLab describes a browser layer for interactive applications, data access and workflows across ACCESS/NAIRR sites and clouds. Participating sites retain control over their systems.",
      "scope": "An interactive integration layer, not a replacement for site allocations or a long-term archive. Public architecture describes connected and planned services; validate onboarding and course readiness rather than assuming universal immediate access.",
      "checked_at": "2026-10-12"
    },
    "fedbridge": {
      "title": "BRIDGE · reusable data science workflows",
      "url": "https://bridge4science.org/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "BRIDGE describes an NSF-funded national effort built on Apache Texera for reusable datasets, workflows and models, deployable on a community’s own infrastructure or cloud.",
      "scope": "A shareable workflow platform and funded expansion, not a verified no-cost general compute subscription. Labs may need to supply deployment infrastructure, operations and allocations. Prototype and production maturity must be checked.",
      "checked_at": "2026-10-12"
    },
    "fedosn": {
      "title": "Open Storage Network · federal seed support",
      "url": "https://www.globus.org/news/nsf-funds-open-storage-network",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "The 2018 project announcement identifies NSF support for development of OSN as distributed scientific storage/data management infrastructure.",
      "scope": "Historical federal seed funding, not proof that all ongoing pods and operations are wholly federally financed. Storage supports active data movement and sharing, not automatic archival preservation.",
      "checked_at": "2026-10-12"
    },
    "fedosnaccess": {
      "title": "OSN · ACCESS storage allocation route",
      "url": "https://www.openstoragenetwork.org/get-involved/get-an-allocation/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "OSN documents independent bucket allocations through ACCESS, with a stated 10–50 TB request range, subject to location and available capacity.",
      "scope": "Storage is distinct from CPU/GPU time. Verify actual current quotas and permitted data before applying; a large bucket is not an institutional backup or perpetual preservation agreement.",
      "checked_at": "2026-10-12"
    },
    "fedosnpolicy": {
      "title": "OSN · active-data scope",
      "url": "https://www.openstoragenetwork.org/motivation/our-policy/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "OSN policy focuses on data in active use for research/education and data transfer/sharing across scientific infrastructure, explicitly distinguishing active data from archives.",
      "scope": "Long-term preservation, retention and recovery require a different stewardship agreement. Treating allocated object storage as archival permanence would overstate this service.",
      "checked_at": "2026-10-12"
    },
    "fedosdf": {
      "title": "OSDF / Pelican · distribute data to computation",
      "url": "https://osg-htc.org/services/osdf",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "OSDF, an OSG service powered by Pelican, connects data origins and caches to computing. Eligible institutions can connect stores; OSPool access points provide connected working storage and OSN allocations can be linked.",
      "scope": "A delivery/federation layer, not a second storage allocation or GPU pool. Origin policies apply; documentation says it is not appropriate for highly regulated or sensitive data such as PII/HIPAA. Backing storage and preservation must be separately supplied.",
      "checked_at": "2026-10-12"
    },
    "fedood": {
      "title": "Open OnDemand · browser access to allocated computing",
      "url": "https://openondemand.org/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "Open OnDemand provides browser-based access to remote computing and applications, reducing local installation and command-line barriers.",
      "scope": "A software/gateway product installed by operators, not free computing by itself. Users still need accounts and allocations on the backing system; desktop/visualization apps depend on site configuration.",
      "checked_at": "2026-10-12"
    },
    "fedoodfund": {
      "title": "Open OnDemand · federal-supported software development",
      "url": "https://par.nsf.gov/servlets/purl/10122554",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "The project-authored paper describes Open OnDemand and acknowledges NSF grant 1835725.",
      "scope": "Documents federal development support. This historical award is not a claim of perpetual operating funding for every campus installation.",
      "checked_at": "2026-10-12"
    },
    "fedpegasus": {
      "title": "ACCESS Pegasus / HTCondor · workflow product layer",
      "url": "https://support.access-ci.org/tools/pegasus",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "ACCESS Pegasus supports workflow construction/monitoring in notebooks, with HTCondor Annex provisioning jobs against a user’s allocated resources. Active ACCESS allocation holders have a hosted Pegasus account.",
      "scope": "Workflow and scheduling products make capacity usable but do not supply a new independent allocation. Data transfer, containers, site setup and underlying allocation expiry remain requirements; HTCondor’s broader federal-supported work is described by OSG/PATh.",
      "checked_at": "2026-10-12"
    },
    "fedcilogon": {
      "title": "CILogon · basic identity versus sustained paid operations",
      "url": "https://www.cilogon.org/subscribe",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "CILogon says NSF/DOE supported its development from 2009–2018; it transitioned to subscription-funded operations in 2019. Basic authentication remains no-charge for academic research projects, while advanced support/IAM uses paid tiers.",
      "scope": "Federally developed identity infrastructure is not wholly federally financed current operations. Login alone does not confer compute entitlement; operators may require paid service support.",
      "checked_at": "2026-10-12"
    },
    "fedglobus": {
      "title": "Globus · research transfer and subscription boundary",
      "url": "https://docs.globus.org/faq/subscriptions/",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "Globus provides free file transfer for nonprofit researchers, with subscriptions supporting operations and additional sharing/administrative features.",
      "scope": "Globus connects storage and remote workflows; it does not supply a storage allotment or universal free execution. Federal-supported ecosystem integration and historical development should not be conflated with current subscription funding.",
      "checked_at": "2026-10-12"
    },
    "fedsgx3": {
      "title": "SGX3 / SGCI · gateway expertise and operations boundary",
      "url": "https://sciencegateways.org/about",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NSF-funded SGX3 (award 2231406) provides limited gateway planning, UX, training and community services. More comprehensive development, hosting and operations are client-funded SGCI engagements.",
      "scope": "Science gateway support is an enabling service, not a universal free hosted application service. Check scope/cost of the proposed engagement and budget the backing resource separately.",
      "checked_at": "2026-10-12"
    },
    "fedccstar": {
      "title": "NSF CC* · campus/regional infrastructure funding",
      "url": "https://www.nsf.gov/funding/opportunities/cc-campus-cyberinfrastructure",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "CC* describes campus/regional networking, computing, storage/digital archives and strategy awards. Its page currently lists no upcoming due dates and says guidelines await a new publication.",
      "scope": "A funding pathway for infrastructure owners, not an open account pool or a currently verified open proposal window. Resulting campus systems have local access rules; sharing commitments and operating costs matter.",
      "checked_at": "2026-10-12"
    },
    "fedmri": {
      "title": "NSF MRI · research instrumentation funding",
      "url": "https://www.nsf.gov/funding/opportunities/mri-major-research-instrumentation-program",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "MRI supports acquisition/development of multi-user research instrumentation. Its page describes updates toward a future FY2027 opportunity after review of earlier proposals.",
      "scope": "Campus hardware/equipment funding, not instant national allocations. Computing must meet the actual instrument/solicitation criteria; university proposal limits and a current published call must be checked. No grant application is implied.",
      "checked_at": "2026-10-12"
    },
    "fedaihubs": {
      "title": "AI Infrastructure Hubs · NSF funds people, partners fund compute",
      "url": "https://www.nsf.gov/funding/opportunities/us-national-science-foundation-state-regional-artificial/nsf26-513/solicitation",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NSF’s State and Regional AI Infrastructure Hubs solicitation funds coordination, infrastructure workforce and educator/course development. Consortia must finance acquisition and operation of compute/data/AI infrastructure through their partners.",
      "scope": "A mixed-funding partnership, not NSF-provided hardware or a currently awarded regional pool. It may integrate NRP/PATh resources, but that does not remove consortium funding responsibilities.",
      "checked_at": "2026-10-12"
    },
    "fedscipe": {
      "title": "SCIPE · professional support workforce",
      "url": "https://www.nsf.gov/funding/opportunities/strengthening-cyberinfrastructure-professionals-ecosystem/506137/nsf23-521",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "SCIPE supports the integration, development and recognition of cyberinfrastructure professionals who help research communities use computational resources and services.",
      "scope": "Workforce capacity rather than end-user compute. A program page is not a confirmed open call or a staffed support promise for this college; inspect current guidelines and awarded local/regional services.",
      "checked_at": "2026-10-12"
    },
    "fedcybertraining": {
      "title": "CyberTraining · teaching and workforce development",
      "url": "https://www.nsf.gov/funding/opportunities/training-based-workforce-development-advanced",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "NSF CyberTraining supports adoption of advanced computing/data infrastructure and integration of appropriate skills into undergraduate/graduate teaching and researcher training.",
      "scope": "Funds curriculum, skills and training rather than automatically purchasing all course computing. Current competition status and grant fit need checking; no training award or educator cohort is claimed here.",
      "checked_at": "2026-10-12"
    },
    "fedcyverse": {
      "title": "CyVerse · federal funding transition and UArizona state support",
      "url": "https://cyverse.org/subscribe",
      "date": "Checked October 12, 2026",
      "quality": "Primary federal agency / provider documentation",
      "claim": "CyVerse states that core NSF award support ended in 2024. Basic offers 200 normalized compute units/year, 5 GB storage and one concurrent job; free sharing/public links ended June 3, 2025. UArizona users can receive Pro through state TRIF support.",
      "scope": "CyVerse is federally developed and used by federally funded projects, but current account subsidies are mixed; TRIF is state, not federal funding. Pro lists 25,000 units/year, 4 TB and four concurrent jobs, with GPU access by consultation. Published eligibility is not an account or whole-class provisioning test.",
      "checked_at": "2026-10-12"
    },
    "assesscloudbank": {
      "title": "CloudBank Classroom · general ACCESS teaching route",
      "url": "https://www.cloudbank.org/training/access-cloudbank-classroom",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "U.S. educators can request a managed CPU classroom through Explore ACCESS with a syllabus, roster count and course dates. The provider configures institutional login, persistent student workspaces, Python/R/C++ and notebook/RStudio/VSCode tools.",
      "scope": "This route does not state an AI-course requirement. It is distinct from AI-focused NAIRR Classroom and from general commercial-cloud dollar allocations. Per-student limits and 80-seat capacity are not published here. Its one-year renewal description needs reconciliation with ACCESS education-period policy.",
      "checked_at": "2026-10-12"
    },
    "assesscbgpu": {
      "title": "CloudBank Classroom · current GPU capacity record",
      "url": "https://operations-api.access-ci.org/wh2/cider/v1/cider_resource_id/3739/?format=html",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "The resource registry updated September 28, 2026 states that the fall 2026 GPU pilot is at capacity and additional requests will be considered beginning in 2027.",
      "scope": "Production status is not an available seat. Consideration in 2027 is not approval or guaranteed GPU availability. The registry rendered an as-of October 4 timestamp when checked; this is a documented capacity notice, not an independent real-time utilization measurement.",
      "checked_at": "2026-10-12"
    },
    "assesscbscope": {
      "title": "CloudBank Classroom · support-document scope conflict",
      "url": "https://support.access-ci.org/documentation/resources/cloudbank-classroom",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "The opening sections describe managed Classroom without batch queues; later storage/account sections describe user-created commercial-cloud storage and dollar awards.",
      "scope": "The page contains mixed service scopes. Use the dedicated provider Classroom guide for the pilot design; confirm budget, storage, account and support mechanics for the actual requested service. Do not apply all broker billing terms to the managed hub.",
      "checked_at": "2026-10-12"
    },
    "assessjetflavors": {
      "title": "Jetstream2 · exact instance accounting",
      "url": "https://docs.jetstream-cloud.org/general/instance-flavors/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "CPU m3.small has 2 vCPU, 6 GB RAM, 20 GB local root disk and costs 2 SU/hour; m3.quad has 4 vCPU/15 GB and costs 4 SU/hour; m3.2xl has 64 vCPU/250 GB and costs 64 SU/hour. GPU g3.medium has 8 vCPU/30 GB, 25% of an A100, 10 GB VRAM and costs 16 SU/hour.",
      "scope": "Published flavor rates underlie this illustrative model. Partial-GPU instance-hours are not full-GPU hours; GPU/CPU exchanges are separate. Larger/newer GPU flavors have different rates and availability. Application fit requires rehearsal.",
      "checked_at": "2026-10-12"
    },
    "assessjetcredit": {
      "title": "Jetstream2 · ACCESS credit conversion",
      "url": "https://docs.jetstream-cloud.org/general/access/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "One ACCESS credit exchanges for one Jetstream2 service unit. Resource use is charged at the chosen flavor rate; CPU, large-memory and GPU resources are distinct.",
      "scope": "This conversion is provider-specific. Do not transfer these rates to CloudBank, NRP, CyVerse or OSPool. Usage reporting can lag; monitor local consumption and maintain headroom.",
      "checked_at": "2026-10-12"
    },
    "assessjetquota": {
      "title": "Jetstream2 · concurrent resource quotas",
      "url": "https://docs.jetstream-cloud.org/general/quotas/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "Default CPU quota is 150 vCPU, 585 GB RAM and ten floating IPs; the GPU resource default is 64 vCPU, 250 GB RAM and four floating IPs. Quotas scale above resource-specific allocation thresholds and justified increases can be requested.",
      "scope": "Total credits do not guarantee concurrency. The 80-seat dedicated model needs 164 CPU vCPU with its controller; the shared-worker model needs 196. The eight fractional GPU slots use 64 GPU-resource vCPU. Verify awarded quotas, flavor availability and private networking rather than assuming eight public GPU addresses.",
      "checked_at": "2026-10-12"
    },
    "assessjetstorage": {
      "title": "Jetstream2 · storage and backup responsibility",
      "url": "https://docs.jetstream-cloud.org/general/storage/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "Jetstream2 offers attached volumes, shared filesystems and object storage; replicated storage and provider snapshots do not replace independent offsite backups.",
      "scope": "Some multi-instance shared filesystem workflows, particularly metadata-heavy/locking applications, require policy and architecture review. Independent restore, retention and deletion controls need a college owner. Persistent working storage is not archival preservation.",
      "checked_at": "2026-10-12"
    },
    "assessjetstoragecap": {
      "title": "Jetstream2 · default storage allocation",
      "url": "https://docs.jetstream-cloud.org/alloc/budgeting/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "The default Jetstream2 storage cap is 1 TB (1,000 GB); request and justify additional storage through the appropriate storage resource.",
      "scope": "The modeled student homes and shared data total 2 TB, excluding root disks, images, logs and snapshots. Credits alone do not automatically increase that storage limit.",
      "checked_at": "2026-10-12"
    },
    "assessjetexpiry": {
      "title": "Jetstream2 · expiry and overdraw lifecycle",
      "url": "https://docs.jetstream-cloud.org/general/policies/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "Expired or overdrawn allocations lose access; instances are shelved after ten days and unresolved resources are destroyed after thirty days.",
      "scope": "The grace period is a recovery window, not a funded continuation service. Schedule export, backup and renewal decisions before expiry. Do not promise permanent course servers or recoverability after destruction.",
      "checked_at": "2026-10-12"
    },
    "assessnrpedu": {
      "title": "NRP · classroom products",
      "url": "https://nrp.ai/education",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "NRP explicitly offers educators hosted or private JupyterHub, GPU resources, hosted language-model services and Coder IDEs.",
      "scope": "These are different products with different permissions, quotas and operating duties. Education availability is not a reserved GPU for each learner or a campus production service level.",
      "checked_at": "2026-10-12"
    },
    "assessnrphub": {
      "title": "NRP · hosted hub storage and login",
      "url": "https://nrp.ai/documentation/userdocs/jupyter/jupyterhub-service/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "The hosted hub uses institutional CILogon login and selectable hardware; persistent home folders initially have 5 GB, with enlargement by request.",
      "scope": "The 20 GB/student model needs an approved increase or a smaller assignment footprint. Institutional login documentation is not a verified UArizona roster/provisioning flow. This page lists NSF funding acknowledgments.",
      "checked_at": "2026-10-12"
    },
    "assessnrppolicy": {
      "title": "NRP · workload and data lifecycle",
      "url": "https://nrp.ai/documentation/userdocs/start/policies",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "Ordinary interactive pods have a six-hour maximum unless a namespace exception is approved; long-lived services need approved exceptions. NRP is not archival storage and unused volumes may be purged after six months without notification.",
      "scope": "Do not impose ordinary-pod limits on every hosted hub without confirming its exceptions. Shared GPUs have utilization requirements; idle GPU deployments are not a classroom reservation strategy. Confirm class quota, persistence, hub-specific lifecycle and data terms.",
      "checked_at": "2026-10-12"
    },
    "assessospedu": {
      "title": "OSPool · documented education access",
      "url": "https://portal.osg-htc.org/documentation/support_and_training/training/ospool_for_education/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "OSPool supports instructor-led events with guest notebooks or facilitated full accounts. Guest sessions time out after four hours and may lose files; full accounts fit multi-day/semester workflows and known rosters. An event includes a short OSG-policy introduction.",
      "scope": "Full accounts are normally disabled several days after the event; continuation needs agreement. Instructors rehearse materials first. Free throughput jobs are not reserved synchronous notebook/GPU capacity; licensed, long or multi-core workflows may be poor fits.",
      "checked_at": "2026-10-12"
    },
    "assessosppolicy": {
      "title": "OSPool · data and access-point rules",
      "url": "https://portal.osg-htc.org/documentation/overview/references/policy/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "OSG working filesystems are not backed up; users retain essential copies elsewhere. Privacy-sensitive/proprietary data may not be stored or computed on OSG-managed resources. Persistent/intensive computation belongs in submitted jobs, not access points.",
      "scope": "Use public or synthetic teaching inputs. Independent/checkpointable jobs have fair-share latency and may be interrupted. Required class deadlines need a local or other tested fallback.",
      "checked_at": "2026-10-12"
    },
    "assesspathelig": {
      "title": "PATh · affiliated-program eligibility",
      "url": "https://portal.path-cc.io/documentation/overview/account_setup/getting-started/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "PATh eligibility is tied to an accepted/active or planned/pending NSF award in listed affiliated programs; staff can provide startup credits for workflow prototyping.",
      "scope": "IDSS is not explicitly listed on the checked page. MESA funding alone does not establish eligibility; seek provider/program-officer confirmation before building a course dependency. Absence from the list is not proof of permanent exclusion.",
      "checked_at": "2026-10-12"
    },
    "assesspathcredits": {
      "title": "PATh · research-credit request",
      "url": "https://portal.path-cc.io/documentation/overview/account_setup/request-credits/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "After prototyping, full PATh credits are requested through the relevant NSF program officer using an award reference and a short technical justification of jobs, cores, memory, runtime and I/O.",
      "scope": "This is separate from general OSPool education access. No request was sent and no startup or full credits were obtained. An instructor course is not automatically covered by an existing research award.",
      "checked_at": "2026-10-12"
    },
    "assessmesaportal": {
      "title": "MESA portal · existing CyVerse account and quota",
      "url": "https://idss-mesa.github.io/docs/portal/overview/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "MESA describes an alternative portal over the user’s CyVerse data, applications and analyses; sign-in reads the existing teams and resource quotas.",
      "scope": "The portal does not create a duplicate compute allowance. Public documentation is not a signed-in entitlement or load test. Distinguish federally funded IDSS development from underlying state-funded or subscription-funded CyVerse accounts.",
      "checked_at": "2026-10-12"
    },
    "assessmesaapps": {
      "title": "MESA · application/resource selection",
      "url": "https://idss-mesa.github.io/docs/portal/applications/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "The portal documents CPU/GPU application variants, launch options and linked Discovery Environment/OSG/Tapis workflows. Its GPU application description names Nvidia A16 nodes.",
      "scope": "A GPU launch option does not prove permission, quota, class-wide capacity or access to the Jetstream2 A100 flavor modeled separately. Confirm the selected app, runtime, image and data-save behavior.",
      "checked_at": "2026-10-12"
    },
    "assessmesasave": {
      "title": "MESA · save and session lifecycle",
      "url": "https://idss-mesa.github.io/docs/portal/analyses/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "Interactive applications have a time limit that can be extended; files intended for retention belong under ~/data-store. Save & Exit retains outputs; Terminate can discard unsaved session data.",
      "scope": "Rehearse the exact app save/exit/restart/export path. The portal and Data Store are workflow/working-data services, not an independent campus backup or approved archival deposit.",
      "checked_at": "2026-10-12"
    },
    "assesscyteach": {
      "title": "CyVerse · class provisioning",
      "url": "https://learning.cyverse.org/edu/",
      "date": "Checked October 12, 2026",
      "quality": "Primary provider/program documentation",
      "claim": "Instructors can request class/workshop resources, select services, assign organizers and enroll/approve student accounts with institutional addresses. Typical first-Tuesday maintenance should be considered.",
      "scope": "The subscription page requires Pro/Commercial instructor access for workshops and mentions enrollment limits without giving a numeric limit in its current FAQ. Confirm student tiers, class limits and scheduled service windows. One instructor Pro account does not create 80 simultaneous student jobs.",
      "checked_at": "2026-10-12"
    },
    "pilotaccessprepare": {
      "title": "ACCESS · Explore request contents",
      "url": "https://allocations.access-ci.org/prepare-requests",
      "date": "Checked October 12, 2026",
      "quality": "Official program / institutional documentation",
      "claim": "Explore requests need a work summary, PI/co-PI CV or résumé PDFs and project metadata. CloudBank’s provider guide additionally asks for course syllabi, enrollments and dates.",
      "scope": "Use the current Explore/provider checklist, not the separate Maximize document requirements. The generated request PDF does not substitute for final syllabus or CV attachments.",
      "checked_at": "2026-10-12"
    },
    "pilotuahpcclass": {
      "title": "UArizona HPC · instruction policy",
      "url": "https://hpcdocs.hpc.arizona.edu/policies/hpc_for_instruction/",
      "date": "Checked October 12, 2026",
      "quality": "Official program / institutional documentation",
      "claim": "Campus HPC documents Puma class groups, shared faculty research/class time allocations, unpredictable queues and instructor-led student help. Consultants can assist instructors but do not provide individual support to all students.",
      "scope": "A documented local alternative, not confirmed account/time quota or reserved classroom capacity. Assess local access honestly before requesting national resources; GPU and deadline priorities are not guaranteed.",
      "checked_at": "2026-10-12"
    },
    "pilotuarental": {
      "title": "UArizona · rental storage rate and lifecycle",
      "url": "https://hpcdocs.hpc.arizona.edu/storage_and_transfers/storage/rental_storage/",
      "date": "Checked October 12, 2026",
      "quality": "Official program / institutional documentation",
      "claim": "Rental storage lists $47.35/TB/year, billed for the fiscal-year maximum without proration. It is not backed up, though nightly snapshots may allow recent-file recovery. Controlled data is excluded.",
      "scope": "The 3 TB/$142.05 example is capacity rent only, not an approved classroom backup service. Verify eligibility, billing and classification; student work/grades are not authorized for this destination by this report.",
      "checked_at": "2026-10-12"
    },
    "pilotuardas": {
      "title": "UArizona · R-DAS no-cost group storage",
      "url": "https://hpcdocs.hpc.arizona.edu/storage_and_transfers/storage/rdas_storage/",
      "date": "Checked October 12, 2026",
      "quality": "Official program / institutional documentation",
      "claim": "R-DAS provides up to 5 TB per PI group for open research data, with campus/VPN access and PI/group setup. It is separate from HPC-mounted filesystems.",
      "scope": "Potential no-cost location to verify, not a student-by-student entitlement, regulated/private-record destination or independent backup strategy. The site does not request an allocation or approve data placement.",
      "checked_at": "2026-10-12"
    },
    "pilotuatier2": {
      "title": "UArizona · Tier 2 storage billing and restore",
      "url": "https://hpcdocs.hpc.arizona.edu/storage_and_transfers/storage/tier2_storage/",
      "date": "Checked October 12, 2026",
      "quality": "Official program / institutional documentation",
      "claim": "Tier 2 lists a subsidized first TB of active data, $23/TB/month above that, subsidized transfer, and cold storage/restore stages after inactivity. It excludes controlled data and requires a PI/billing account.",
      "scope": "The $220.80 six-month comparison assumes 1.6 TB of billed active overage; actual object tiers/charges vary. Cold restores may delay access, so keep a warm independent copy. No classroom data authorization or billing setup is verified.",
      "checked_at": "2026-10-12"
    },
    "pilotualibbackup": {
      "title": "UArizona Libraries · backup and archival boundaries",
      "url": "https://lib.arizona.edu/research/data/data-management/best-practices/storage",
      "date": "Checked October 12, 2026",
      "quality": "Official program / institutional documentation",
      "claim": "Libraries distinguishes general working storage from preservation and recommends multiple copies, independent media/location, integrity checks and restore tests. Research storage destinations have data-classification limits.",
      "scope": "The pilot needs its own approved data map and retention schedule. Institutional documentation is not evidence that any pilot backup, grade export or repository deposit has succeeded.",
      "checked_at": "2026-10-12"
    },
    "pilotinfo521": {
      "title": "UArizona · INFO 521 course candidate",
      "url": "https://infosci.arizona.edu/course/info-521-introduction-machine-learning",
      "date": "Public institutional description checked October 12, 2026",
      "quality": "Institutional course description (indexed primary page)",
      "claim": "The institutional course description identifies INFO 521: Introduction to Machine Learning as a three-unit course in machine-learning methods and their application.",
      "scope": "Supports the public course title and conceptual fit only. It does not establish a future offering, enrollment, assigned instructor, syllabus approval or consent to the computing pilot. No private syllabus or intranet content is reproduced.",
      "checked_at": "2026-10-12"
    },
    "pilotlis671": {
      "title": "UArizona · LIS 671 course candidate",
      "url": "https://infosci.arizona.edu/course/lis/671",
      "date": "Public institutional description checked October 12, 2026",
      "quality": "Institutional course description (indexed primary page)",
      "claim": "The institutional course description identifies LIS 671: Digital Curation and Digital Preservation as a three-unit course addressing digital-information work in libraries, archives and records management.",
      "scope": "Supports the public course title and conceptual fit only. It does not establish a future offering, enrollment, assigned instructor, syllabus approval or consent to the computing pilot. No private syllabus or intranet content is reproduced.",
      "checked_at": "2026-10-12"
    },
    "classroom50": {
      "title": "Classroom 50: project and license",
      "url": "https://github.com/foundation50/classroom50",
      "date": "Checked October 13, 2026",
      "quality": "Primary project documentation",
      "claim": "Free, open-source assignment distribution and grading alternative to GitHub Classroom, supported by the Fifty Foundation; project license is GPL-3.0.",
      "scope": "An independently maintained successor, not a GitHub-operated replacement or an institution-owned hosted service. Documentation fit does not establish classroom adoption."
    },
    "classroom50model": {
      "title": "Classroom 50: operation and course data",
      "url": "https://github.com/foundation50/classroom50/wiki/How-Classroom-50-Works",
      "date": "Checked October 13, 2026",
      "quality": "Primary project documentation",
      "claim": "Hosted static web app or local CLI coordinates GitHub organization teams, repositories, rosters, assignments and scores; grading runs through GitHub Actions.",
      "scope": "Course state can live in our institution-controlled GitHub organization. Hosted app stewardship, GitHub service availability and local staffing remain dependencies; ACCESS integration is not demonstrated."
    },
    "classroom50requirements": {
      "title": "Classroom 50: prerequisites and education eligibility",
      "url": "https://github.com/foundation50/classroom50/wiki/Prerequisites-and-GitHub-Education",
      "date": "Checked October 13, 2026",
      "quality": "Primary project documentation",
      "claim": "Requires a GitHub Team or Enterprise organization. Verified teachers can request an education upgrade for their specific organization.",
      "scope": "Personal teacher verification does not automatically upgrade the organization. Confirm plan, enterprise OAuth policies and actual organization ownership before adoption; no paid upgrade is authorized."
    },
    "classroom50hosting": {
      "title": "Classroom 50 web app: hosting and authentication",
      "url": "https://github.com/foundation50/classroom50/blob/main/web/README.md",
      "date": "Checked October 13, 2026",
      "quality": "Primary project documentation",
      "claim": "Open-source web app can be self-hosted. Default OAuth exchange and archive proxies use a Fifty Foundation Cloudflare Worker; deployments can configure their own proxy.",
      "scope": "Self-hosting is an option, not an existing UArizona service. Authentication, proxy traffic, browser token handling, maintenance and recovery need review and available operator time."
    },
    "classroom50actions": {
      "title": "Classroom 50: managing Actions cost",
      "url": "https://github.com/foundation50/classroom50/wiki/Managing-Actions-Cost",
      "date": "Checked October 13, 2026",
      "quality": "Primary project documentation",
      "claim": "Autograding consumes GitHub Actions resources, with controls needed for workflow usage and spending.",
      "scope": "Actions quotas and charges are separate from Codespaces workspace compute; Classroom 50 adds no Codespaces entitlement. Verify actual billing ownership and spend controls before required use."
    },
    "modalpricing": {
      "title": "Modal Starter pricing and Shared Endpoints boundary",
      "url": "https://modal.com/pricing",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "$30 of compute per workspace per month on Starter; up to three seats and ten concurrent GPUs. Functions, Sandboxes and Notebooks use CPU/memory/GPU billing; Shared Endpoints tokens are excluded from included compute, effective September 1, 2026.",
      "scope": "Free subscription does not mean unlimited compute. GPU, CPU and memory share the allowance; startup/warm time, region/execution multipliers and other charges matter. Workspace concurrency is not reserved capacity or a class roster.",
      "rechecked_at": "2026-10-19"
    },
    "modalbilling": {
      "title": "Modal billing: payment method required",
      "url": "https://modal.com/docs/guide/billing",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "A payment method is required to use Modal. Usage above applicable credits and subscription fees can be automatically charged.",
      "scope": "Not a no-card classroom default for this zero-cash program. An approved institutional payment arrangement or confirmed grant exception must precede any canary; no personal or student card requirement is proposed.",
      "rechecked_at": "2026-10-19"
    },
    "modalbudgets": {
      "title": "Modal budgets and out-of-pocket spend limits",
      "url": "https://modal.com/docs/guide/budgets",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Workspace budgets cap usage before credits; a separate workspace spend limit caps net charges after credits. Without a custom spend limit, the default is the usage limit less credits. Environment budgets require Team/Enterprise.",
      "scope": "Explicitly review both limits and excluded services. A default usage limit is not a zero-out-of-pocket setting. Verify actual stop behavior and billing attribution in an authorized synthetic canary; documentation is not a tested billing guarantee."
    },
    "modalacademic": {
      "title": "Modal academic credit grants",
      "url": "https://modal.com/academics",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Modal offers an academic application route; its pricing page advertises up to $10,000 in credits for graduate students, labs and researchers.",
      "scope": "Application-based credits, not an ACCESS award, received funding, or a promised class-wide entitlement. Confirm course eligibility, seats, duration, payment requirements and allowed products in writing before counting any grant."
    },
    "beampricing": {
      "title": "Beam current plan table",
      "url": "https://www.beam.cloud/pricing",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Direct current plan table lists Developer at $20/month with $20 in credits each month and one seat; Team is $89/month plus usage. Monthly included credits expire at renewal.",
      "scope": "This is a paid subscription, not free $20 compute. The extracted page omitted the plan table; the direct HTML was checked. Earlier free-credit blog language does not establish current eligibility."
    },
    "beambilling": {
      "title": "Beam runtime and prepaid credit billing",
      "url": "https://docs.beam.cloud/v2/resources/pricing-and-billing",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Prepaid workspaces require credits to build/deploy. Active container execution, initialization and configured warm time are billed; reserved machines bill until released.",
      "scope": "Free included storage does not provide free GPU execution. Open-source Beta9/BYOC still needs a funded host and operator; no ACCESS integration or no-cost campus deployment has been demonstrated."
    },
    "beamoldoffer": {
      "title": "Beam earlier free Developer comparison (historical)",
      "url": "https://www.beam.cloud/blog/modal-pricing-explained",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "The June 27, 2026 provider comparison described a free Developer plan and $30/month of credits.",
      "scope": "Historical marketing conflicts with the current $20/month Developer plan table checked October 16. Current direct pricing takes precedence; effective change date and account grandfathering are unknown. Do not use competitor price judgments as independent evidence."
    },
    "cerebriumpricing": {
      "title": "Cerebrium Hobby subscription versus metered compute",
      "url": "https://cerebrium.ai/pricing",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Hobby has a free subscription with three seats and three deployed apps; GPU/CPU/memory remain metered. Current pricing includes the first 100 GB of storage.",
      "scope": "No recurring free GPU compute allowance was established. Earlier $30 promotional-credit copy is not a current monthly grant. No subscription fee is different from no usage charge."
    },
    "cerebriumtrial": {
      "title": "Cerebrium trial terms",
      "url": "https://cerebrium.ai/terms-of-service",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Trials are discretionary, time-limited and may require billing details; subscription billing can start at trial end if not cancelled.",
      "scope": "Do not count a possible trial as semester capacity. Confirm the actual offer, expiration and payment transition before use; no trial was activated."
    },
    "runpodbilling": {
      "title": "Runpod credit balance and storage lifecycle",
      "url": "https://docs.runpod.io/get-started/billing-information",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Runpod uses prepaid credits; a new Pod needs at least an hour of credit for its configuration. Stopped Pod storage still costs money, and depleted balances can lead to deletion.",
      "scope": "Paid comparison only; no generally available recurring free allocation was verified. Storage supports active workloads, not archival preservation. Optional promotions are not an institutional award."
    },
    "replicatebilling": {
      "title": "Replicate limited free models and billing scope",
      "url": "https://replicate.com/docs/topics/billing",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Select models can be tried without payment for a limited amount before billing is required. Public model inference is distinct from private models/deployments, whose setup, active and idle time can be billed.",
      "scope": "A short model demonstration is not a fixed monthly grant or arbitrary GPU notebook/training entitlement. No stable free allowance was established for required class work."
    },
    "hfinferencepricing": {
      "title": "Hugging Face Inference Providers: current free-account credits",
      "url": "https://huggingface.co/docs/inference-providers/pricing",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Current pricing lists no monthly Inference Providers credits for Free users; purchased credits or a paid subscription are required. Paid Pro/Team/Enterprise plans include separate credits.",
      "scope": "This is the routed inference API, not the ZeroGPU/Spaces daily allowance. Do not infer a historical withdrawal date or universal closure from this current quota. General marketing and older snippets still describe free-tier access."
    },
    "saturntry": {
      "title": "Saturn Cloud free-compute landing claim",
      "url": "https://saturncloud.io/try/",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "The accessible landing page advertises 150 hours/month with GPU access and no credit card.",
      "scope": "Do not interpret this as 150 dedicated GPU-hours. Device split, current new-account access, storage, retention and concurrency were not confirmed. The current pricing route emphasizes metered hosted resources; this remains an unverified lead."
    },
    "saturnpricing": {
      "title": "Saturn Cloud current hosted pricing",
      "url": "https://saturncloud.io/plans/saturn_cloud_plans/",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Current hosted pricing lists hourly CPU/GPU resources and storage charges, alongside contract enterprise/operator offerings.",
      "scope": "Reconcile the separate 150-hour landing claim before recommending a free class route. No signup, current free entitlement or provider reservation was tested."
    },
    "paperspacefree": {
      "title": "DigitalOcean Paperspace: free machine and storage eligibility",
      "url": "https://docs.digitalocean.com/products/paperspace/pricing/",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Free CPU and M4000 Free GPU machines are listed for the Free Gradient plan, with 5 GB included storage. Paid GPU machine types and higher subscription tiers are separate.",
      "scope": "Only explicitly free machine types qualify. Shared availability, old GPU/software compatibility, storage overages and actual account/payment setup need checking; no free seat or private class service is reserved."
    },
    "paperspacefeatures": {
      "title": "Paperspace notebook free-session duration",
      "url": "https://docs.digitalocean.com/products/paperspace/notebooks/details/features/",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Free-machine notebooks have a maximum six-hour auto-shutdown timeout.",
      "scope": "Do not apply the marketing page generic 12-hour timer to free GPUs. Work must checkpoint/export within the free machine limit; availability is not guaranteed."
    },
    "paperspacevisibility": {
      "title": "Paperspace free machines: visibility and inactivity",
      "url": "https://docs.digitalocean.com/products/paperspace/machines/details/features/",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Provider documentation says free-plan free-machine notebooks are public, one free notebook can run at a time, and a one-hour idle interval can shut it down.",
      "scope": "Use only approved public/synthetic teaching content. A private workspace account label does not mean the notebook is private. New-account provisioning and payment requirements remain untested."
    },
    "lightningstudents": {
      "title": "Lightning AI student documentation and free CPU workflow",
      "url": "https://lightning.ai/docs/platform/overview/setups/academia/students",
      "date": "Checked October 16, 2026",
      "quality": "Primary provider documentation; direct pricing/terms where available",
      "claim": "Students can start with a CPU Studio; free CPU sessions have a four-hour restart boundary. Eligible academic discounts are paid, not an unlimited free GPU grant.",
      "scope": "Read promotional GPU hours and signup-credit examples alongside billing terms: eligibility, grants and expiration can change. No new-account GPU allowance was tested; avoid promising a fixed monthly credit value."
    }
  },
  "changes": [
    {
      "year": 2022,
      "id": "heroku",
      "name": "Heroku",
      "date": "November 28, 2022",
      "kind": "Hosting",
      "title": "Free app hosting and databases end",
      "body": "Heroku withdraws free Dynos, Postgres, and Redis plans. Existing free apps and data services face shutdown or deletion.",
      "fact": "FREE PLANS → PAID PLANS",
      "scope": "General-purpose services used in teaching; not an education-only account."
    },
    {
      "year": 2022,
      "id": "gitlabrollout",
      "name": "GitLab · private teams",
      "date": "December 28, 2022 · new private groups",
      "kind": "Repositories",
      "title": "A private class group no longer fits Free",
      "body": "New private Free groups are limited to five users across the namespace. A full cohort needs another plan or a qualifying education program.",
      "fact": "PRIVATE GROUP → 5 USERS",
      "scope": "Public groups and qualifying Education/Open Source programs are exempt. This restriction rolled out in stages."
    },
    {
      "year": 2023,
      "id": "replit",
      "name": "Replit · new teams",
      "date": "November 15, 2023",
      "kind": "Classroom",
      "title": "No new Teams for Education",
      "body": "New education team creation stops. Updates and bug fixes end, leaving instructors unable to use the same setup for a new cohort.",
      "fact": "NEW CLASSROOMS BLOCKED",
      "scope": "The start of a staged withdrawal; Replit’s broader product continues."
    },
    {
      "year": 2024,
      "id": "cloudsource",
      "name": "Google source hosting",
      "date": "June 17, 2024",
      "kind": "Repositories",
      "title": "A free Git-hosting route closes to newcomers",
      "body": "Google Cloud Source Repositories stops accepting new customers. The five-user, 50 GB free route cannot onboard a new eligible organization.",
      "fact": "NO NEW CUSTOMERS",
      "scope": "Organizations already using it before the cutoff are unaffected by this access change; no existing-repository shutdown is claimed."
    },
    {
      "year": 2024,
      "id": "replit",
      "name": "Replit · removal",
      "date": "August 1, 2024",
      "kind": "Classroom",
      "title": "Teams for Education is removed",
      "body": "The education product closes and its data is deleted after an export period. Teaching materials need a new home.",
      "fact": "EDUCATION PRODUCT REMOVED",
      "scope": "This is the final stage of the withdrawal announced in 2023."
    },
    {
      "year": 2025,
      "id": "bitbucket",
      "name": "Bitbucket · storage",
      "date": "May 29, 2025 · revised enforcement date",
      "kind": "Repositories",
      "title": "Free workspace storage becomes a bottleneck",
      "body": "Bitbucket caps combined repository storage at 1 GB per Free workspace. Over-limit workspaces become read-only; Downloads and Snippets also leave Free.",
      "fact": "1 GB ACROSS THE WORKSPACE",
      "scope": "This is Git storage, not the separate LFS allowance. Paid plans are excluded; special academic-plan terms need checking."
    },
    {
      "year": 2025,
      "id": "glitch",
      "name": "Glitch",
      "date": "July 8, 2025",
      "kind": "Hosting",
      "title": "Project hosting shuts down",
      "body": "Glitch ends app hosting and user profiles. Live student apps and teaching demonstrations must move.",
      "fact": "HOSTING ENDS",
      "scope": "General-purpose coding/hosting platform. Export access continued through 2025."
    },
    {
      "year": 2025,
      "id": "aws",
      "name": "AWS Free Tier",
      "date": "July 15, 2025 · new accounts",
      "kind": "Compute",
      "title": "The free-plan window gets shorter",
      "body": "The former 12-month limited benefits give way to a credit-based free plan of at most 6 months, ending earlier if credits run out.",
      "fact": "12 MONTHS → ≤6 MONTHS",
      "scope": "General Free Tier used by students; not a blanket change to AWS Educate or Academy. New credits and spending protection also change."
    },
    {
      "year": 2025,
      "id": "codalabsunset",
      "name": "CodaLab Competitions",
      "date": "End of 2025 · no exact final day established",
      "kind": "Benchmarking",
      "title": "CodaLab passes the torch to Codabench",
      "body": "The project reports that CodaLab Competitions and its main servers were phased out at the end of 2025. Codabench is the maintained successor.",
      "fact": "MIGRATE BENCHMARKS",
      "scope": "Free benchmarking continues on Codabench. Bundles are compatible, but accounts and leaderboards do not transfer automatically. CodaLab Worksheets is separate."
    },
    {
      "year": 2026,
      "id": "gitlablimits",
      "name": "GitLab · new groups",
      "date": "Accounts created after January 27, 2026",
      "kind": "Repositories",
      "title": "New Free accounts get fewer course containers",
      "body": "New GitLab Free accounts can create only three top-level groups. Repeated course and cohort namespaces need a different organizational plan.",
      "fact": "3 TOP-LEVEL GROUPS",
      "scope": "This limits groups, not the number of repositories. Existing accounts are outside this new-account boundary."
    },
    {
      "year": 2026,
      "id": "gitlabrollout",
      "name": "GitLab · remaining rollout",
      "date": "August 15, 2026 · provider’s enforcement schedule",
      "kind": "Repositories",
      "title": "The five-user cap reaches remaining private groups",
      "body": "GitLab’s updated notice schedules enforcement on remaining private Free namespaces. Keeping an old class group does not preserve its former allowance.",
      "fact": "LEGACY GROUPS LOSE THE EXCEPTION",
      "scope": "Final stage of the earlier five-user restriction. Public groups, self-managed Free and qualifying education programs remain exempt."
    },
    {
      "year": 2026,
      "id": "github",
      "name": "GitHub Classroom",
      "date": "August 28, 2026",
      "kind": "Classroom",
      "title": "GitHub Classroom shuts down",
      "body": "The Classroom website, APIs, and related services are decommissioned. New sign-ups had already stopped on May 26.",
      "fact": "CLASSROOM SERVICE CLOSED",
      "scope": "GitHub accounts, repositories, and organizations remain. Some Classroom metadata is subject to deletion."
    },
    {
      "year": 2026,
      "id": "colab",
      "name": "Colab education offer",
      "date": "Closed to new users by September 21, 2026 · user-reported boundary",
      "kind": "Compute benefit",
      "title": "The education Pro offer quietly closes",
      "body": "New sign-ups for free one-year Colab Pro for Education subscriptions were closed by September 21, 2026, per Greg Chism’s October 20 update. Google’s FAQ independently confirms the closed offer. Existing verified users retain their remaining year.",
      "fact": "NO NEW EDUCATION SIGN-UPS",
      "scope": "Base free Colab remains. September 21 is a user-reported upper boundary; the provider FAQ does not state the exact effective closure date. The original offer was limited."
    },
    {
      "year": 2026,
      "id": "studiolab",
      "name": "SageMaker Studio Lab",
      "date": "Observed October 8, 2026 · change date unverified",
      "kind": "Compute access",
      "title": "Another free notebook door closes",
      "body": "AWS no longer accepts new Studio Lab customers and plans no new features. Existing users can continue.",
      "fact": "NO NEW CUSTOMERS",
      "scope": "A new-access restriction, not a full service shutdown. The current provider notice does not state an effective date."
    }
  ],
  "degree_options": [
    {
      "id": "bsis",
      "name": "BS Information Science",
      "tools": [
        "codespaces",
        "kaggle"
      ],
      "good": "Python / R / SQL labs, small-data models and short GPU experiments. Browser prototypes for the immersive emphasis.",
      "limit": "Large training, concurrent GPUs, high-memory data or immersive hardware are required.",
      "handoff": "ACCESS CPU / GPU labs; NAIRR Classroom for AI courses; campus XR hardware.",
      "url": "https://infosci.arizona.edu/bs-information-science",
      "supplement": "Codabench / Kaggle competitions for small prediction benchmarks; Binder for short CPU labs; CodeGrade for ≤50-student coding labs."
    },
    {
      "id": "msds",
      "name": "MS Data Science",
      "tools": [
        "codespaces",
        "kaggle"
      ],
      "good": "Reproducible notebooks, tabular ML, sampled datasets and checkpointed deep-learning labs.",
      "limit": "Data exceeds RAM / storage, models exceed available VRAM, or jobs need long / distributed training.",
      "handoff": "ACCESS for larger data and scheduled capacity; NAIRR Classroom for AI instruction.",
      "url": "https://infosci.arizona.edu/ms-data-science",
      "supplement": "Codabench / Kaggle competitions for model evaluation; Lightning for credit-bounded pilots; ZeroGPU for brief inference demos."
    },
    {
      "id": "msis",
      "name": "MS Information Science",
      "tools": [
        "codespaces",
        "kaggle"
      ],
      "good": "ML subplan: notebook experiments. Human-Centered Computing: web prototypes and small public-data studies.",
      "limit": "Training or deployment must persist; studies need controlled data, full desktops or specialized devices.",
      "handoff": "Managed ACCESS environments; NAIRR Classroom where the course teaches AI.",
      "url": "https://infosci.arizona.edu/ms-information-science",
      "supplement": "Codabench / Kaggle competitions for ML; ZeroGPU for HCC model demos; CodeGrade for small programming labs."
    },
    {
      "id": "ets",
      "name": "BA Emerging Technologies in Society",
      "tools": [
        "codespaces",
        "pages"
      ],
      "good": "Small public-text / network analyses, web development, digital storytelling and public portfolios.",
      "limit": "Live app backends, licensed social-media data, private participant records or large corpora are required.",
      "handoff": "ACCESS for larger analysis or managed servers; retain institution-approved study tools.",
      "url": "https://infosci.arizona.edu/ba-emerging-technologies-society",
      "supplement": "Binder for short public-text analysis; CodeGrade for small coding labs; Kaggle hackathons for judged public-data projects."
    },
    {
      "id": "gd",
      "name": "BA Game Design",
      "tools": [
        "twine",
        "pages"
      ],
      "good": "Branching narratives, rules and interaction prototypes, browser playtesting and published HTML games.",
      "limit": "A project needs a full 3D engine, large assets, persistent multiplayer servers or VR headsets.",
      "handoff": "Campus engine / device labs; evaluate allocated GPU desktops and server support.",
      "url": "https://infosci.arizona.edu/ba-game-design",
      "supplement": "Kaggle hackathons for judged prototypes; CodeGrade for small scripting labs. Neither supplies a 3D engine, XR device or game server."
    },
    {
      "id": "gdev",
      "name": "BS Game Development",
      "tools": [
        "codespaces",
        "pages"
      ],
      "good": "Game logic, headless tests, small JavaScript games and browser-playable prototypes.",
      "limit": "Unity / Unreal desktop workflows, heavy 3D builds, rendering, VR or persistent multiplayer are required.",
      "handoff": "Campus game / XR labs; ACCESS servers or GPU desktops after software and license checks.",
      "url": "https://infosci.arizona.edu/bs-game-development",
      "supplement": "CodeGrade for small code/test labs; Codabench only for bounded custom-scored agents with supplied workers. Heavy engine builds remain elsewhere."
    },
    {
      "id": "arts",
      "name": "BA Information Science & Arts",
      "tools": [
        "p5",
        "pages"
      ],
      "good": "Creative coding, interactive graphics, audio-visual sketches and web-based UX prototypes.",
      "limit": "Work needs high-end rendering, large media, installed creative software, XR devices or physical installations.",
      "handoff": "Campus media / XR labs; allocated GPU or remote desktops where appropriate.",
      "url": "https://infosci.arizona.edu/ba-information-science-arts",
      "supplement": "ZeroGPU for brief AI behavior demos; Kaggle hackathons for judged creative projects. Rendering/XR work still needs appropriate hardware."
    },
    {
      "id": "mlis",
      "name": "MA Library & Information Science",
      "tools": [
        "codespaces",
        "pages"
      ],
      "good": "Metadata cleaning, Python / R / SQL exercises, small text collections and static digital exhibits.",
      "limit": "A repository / ILS must run continuously, preservation storage must endure, or collections need access controls.",
      "handoff": "Managed ACCESS teaching servers plus library systems; NAIRR Classroom for AI coursework.",
      "url": "https://infosci.arizona.edu/ma-library-information-science",
      "supplement": "Binder for metadata/text workshops; Codabench / Kaggle competitions for retrieval or classification metrics. Archives/ILS require durable systems."
    },
    {
      "id": "phd",
      "name": "PhD Information",
      "tools": [
        "codespaces",
        "kaggle"
      ],
      "good": "Methods coursework, pilot analyses, reproducible examples and small model feasibility studies.",
      "limit": "Dissertation work needs sustained GPU time, large-scale simulation, controlled data or durable services.",
      "handoff": "ACCESS / appropriate NAIRR research requests for research; Classroom only for eligible instruction.",
      "url": "https://infosci.arizona.edu/phd-information",
      "supplement": "Codabench / EvalAI for research evaluation; Binder for reproducible methods; Lightning for small pilots. Sustained research compute requires an allocation."
    }
  ],
  "platforms": {
    "codespaces": {
      "name": "GitHub Codespaces",
      "kind": "Cloud CPU",
      "symbol": "CPU",
      "quota": "60 h / month on 2 cores; 90 h for verified students.",
      "detail": "120 / 180 core-hours; 15 / 20 GB-month storage. Personal-account quotas; larger machines use hours faster. No generally available GPU.",
      "url": "https://github.com/features/codespaces"
    },
    "kaggle": {
      "name": "Kaggle Notebooks",
      "kind": "Cloud GPU",
      "symbol": "GPU",
      "quota": "Weekly GPU quota varies. No reserved classroom seats.",
      "detail": "Short, checkpointed notebook jobs; check the account quota and session timer. GPU memory and saved disk constrain models and data.",
      "url": "https://www.kaggle.com/docs/notebooks"
    },
    "pages": {
      "name": "GitHub Pages",
      "kind": "Cloud hosting",
      "symbol": "WEB",
      "quota": "Static sites up to 1 GB; public sharing on the free tier.",
      "detail": "HTML / CSS / JavaScript hosting. Code executes on the viewer’s device; no application server, database or cloud GPU.",
      "url": "https://docs.github.com/en/pages/getting-started-with-github-pages/what-is-github-pages"
    },
    "p5": {
      "name": "p5.js Web Editor",
      "kind": "Browser creation",
      "symbol": "ART",
      "quota": "Free creative coding; uses the student’s device.",
      "detail": "Browser graphics and audio; device performance still matters. This is not a remote rendering workstation or allocated GPU.",
      "url": "https://editor.p5js.org/"
    },
    "twine": {
      "name": "Twine",
      "kind": "Browser creation",
      "symbol": "PLAY",
      "quota": "Free narrative authoring; export portable HTML.",
      "detail": "Runs in the browser or a local app. Keep backups of story files; this is not a cloud engine workstation.",
      "url": "https://twinery.org/"
    }
  },
  "repository_plan": [
    {
      "title": "1 · Keep a viable free route",
      "body": "Use GitHub Free for ordinary Git hosting now. Assess an institution-sponsored GitLab for Education application for private class teams and additional features; annual renewal and use restrictions still apply. Classroom 50 is a workable assignment-management successor, externally maintained by the Fifty Foundation. Keep course repositories/configuration in an institution-controlled GitHub organization; verify Team/Enterprise education eligibility, retain exports and rehearse an alternate submission path. It adds no Codespaces compute allocation.",
      "owner": "Instructor lead + college IT · before the next course"
    },
    {
      "title": "2 · Establish campus ownership",
      "body": "Inventory course repos, sizes, LFS, issues, wikis, artifacts and grading links. Give each course a responsible owner and successor. Keep submissions private; do not make student work public to escape a quota.",
      "owner": "Course owner + college IT · weeks 12–10"
    },
    {
      "title": "3 · Pilot a managed fallback",
      "body": "Evaluate a supported campus Git service first. If none fits, pilot Forgejo or self-managed GitLab on an institution-managed host with authentication, private projects, quotas and isolated grading runners. Budget staff, durable storage and recovery separately from compute awards.",
      "owner": "College IT + central IT · weeks 10–4"
    },
    {
      "title": "4 · Preserve more than Git",
      "body": "Take versioned nightly Git and LFS backups to independent storage; export issues, wikis, release files and course assessment links through supported paths. Define retention, access and deletion rules. A live mirror can copy deletions and cannot replace a separate backup.",
      "owner": "Named service operator · nightly; alert on failures"
    },
    {
      "title": "5 · Prove recovery, then scale",
      "body": "Before teaching, restore a private sample course on a second host and confirm history, LFS, permissions and grading links. Proposed pilot targets: at most 24 hours of data loss and recovery within one business day. Validate these targets before promising them.",
      "owner": "Operator + instructor · pre-term and after major changes"
    },
    {
      "title": "6 · Close the teaching cycle",
      "body": "Give students portable code exports, retain institutional assessment records under approved policy, and archive releasable research code/data with Libraries/ReDATA when appropriate. Review storage, restores, licenses and allocation renewal before the next cohort.",
      "owner": "Instructor + IT + Libraries · each term"
    }
  ],
  "library_repository_findings": [
    {
      "title": "OSF Projects",
      "status": "Upcoming withdrawal",
      "date": "November 16, 2026 → after February 19, 2027",
      "finding": "New project creation stops; existing projects become read-only. Active research collaboration and file-management exercises need a new workspace.",
      "boundary": "Public records remain; preregistration and community preprint services continue. Both effective dates are upcoming as of this audit.",
      "sources": [
        "osfprojects"
      ]
    },
    {
      "title": "Generalist OSF Preprints",
      "status": "Submission route withdrawn",
      "date": "August 25, 2025; indefinite from October 16, 2025",
      "finding": "New submissions to the generalist server stopped, narrowing a scholarly-communication teaching route.",
      "boundary": "Existing papers and revisions remain; community-led preprint servers are excluded.",
      "sources": [
        "osfpreprints",
        "osfpreprintstart"
      ]
    },
    {
      "title": "Dryad",
      "status": "Changed publishing costs",
      "date": "May 6, 2025",
      "finding": "Size-based charges make sponsorship and dataset size material to publishing costs; partner coverage generally stops at 10 GB.",
      "boundary": "Dryad was not universally free before this change. Sponsorship and waivers can cover eligible deposits; no campus agreement was verified.",
      "sources": [
        "dryadfees"
      ]
    },
    {
      "title": "Google education working storage",
      "status": "Storage-policy change",
      "date": "July 2022",
      "finding": "Education storage moved to a baseline institutional pool of 100 TB across users and accounts.",
      "boundary": "A shared Drive quota affects preparing deposits and collaboration, not the preservation status of an institutional repository. Campus contract capacity may differ.",
      "sources": [
        "googlepool"
      ]
    },
    {
      "title": "Microsoft education working storage",
      "status": "Free-plan restriction",
      "date": "February / August 2024 rollout",
      "finding": "Free A1 OneDrive users face a 100 GB cap; institutional pooled storage adds a separate constraint.",
      "boundary": "Paid-license additions and contract-renewal timing matter. This is not a 100 GB cap on every UArizona account.",
      "sources": [
        "microsoftpool"
      ]
    },
    {
      "title": "Figshare and Zenodo",
      "status": "Current limits; no verified cut",
      "date": "Observed October 10, 2026",
      "finding": "Figshare offers 20 GB private storage; Zenodo provides a default 50 GB per published record with additional quota options.",
      "boundary": "Useful continuing publication routes. Current limits alone cannot establish a five-year reduction.",
      "sources": [
        "figsharelimits",
        "zenodoquota"
      ]
    },
    {
      "title": "Omeka digital collections",
      "status": "Current limit; no verified cut",
      "date": "Observed October 10, 2026",
      "finding": "One free hosted site and 500 MB fit a small metadata/exhibition assignment. Large scans and audiovisual collections need another storage plan.",
      "boundary": "No recent free-plan reduction was verified. Self-hosting moves infrastructure and support responsibility to the institution.",
      "sources": [
        "omekafree"
      ]
    },
    {
      "title": "Institutional preservation systems",
      "status": "Operating dependency",
      "date": "Observed October 10, 2026",
      "finding": "DSpace software is free; managed repository and preservation services fund hosting, maintenance and support through subscriptions.",
      "boundary": "A sustainability dependency, not proof of a recent account cut. Free software and funded preservation are separate commitments.",
      "sources": [
        "dspacefree",
        "preservationhosting"
      ]
    },
    {
      "title": "UArizona ReDATA",
      "status": "Availability warning",
      "date": "Posted January 6, 2026; observed October 10",
      "finding": "Libraries reports intermittent errors and temporary automated-download restrictions due to high-volume traffic.",
      "boundary": "This is not a closure, account reduction or breach. ReDATA remains a curated public research repository with DOIs.",
      "sources": [
        "redataavailability"
      ]
    },
    {
      "title": "UArizona Campus Repository",
      "status": "Surviving institutional route",
      "date": "Observed October 10, 2026",
      "finding": "Free-to-campus public deposit of suitable publications, reports, theses and other scholarly materials remains available.",
      "boundary": "Coordinate collections and content suitability with Libraries; private submissions and live apps require other services.",
      "sources": [
        "campusrepository"
      ]
    }
  ],
  "hosting_database_findings": [
    {
      "title": "Heroku apps + Postgres + Redis",
      "status": "Free tiers withdrawn",
      "date": "November 28, 2022",
      "finding": "Free Dynos, Postgres and Redis plans ended; free databases faced deletion.",
      "boundary": "General-purpose teaching infrastructure. Hosting and databases are one provider event; later student credits require separate verification.",
      "sources": [
        "heroku"
      ]
    },
    {
      "title": "Railway recurring credits",
      "status": "Allowance withdrawn; smaller free plan now",
      "date": "July 3–August 1, 2023",
      "finding": "The original recurring $5 monthly Starter allowance became a one-time trial. Railway now offers a $1 monthly Free allowance.",
      "boundary": "Avoid the stale claim that Railway has no free tier today. Current credits still do not guarantee a semester of hosting or databases.",
      "sources": [
        "railway2023",
        "railwayfree"
      ]
    },
    {
      "title": "PlanetScale Hobby",
      "status": "Free database tier withdrawn",
      "date": "April 8, 2024",
      "finding": "The free Hobby plan retired and remaining databases were put to sleep, with a short export wake-up route.",
      "boundary": "PlanetScale continues as a paid service; this is not the closure of all its databases.",
      "sources": [
        "planetscalehobby"
      ]
    },
    {
      "title": "Cyclic app hosting",
      "status": "Service shutdown",
      "date": "Free turn-off began May 10; all usage May 31, 2024",
      "finding": "A free full-stack app-hosting route disappeared when Cyclic shut down.",
      "boundary": "Dates describe the provider’s announced staged turn-off; individual deployment or deletion outcomes were not audited.",
      "sources": [
        "cyclicshutdown"
      ]
    },
    {
      "title": "Render free PostgreSQL",
      "status": "90 days → 30 days",
      "date": "May 20, 2024, new databases",
      "finding": "Free database lifetime shortened by two thirds. The 14-day upgrade grace period follows expiry, then data is deleted.",
      "boundary": "Legacy databases retained their original expiry. Free web hosting survives; a free 30-day database is not a semester solution.",
      "sources": [
        "renderexpiry",
        "renderfree"
      ]
    },
    {
      "title": "Fly.io new organizations",
      "status": "Legacy/new-account boundary",
      "date": "Plans discontinued October 7, 2024; current policy checked October 10, 2026",
      "finding": "Old eligible organizations retain free allowances; new organizations receive a short trial and pay for continued billable resources.",
      "boundary": "Do not portray October 2024 as the first removal of every free Hobby signup. Earlier plan changes existed; the current new-account trial lasts at most two runtime hours or seven days.",
      "sources": [
        "flylegacy",
        "flycurrent"
      ]
    },
    {
      "title": "ElephantSQL managed Postgres",
      "status": "Service shutdown",
      "date": "EOL January 27; final blackout February 28, 2025",
      "finding": "After end of life and a staged brownout, the service terminated and its timeline specified deletion of all data.",
      "boundary": "The final data-deletion date is February 28, not January 27. Both free and paid customers were affected.",
      "sources": [
        "elephantsql"
      ]
    },
    {
      "title": "Fauna managed database",
      "status": "Confirmed service shutdown",
      "date": "May 30, 2025",
      "finding": "The database service shut down; applications needed a new endpoint and exported data.",
      "boundary": "A whole-service loss affecting free and paid customers, confirmed by the provider status page.",
      "sources": [
        "faunaeol",
        "faunastatus"
      ]
    },
    {
      "title": "Glitch app hosting",
      "status": "Service shutdown",
      "date": "July 8, 2025",
      "finding": "Project hosting and user profiles ended. Live student apps and demos needed migration.",
      "boundary": "Code downloads continued through the end of 2025; this did not preserve execution of the apps.",
      "sources": [
        "glitch"
      ]
    },
    {
      "title": "Netlify Free",
      "status": "New-account quota model",
      "date": "September 4, 2025 onward",
      "finding": "New Free accounts share 300 monthly credits across deploys, compute and traffic; all web projects pause when credits are exhausted.",
      "boundary": "Free hosting remains. Eligible older accounts can retain legacy plans. The new model is not an equivalent capacity cut for every workload.",
      "sources": [
        "netlifycredits"
      ]
    },
    {
      "title": "Firebase Cloud Storage",
      "status": "Billing-free access withdrawn",
      "date": "Existing-bucket requirement from February 3, 2026",
      "finding": "Access requires a Blaze project linked to Cloud Billing, even when usage fits a no-cost allowance.",
      "boundary": "Object storage, not a shutdown of Firebase Hosting or Firestore. Existing data remains inaccessible until upgrade; overages can cost money.",
      "sources": [
        "firebasebilling"
      ]
    }
  ],
  "hosting_database_options": [
    {
      "platform": "GitHub Pages / Cloudflare Pages",
      "fit": "Static course sites, public exhibits, metadata presentations and browser apps.",
      "limits": "Pages does not run a persistent backend. GitHub published sites are limited to 1 GB; Cloudflare has 20,000 files/site and 25 MiB/asset. Public outputs need appropriate rights.",
      "sources": [
        "pages",
        "pageslimits",
        "cloudflarepages"
      ]
    },
    {
      "platform": "Cloudflare Workers + D1",
      "fit": "Lightweight web APIs and small SQLite-style CRUD exercises.",
      "limits": "Workers: 100,000 requests/day and 10 ms CPU/invocation. D1: ten databases/account, 500 MB each, 5 GB total, five million rows read/day and 100,000 written/day. Not PostgreSQL or a long-running analysis server.",
      "sources": [
        "cloudflareworkers",
        "d1limits",
        "d1pricing"
      ]
    },
    {
      "platform": "Neon Free",
      "fit": "Small PostgreSQL exercises and intermittent student app backends.",
      "limits": "100 CU-hours/project/month; 1 GB/project and 20 GB/account total. Scales to zero after five idle minutes. Short recovery history needs independent exports; benchmark full-class concurrency.",
      "sources": [
        "neonfree",
        "neonpricing"
      ]
    },
    {
      "platform": "Supabase Free",
      "fit": "Small PostgreSQL + authentication + file/API projects.",
      "limits": "Two active projects; 500 MB database/project and 1 GB file storage. Pauses after a week idle. Export database and uploaded files separately; free managed-backup guarantees must not be assumed.",
      "sources": [
        "supabasefree",
        "supabasebackups"
      ]
    },
    {
      "platform": "Render Free",
      "fit": "Small Python/Node web demos when cold starts are acceptable.",
      "limits": "Sleeps after 15 minutes idle; 750 service-hours shared per workspace. Ephemeral filesystem. Free Postgres expires in 30 days; use another durable database for a semester project.",
      "sources": [
        "renderfree",
        "renderexpiry"
      ]
    },
    {
      "platform": "MongoDB Atlas Free",
      "fit": "Small document-database, metadata and aggregation exercises.",
      "limits": "0.5 GB includes data and indexes; one Free cluster/project. No managed backups or sharding; pauses after 30 days without connections. Export and rehearse manual restore.",
      "sources": [
        "mongofree"
      ]
    },
    {
      "platform": "Netlify Free",
      "fit": "Small static and serverless demos with measured credit consumption.",
      "limits": "300 credits/month; quota exhaustion pauses all web projects. Legacy account terms differ. Deploy/traffic/compute compete for the same allowance.",
      "sources": [
        "netlifycredits"
      ]
    },
    {
      "platform": "Vercel Hobby",
      "fit": "Eligible personal, non-commercial student web demos.",
      "limits": "Personal-use terms and no paid team collaboration. Execution and usage quotas apply; a college-wide service cannot be assumed eligible.",
      "sources": [
        "vercelhobby"
      ]
    },
    {
      "platform": "Railway Free",
      "fit": "Very small metered deployments or an introductory deployment exercise.",
      "limits": "$1 recurring monthly credit is useful but insufficient to promise a full semester or always-on database. Distinguish this from the $5 one-time trial and paid Hobby.",
      "sources": [
        "railwayfree"
      ]
    }
  ],
  "service_continuity_plan": [
    {
      "title": "Inventory the whole course stack",
      "body": "For two pilot courses, map compute, live app, database, object files, Git, and archival deposits. Record each owner, account, region, quota, expiry and course requirement. Distinguish public teaching examples from private submissions and research materials.",
      "owner": "Instructor + college IT + Libraries · 12–10 weeks before term"
    },
    {
      "title": "Choose a bounded free route and a funded fallback",
      "body": "Use static hosting where no backend is needed; Neon for small Postgres coursework, Workers/D1 for lightweight SQLite-style apps, or Supabase when integrated auth is part of the exercise. Provision through supported institutional services when available. For persistent multi-user courses, fund managed app/database hosting or an IT-supported environment through the assessment and export period.",
      "owner": "College IT + course lead · 10–8 weeks before term"
    },
    {
      "title": "Separate compute awards from service operations",
      "body": "Request reviewed ACCESS capacity and eligible NAIRR Classroom pilots for instruction and analysis. Separately commit the budget and operator for databases, application availability, durable object storage, identity, backups and renewal. Do not assume a research allocation supports permanent public hosting or preservation; check the awarded resource’s rules.",
      "owner": "College leadership + IT + allocation lead · before committing the course"
    },
    {
      "title": "Make the course portable and recoverable",
      "body": "Keep versioned app source, schema migrations, dependency definitions and synthetic seed data. Export the database and uploaded files independently to institution-approved storage; include metadata, licenses, checksums and necessary access configuration. Protect credentials and define retention with the appropriate institutional owners. A Git mirror or provider snapshot alone does not preserve this whole stack.",
      "owner": "Named service operator · automated backups with failure alerts"
    },
    {
      "title": "Rehearse real class load and a second-host restore",
      "body": "Test simultaneous class use, cold starts, deployment/egress/query quotas, inactivity and expiration handling. Restore an app, database and sample file set onto a second host; verify private access, schema, queries and grading links. Proposed pilot recovery targets remain at most 24 hours of data loss and one business day to restore; measure them before promising them.",
      "owner": "Operator + instructor · 4–2 weeks before term and after major changes"
    },
    {
      "title": "Close and preserve the course deliberately",
      "body": "Offer portable student exports; retain assessment records under approved policy. Coordinate suitable public scholarly deposits with Campus Repository, ReDATA or a disciplinary repository, including metadata and persistent identifiers. Budget stewardship beyond the award period. Recheck vendor terms and test recovery before the next cohort; move active OSF Projects before the announced freeze.",
      "owner": "Instructor + Libraries + IT · end of term and annual review"
    }
  ],
  "research_extension": {
    "checked_at": "2026-10-10",
    "historical_window": [
      "2021-10-10",
      "2026-10-10"
    ],
    "discovery_calls": 13,
    "requested_result_slots": 74,
    "new_source_keys": [
      "osfprojects",
      "osfpreprints",
      "osfpreprintstart",
      "dryadfees",
      "figsharelimits",
      "zenodoquota",
      "omekafree",
      "redataavailability",
      "campusrepository",
      "googlepool",
      "microsoftpool",
      "dspacefree",
      "preservationhosting",
      "planetscalehobby",
      "renderexpiry",
      "renderfree",
      "elephantsql",
      "faunaeol",
      "faunastatus",
      "flylegacy",
      "flycurrent",
      "railway2023",
      "railwayfree",
      "cyclicshutdown",
      "netlifycredits",
      "firebasebilling",
      "cloudflarepages",
      "cloudflareworkers",
      "d1limits",
      "d1pricing",
      "neonfree",
      "neonpricing",
      "supabasefree",
      "supabasebackups",
      "mongofree",
      "vercelhobby"
    ],
    "method": "Exa discovery for hosting, databases and free options; primary provider and institutional pages read directly. Library findings from the preceding discussion were reverified. Requested result slots are not a count of independently validated sources.",
    "boundaries": [
      "Upcoming OSF effective dates are outside the retrospective window.",
      "Current quotas do not establish historical reductions.",
      "Dryad changed fees; this is not a universal free-to-paid conversion.",
      "Free hosting can remain alongside stricter billing or quota conditions.",
      "ACCESS/NAIRR capacity is proposed, conditional and time limited; durable services require separate operations."
    ],
    "excluded_candidates": [
      {
        "name": "Deta Space",
        "reason": "Discovery found a directly affected app-maintainer report and a defunct provider sunset URL. Not promoted as a primary-provider-verified addition in this audit."
      }
    ],
    "source_access_notes": [
      "The former Fauna documentation hostname no longer resolves; its indexed provider FAQ was reviewed and the still-live provider status page confirms shutdown.",
      "The Cyclic provider URL fails certificate verification; the same notice is linked on its author’s live site.",
      "Direct automated checks were blocked for Figshare, Microsoft, DSpace and Lyrasis (403) and reset for Omeka; primary-page contents were read through Exa.",
      "Neon’s stale indexed 0.5 GB page was corrected against direct live documentation showing 1 GB/project and 20 GB/account."
    ]
  },
  "classroom_resource_options": [
    {
      "id": "classroom50",
      "name": "Classroom 50",
      "category": "manage",
      "access": "Free, open-source assignment workflow · evaluate before adoption",
      "fit": "Workable successor for GitHub Classroom assignment distribution, repositories, submissions, feedback and grading.",
      "limits": "Fifty Foundation project and hosted app are not ours. Requires a Team/Enterprise organization; check education eligibility. No additional Codespaces compute; Actions grading has separate quotas. ACCESS remains the CPU/GPU classroom route.",
      "sources": [
        "classroom50",
        "classroom50requirements",
        "classroom50actions",
        "codespaces"
      ]
    },
    {
      "id": "codabench",
      "name": "Codabench",
      "category": "evaluate",
      "access": "Free benchmark hosting; compute depends on queue",
      "fit": "Prediction scoring, reproducible code benchmarks and common test environments.",
      "limits": "Shared CPU scoring jobs ≤20 minutes. Organizers supply queues for code submissions and all GPU workers; no GPU notebook or whole-class reservation.",
      "sources": [
        "codabench",
        "codabenchworkers",
        "codabenchqueues"
      ]
    },
    {
      "id": "kagglecommunity",
      "name": "Kaggle Community Competitions",
      "category": "evaluate",
      "access": "Free self-service hosts and participants",
      "fit": "Prediction-file competitions with live leaderboards; judged hackathons for open-ended projects.",
      "limits": "Training happens elsewhere or in separately limited notebooks. Restricted-email competitions disable notebooks by default; community hosting has no hands-on support.",
      "sources": [
        "kagglecommunity",
        "kagglesetup"
      ]
    },
    {
      "id": "codegrade",
      "name": "CodeGrade",
      "category": "evaluate",
      "access": "Advertised free for courses ≤50 students",
      "fit": "Programming labs with browser editing, immediate autograding and instructor feedback.",
      "limits": "Check free-plan execution/LMS limits and roster scope. No verified free GPU entitlement or campus deployment; grading records need approved retention.",
      "sources": [
        "codegrade"
      ]
    },
    {
      "id": "chagrade",
      "name": "ChaGrade",
      "category": "evaluate",
      "access": "Adjacent project; current free entitlement unverified",
      "fit": "Challenge-linked individual/team homework and instructor grading beyond leaderboard scores.",
      "limits": "Live page labels version 0.1 / Work In Progress. Support, quotas and current Codabench integration need verification; not a ready college-wide baseline.",
      "sources": [
        "chagrade"
      ]
    },
    {
      "id": "evalai",
      "name": "EvalAI",
      "category": "evaluate",
      "access": "Hosted service paid; open-source self-hosting",
      "fit": "Custom prediction/code evaluation and organizer-controlled remote workers.",
      "limits": "Hosted plans $125–850/month; remote evaluation $100/month plus own compute. Self-hosting requires funded staff, infrastructure and storage. No verified hosted free tier.",
      "sources": [
        "evalaipricing",
        "evalaisource"
      ]
    },
    {
      "id": "codalab",
      "name": "CodaLab Competitions",
      "category": "legacy",
      "access": "Retired at end of 2025; successor available",
      "fit": "Historical challenge service; migrate compatible competition bundles to Codabench.",
      "limits": "New account required; leaderboards do not transfer automatically. Preserve submissions/results separately. Separate CodaLab Worksheets is not covered.",
      "sources": [
        "codalabsunset",
        "codabenchmigration"
      ]
    },
    {
      "id": "codespaces",
      "name": "GitHub Codespaces",
      "category": "develop",
      "access": "Bounded free personal CPU quotas",
      "fit": "Reproducible Python/R/SQL labs, small analysis and code development before submission.",
      "limits": "60 two-core hours/month, or 90 for verified students; storage quota and machine sizes matter. No generally available GPU; not continuous application hosting.",
      "sources": [
        "codespaces",
        "students",
        "codespacesgpu"
      ]
    },
    {
      "id": "kaggle",
      "name": "Kaggle Notebooks",
      "category": "develop",
      "access": "Free accelerator notebooks; quota varies",
      "fit": "Checkpointed small-model GPU experiments and training for a competition.",
      "limits": "Check each account’s GPU quota, available hardware, session timer and saved disk. No reserved class seats or distributed/long-running training promise.",
      "sources": [
        "kaggle",
        "kagglequota"
      ]
    },
    {
      "id": "colab",
      "name": "Free Google Colab",
      "category": "develop",
      "access": "Base free tier remains available",
      "fit": "Short shared notebooks, CPU analysis and opportunistic accelerator exercises.",
      "limits": "GPU access and resource/session limits fluctuate. Free Colab is separate from the closed new-signup education Pro offer; never promise class GPU availability.",
      "sources": [
        "colab"
      ]
    },
    {
      "id": "binder",
      "name": "mybinder.org",
      "category": "develop",
      "access": "Free ephemeral CPU sessions",
      "fit": "Small Python/R notebooks launched from a reproducible repository, including metadata/text workshops.",
      "limits": "1–2 GB RAM; ten-minute idle shutdown; aims for ≤6 hours or one CPU-hour; 100 concurrent sessions per repo. Download work; no GPU or persistent workspace promise.",
      "sources": [
        "binder"
      ]
    },
    {
      "id": "lightning",
      "name": "Lightning AI Studio",
      "category": "develop",
      "access": "One free CPU Studio; GPU credit amount and expiry vary",
      "fit": "DS/MLIS notebook preparation and small tests within actual credit balance.",
      "limits": "Four-hour CPU restart boundary; first 10 GB storage free. Do not promise a fixed monthly GPU grant or count paid academic discounts as free compute.",
      "sources": [
        "lightningbilling",
        "lightningstudents"
      ]
    },
    {
      "id": "zerogpu",
      "name": "Hugging Face ZeroGPU / Spaces",
      "category": "demo",
      "access": "Five GPU minutes/day for signed-in Free users",
      "fit": "Short Gradio inference demos and model-behavior comparisons; static exhibits on free Static Spaces.",
      "limits": "Two own ZeroGPU Spaces only for eligible personal accounts ≥30 days old. Shared queues and Gradio constraints; organization hosting paid. Ordinary compute-backed Space creation also needs a paid plan.",
      "sources": [
        "zerogpu",
        "hfspaces"
      ]
    },
    {
      "id": "cudalive",
      "name": "cuda.live",
      "category": "demo",
      "access": "15 executions/month; bounded CUDA exercises",
      "fit": "Tiny CUDA kernel/compiler demonstrations independent of the Codabench workflow.",
      "limits": "Advertised T4 16 GB, five runs per 15 minutes; per-execution allowance is not GPU-hours. Existing October 8 verification, no reserved class capacity.",
      "sources": [
        "cudalive"
      ]
    },
    {
      "id": "modal",
      "name": "Modal",
      "category": "cloud",
      "access": "Conditional recurring credit · $30/workspace/month; three Starter seats",
      "fit": "DS: a small pinned training/inference run. MLIS: public-corpus OCR, embeddings or retrieval experiments.",
      "limits": "Payment method required; GPU, CPU and memory share credits. Set explicit usage and net-spend limits. Shared Endpoints tokens cost extra. Academic grant is an application, not funding in hand.",
      "sources": [
        "modalpricing",
        "modalbilling",
        "modalbudgets",
        "modalacademic"
      ]
    },
    {
      "id": "beam",
      "name": "Beam",
      "category": "cloud",
      "access": "Paid / historical free claim · $20/month Developer includes $20 credits; one seat",
      "fit": "DS/MLIS component hosting if funded; open-source runtime may warrant later engineering assessment.",
      "limits": "June free-$30 comparison is stale against current direct plan table. Prepaid deployments need credits; warm/idle settings can bill. BYOC is not free compute.",
      "sources": [
        "beampricing",
        "beambilling",
        "beamoldoffer"
      ]
    },
    {
      "id": "cerebrium",
      "name": "Cerebrium",
      "category": "cloud",
      "access": "Paid usage / possible trial · Free Hobby subscription; no recurring compute credit verified",
      "fit": "DS model serving; MLIS public-corpus embeddings or transcription.",
      "limits": "Free plan fee and included storage do not make execution free. Trials are discretionary/time-limited and may transition to paid billing.",
      "sources": [
        "cerebriumpricing",
        "cerebriumtrial"
      ]
    },
    {
      "id": "paperspace",
      "name": "Paperspace Gradient",
      "category": "develop",
      "access": "Bounded free machines · Free CPU / M4000 GPU subject to availability; 5 GB",
      "fit": "Small DS training and public/synthetic MLIS corpus notebooks.",
      "limits": "Six-hour free-session maximum, one-hour idle stop, one free notebook at once; free notebooks are public. Check old GPU/runtime fit and actual signup/payment requirements.",
      "sources": [
        "paperspacefree",
        "paperspacefeatures",
        "paperspacevisibility"
      ]
    },
    {
      "id": "saturn",
      "name": "Saturn Cloud",
      "category": "develop",
      "access": "Unconfirmed free lead · Landing page advertises 150 compute hours/month, no card",
      "fit": "Potential DS and MLIS notebook alternative, pending an authorized account check.",
      "limits": "150 compute hours is not verified as 150 GPU-hours. Current pricing emphasizes paid hosted resources; reconcile device allowance, storage, inactivity and new-account access.",
      "sources": [
        "saturntry",
        "saturnpricing"
      ]
    },
    {
      "id": "runpod",
      "name": "Runpod",
      "category": "cloud",
      "access": "Paid comparison · Prepaid compute; no recurring free allocation verified",
      "fit": "Funded DS/MLIS jobs with explicit checkpoint and external export.",
      "limits": "Pod launch needs credit; stopped storage still bills and can be deleted when funds run out. Not a zero-cash fallback or preservation repository.",
      "sources": [
        "runpodbilling"
      ]
    },
    {
      "id": "replicate",
      "name": "Replicate",
      "category": "cloud",
      "access": "Limited model trial · Select-model demonstrations, then billing",
      "fit": "DS model-behavior comparison; MLIS controlled metadata/transcription demonstrations.",
      "limits": "No stable free monthly grant verified. Private deployments can bill setup and idle time. A model API does not replace arbitrary CUDA training.",
      "sources": [
        "replicatebilling"
      ]
    },
    {
      "id": "hfinference",
      "name": "Hugging Face Inference Providers",
      "category": "cloud",
      "access": "Paid API on Free accounts · No included monthly API credits for Free users",
      "fit": "DS inference evaluation and MLIS embeddings/metadata tasks when funded.",
      "limits": "Separate from ZeroGPU/Spaces. Current API pricing overrides older free-credit snippets; no historical change date established.",
      "sources": [
        "hfinferencepricing"
      ]
    }
  ],
  "classroom_resource_extension": {
    "checked_at": "2026-10-11",
    "corrected_identity": "Codabench, https://www.codabench.org/; earlier CUDA benchmark-suite identification removed",
    "discovery_calls": 10,
    "requested_result_slots": 60,
    "resource_comparisons": 13,
    "new_source_keys": [
      "codabenchworkers",
      "codabenchqueues",
      "codabenchmigration",
      "codalabsunset",
      "kagglecommunity",
      "kagglesetup",
      "evalaipricing",
      "evalaisource",
      "binder",
      "lightningpricing",
      "lightningbilling",
      "zerogpu",
      "hfspaces",
      "codegrade",
      "chagrade"
    ],
    "method": "Exa discovery, primary documents, direct live HTML and rendered Lightning pricing. Requested slots are discovery, not independently validated source counts.",
    "source_access_notes": [
      "Codabench homepage extraction from Exa and web was unrelated text; direct live HTML confirmed real content and the 20-minute queue cap.",
      "Lightning current live rendered FAQ specifies five signup credits plus 25 for adding a card; older monthly-credit claims were not adopted. Billing docs and pricing differ on machine size; verify actual account.",
      "ChaGrade is retained as an adjacent workflow with unverified entitlement/readiness, not counted as guaranteed free capacity."
    ],
    "proposal": "Pilot a permitted Codabench evaluation queue backed by reviewed ACCESS capacity; isolated workers, scheduling, operations, storage, backups and grade exports remain separate requirements."
  },
  "updated_at": "2026-10-20",
  "federal_platform_map": [
    {
      "id": "access",
      "name": "ACCESS",
      "category": "compute",
      "funding": "NSF-funded coordination + separately funded resource providers",
      "kind": "Allocation and support federation",
      "route": "ACCESS project request; exchange credits for provider resources",
      "fit": "Broad CPU/GPU research and instruction; resource discovery and support.",
      "boundary": "Provider quotas, scheduling, allocation term and software vary. Counts overlap with participating resource providers.",
      "sources": [
        "fedaccess"
      ],
      "capabilities": [
        "teach",
        "train",
        "batch",
        "cloud"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "ospool",
      "name": "OSG Open Science Pool (OSPool)",
      "category": "compute",
      "funding": "NSF PATh/IRIS-HEP + institutional/DOE in-kind contributions",
      "kind": "Opportunistic distributed throughput pool",
      "route": "Documented guest education notebook or facilitated full event accounts",
      "fit": "Independent text/image analyses, parameter sweeps, model evaluation and many short CPU/GPU jobs.",
      "boundary": "Guest four-hour timeout/files may be lost; full accounts usually end shortly after event. Interruptible fair share; complete/checkpoint jobs within 20 hours. No sensitive/proprietary data or classroom GPU reservation.",
      "sources": [
        "fedosg",
        "fedospool",
        "assessospedu",
        "assessosppolicy"
      ],
      "capabilities": [
        "batch",
        "train"
      ],
      "parent": "OSG consortium / PATh services",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "path",
      "name": "PATh Facility",
      "category": "compute",
      "funding": "NSF PATh",
      "kind": "Dedicated credit-based throughput pool",
      "route": "Consult PATh; NSF-funded project startup/credit process",
      "fit": "Dedicated throughput research jobs when the affiliated NSF program and credits are confirmed.",
      "boundary": "IDSS is not explicitly listed in the published affiliated-program policy. MESA funding alone does not establish eligibility or course authorization; confirm with PATh/NSF. Separate from OSPool education access.",
      "sources": [
        "fedpath",
        "assesspathelig",
        "assesspathcredits"
      ],
      "capabilities": [
        "batch",
        "train"
      ],
      "parent": "PATh / also participates in NAIRR",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "nrp",
      "name": "NRP / Nautilus",
      "category": "compute",
      "funding": "NSF-supported platform + participating institutions",
      "kind": "Shared GPU/cloud services",
      "route": "Institutional onboarding; hosted JupyterHub, API or project namespace",
      "fit": "Hosted teaching notebooks, GPUs, open-weight model APIs and containerized services.",
      "boundary": "Hosted hub starts with 5 GB homes; larger storage, class/GPU quota and hub-specific exceptions need approval. Ordinary-pod six-hour rules do not establish every hub limit. Not archival storage; idle volumes may be purged.",
      "sources": [
        "fednrp",
        "fednrpllm",
        "assessnrpedu",
        "assessnrphub",
        "assessnrppolicy"
      ],
      "capabilities": [
        "teach",
        "train",
        "api",
        "cloud"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "jetstream",
      "name": "Jetstream2",
      "category": "compute",
      "funding": "NSF research-cloud infrastructure",
      "kind": "ACCESS resource provider / VM cloud",
      "route": "ACCESS allocation, course images and student/project access",
      "fit": "Notebooks, RStudio, desktops, web/database teaching servers and vGPU environments.",
      "boundary": "Always-on VM accounting, separate GPU exchange, concurrent quota and extra storage need approval. Independent backups required. Expiry/overdraw disables access and can destroy unresolved resources after thirty days.",
      "sources": [
        "fedjetstream",
        "fedjetstreamfund",
        "assessjetquota",
        "assessjetstorage",
        "assessjetexpiry"
      ],
      "capabilities": [
        "teach",
        "cloud",
        "train"
      ],
      "parent": "ACCESS resource provider",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "nairr",
      "name": "NAIRR / NAIRR Classroom",
      "category": "compute",
      "funding": "NSF-led federal partnership + public/private contributions",
      "kind": "AI resource access program",
      "route": "Appropriate researcher or Classroom request",
      "fit": "AI coursework, GPUs, model/data/tools and selected managed environments.",
      "boundary": "US-based class eligibility and approved resources; instructor/TA support expected. Research and Classroom requests differ; partner offerings are not all federally purchased.",
      "sources": [
        "fednairr"
      ],
      "capabilities": [
        "teach",
        "train",
        "api"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "cloudbank",
      "name": "CloudBank / CloudBank Classroom",
      "category": "compute",
      "funding": "NSF support + awarded cloud budgets",
      "kind": "Commercial-cloud broker and managed teaching platform",
      "route": "General ACCESS Explore Classroom route; separate NAIRR Classroom route for AI coursework",
      "fit": "Managed Python/R/C++ browser environments with login and student storage.",
      "boundary": "Managed CPU per-student limits/capacity need confirmation. Current registry says fall 2026 GPU pilot is at capacity; requests considered in 2027, not guaranteed. Renewal terms need reconciliation with education-period policy.",
      "sources": [
        "fedcloudbank",
        "assesscloudbank",
        "assesscbgpu",
        "assesscbscope"
      ],
      "capabilities": [
        "teach",
        "cloud",
        "train"
      ],
      "parent": "ACCESS / NAIRR selected resources",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "chameleon",
      "name": "Chameleon / CHI@Edge",
      "category": "testbed",
      "funding": "NSF-funded experimental infrastructure",
      "kind": "Reconfigurable cloud and edge testbed",
      "route": "Eligible PI project; allocation and resource lease",
      "fit": "Systems/MLOps, edge/IoT, bare-metal experiments, specialized GPU/FPGA hardware.",
      "boundary": "Experiment purpose, SU budget and short hardware leases. No unrestricted production hosting; student membership normally follows PI approval.",
      "sources": [
        "fedchameleon"
      ],
      "capabilities": [
        "teach",
        "cloud",
        "train"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "cloudlab",
      "name": "CloudLab",
      "category": "testbed",
      "funding": "NSF-funded testbed",
      "kind": "Bare-metal/VM systems experimentation",
      "route": "Approved project with planned class reservations",
      "fit": "Distributed systems, reproducible root-access labs and networked application experiments.",
      "boundary": "Use only while actively experimenting; node data disappears at termination. Reserve for deadline bursts and export work.",
      "sources": [
        "fedcloudlab",
        "fedcloudlabfund"
      ],
      "capabilities": [
        "teach",
        "cloud"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "fabric",
      "name": "FABRIC",
      "category": "testbed",
      "funding": "NSF grants for research infrastructure",
      "kind": "Programmable network + distributed compute/storage",
      "route": "Project and experimental resource slices",
      "fit": "Distributed AI, edge workloads, streaming/data movement and instrument-to-compute experiments.",
      "boundary": "Experiment should need the network/testbed capabilities; not a stand-alone generic GPU account or production campus server.",
      "sources": [
        "fedfabric"
      ],
      "capabilities": [
        "cloud",
        "train",
        "data"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "ncar",
      "name": "NSF NCAR Derecho / analysis resources",
      "category": "domain",
      "funding": "NSF NCAR",
      "kind": "Domain HPC and classroom allocations",
      "route": "Classroom/workshop or qualifying research allocation",
      "fit": "Earth-system, environmental and geospatial data/AI instruction with consulting.",
      "boundary": "Earth-system mission fit; setup lead time, accounts, dates and reservations required. Separate grant not required for eligible classes.",
      "sources": [
        "fedncar"
      ],
      "capabilities": [
        "teach",
        "batch",
        "train"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "doe",
      "name": "DOE NERSC / ALCF / OLCF",
      "category": "domain",
      "funding": "DOE Office of Science / ASCR",
      "kind": "Leadership HPC user facilities",
      "route": "ALCC, INCITE or facility-specific merit request",
      "fit": "Large mission-aligned scientific simulation, data analysis and AI research.",
      "boundary": "ALCC does not require DOE sponsorship, but merit/mission/scaling requirements apply. Not the default for everyday college labs.",
      "sources": [
        "feddoe"
      ],
      "capabilities": [
        "batch",
        "train"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "nasa",
      "name": "NASA High-End Computing",
      "category": "domain",
      "funding": "NASA mission infrastructure",
      "kind": "Mission research HPC",
      "route": "NASA-sponsored project / mission request process",
      "fit": "NASA-aligned Earth/space/engineering computing.",
      "boundary": "Sponsorship and mission/award review required; not a general open classroom resource.",
      "sources": [
        "fednasa"
      ],
      "capabilities": [
        "batch",
        "train"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "anvil",
      "name": "NIH AnVIL / Terra ecosystem",
      "category": "domain",
      "funding": "NIH NHGRI platform funding; cloud usage billed separately",
      "kind": "Biomedical data + workflow cloud",
      "route": "Project/data authorization plus cloud billing or awarded credits",
      "fit": "Genomic data-science notebooks, workflows and reproducible biomedical training.",
      "boundary": "Free platform browsing does not mean free compute/storage/egress. NIH AnVIL differs from Purdue ACCESS Anvil; old credit calls are not current offers.",
      "sources": [
        "fedanvil",
        "fedanvilcost"
      ],
      "capabilities": [
        "teach",
        "data",
        "train"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "cyverse",
      "name": "CyVerse Discovery Environment / VICE",
      "category": "compute",
      "funding": "Historical core NSF support; new project funding + subscriptions + Arizona TRIF",
      "kind": "Managed applications and scientific data platform",
      "route": "Basic account; confirm institutional Pro or collaboration access",
      "fit": "Python/R apps, data management and a practical UArizona course/pilot route.",
      "boundary": "Basic 200 units/year, 5 GB, one job and no sharing/public links. Published UArizona free Pro is state-funded, not universal; GPU and class access need consultation.",
      "sources": [
        "fedcyverse"
      ],
      "capabilities": [
        "teach",
        "cloud",
        "data"
      ],
      "parent": "",
      "status": "Mixed funding; current published UArizona benefit"
    },
    {
      "id": "osn",
      "name": "Open Storage Network",
      "category": "data",
      "funding": "NSF seed support + participating storage operators",
      "kind": "Allocated object-storage network",
      "route": "Separate storage request through ACCESS; provider capacity",
      "fit": "Large actively used teaching/research datasets and portable object storage.",
      "boundary": "Documented request range 10–50 TB; not CPU time, backup or archival permanence. Actual size/site capacity needs verification.",
      "sources": [
        "fedosn",
        "fedosnaccess",
        "fedosnpolicy"
      ],
      "capabilities": [
        "data",
        "storage"
      ],
      "parent": "ACCESS storage resource",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "osdf",
      "name": "OSDF / Pelican",
      "category": "data",
      "funding": "OSG/PATh federal-supported services + data origins/caches",
      "kind": "Data delivery and cache federation",
      "route": "Connect existing store or allocated OSN/CC* storage through OSG",
      "fit": "Deliver data to distributed jobs, notebooks and scientific applications.",
      "boundary": "Not another storage or compute award. Backing store/access policy required; not for highly regulated/PII/HIPAA data; preservation is separate.",
      "sources": [
        "fedosdf",
        "fedosg"
      ],
      "capabilities": [
        "data",
        "storage"
      ],
      "parent": "OSG data layer; interoperates with OSPool / OSN",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "mesa",
      "name": "MESA",
      "category": "idss",
      "funding": "NSF IDSS; project site cites award 2632685",
      "kind": "Metadata/data mesh/lakehouse + AI workflow integration",
      "route": "Published MESA portal/docs; underlying services govern compute",
      "fit": "Metadata, semantic discovery, reproducible data/agent workflows, Jupyter/R/desktop app layer.",
      "boundary": "Portal reads the existing CyVerse account/teams/quota; it does not add a second allowance. Selected apps, Save & Exit, per-user Pro/TRIF entitlement, classroom/GPU capacity and support remain to be tested.",
      "sources": [
        "fedmesa",
        "fedidss",
        "fedidssprogram",
        "assessmesaportal",
        "assessmesaapps",
        "assessmesasave"
      ],
      "capabilities": [
        "teach",
        "data",
        "cloud",
        "api"
      ],
      "parent": "IDSS Category II",
      "status": "Funded expansion; published portal/tools, readiness untested"
    },
    {
      "id": "ndp",
      "name": "National Data Platform (NDP)",
      "category": "idss",
      "funding": "NSF IDSS",
      "kind": "Federated data and education ecosystem",
      "route": "Public catalog/education activity; consult NDP for class workspace",
      "fit": "Discoverable compute-ready instructional data, reusable AI activities and capstone content.",
      "boundary": "Some homepage features are forthcoming. Confirm available workspaces, quota, onboarding and underlying compute rather than equating an IDSS grant with a user allocation.",
      "sources": [
        "fedndp",
        "fedidss"
      ],
      "capabilities": [
        "teach",
        "data"
      ],
      "parent": "IDSS Category I",
      "status": "Existing ecosystem + funded national expansion"
    },
    {
      "id": "fabaid",
      "name": "Fabric for AI-Driven Science (FabAID)",
      "category": "idss",
      "funding": "NSF IDSS",
      "kind": "Composable data-service fabric",
      "route": "Project service endpoints/consultation",
      "fit": "Storage federation, cache/delivery, transformation, discovery and data-intensive workflows.",
      "boundary": "Data-service integration complements compute allocations; no universal GPU entitlement, class quota or archival guarantee established.",
      "sources": [
        "fedfabaid",
        "fedidss"
      ],
      "capabilities": [
        "data",
        "storage"
      ],
      "parent": "IDSS Category I",
      "status": "Funded deployment; service-specific terms to confirm"
    },
    {
      "id": "idlab",
      "name": "Interactive Discovery Laboratory (iDLab)",
      "category": "idss",
      "funding": "NSF IDSS",
      "kind": "Interactive gateway across sites/clouds",
      "route": "Project consultation; existing site account/allocations as required",
      "fit": "Browser applications, interactive workspaces and cross-site data/workflow access.",
      "boundary": "Participating sites retain policies/control. Gateway access is not an extra copy of the sites’ capacity or long-term archives; course readiness must be confirmed.",
      "sources": [
        "fedidlab",
        "fedidss"
      ],
      "capabilities": [
        "teach",
        "cloud",
        "data"
      ],
      "parent": "IDSS Category II",
      "status": "Funded transition; current architecture documented"
    },
    {
      "id": "bridge",
      "name": "BRIDGE National Center / Apache Texera",
      "category": "idss",
      "funding": "NSF IDSS",
      "kind": "Reusable workflow/data/model platform",
      "route": "Project collaboration or own supported platform deployment",
      "fit": "Visual/no-code workflows, reproducible social-science/data analyses and shared community models.",
      "boundary": "May require your own host/cloud/resources and operators. No verified no-cost public compute subscription or guaranteed class capacity.",
      "sources": [
        "fedbridge",
        "fedidss"
      ],
      "capabilities": [
        "teach",
        "data",
        "cloud"
      ],
      "parent": "IDSS Category II",
      "status": "Funded national transition / reusable software"
    },
    {
      "id": "nsdf",
      "name": "National Science Data Fabric (NSDF)",
      "category": "idss",
      "funding": "NSF IDSS",
      "kind": "Distributed scientific data-access framework",
      "route": "Project contact; NSF announcement verifies expansion scope",
      "fit": "Standardized scientific data discovery/access, reproducibility and data/AI workforce development.",
      "boundary": "Funding/intent verified from NSF announcement; current user-specific access terms, compute quota and production readiness not established in this review.",
      "sources": [
        "fedidss"
      ],
      "capabilities": [
        "data",
        "storage"
      ],
      "parent": "IDSS Category II",
      "status": "Funded transition; detailed onboarding unverified"
    },
    {
      "id": "ood",
      "name": "Open OnDemand + JupyterHub / BinderHub",
      "category": "enabler",
      "funding": "Open OnDemand federal-supported development; site funds operation",
      "kind": "Browser application delivery software",
      "route": "Use provider-installed portal or deploy on approved compute",
      "fit": "Notebooks, RStudio, VS Code, remote desktops and visual/science gateways.",
      "boundary": "Software is not hardware/time allocation. Only Open OnDemand’s funding is evidenced here; no claim that every JupyterHub installation is federally funded. Operators and backing resources remain necessary.",
      "sources": [
        "fedood",
        "fedoodfund",
        "fedjetstream",
        "fednrp"
      ],
      "capabilities": [
        "teach",
        "cloud"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "workflows",
      "name": "Pegasus / HTCondor / ACCESS Pegasus",
      "category": "enabler",
      "funding": "NSF ACCESS/PATh-supported software and services",
      "kind": "Workflow orchestration and job execution products",
      "route": "Hosted ACCESS Pegasus with active allocation; OSG/PATh tools",
      "fit": "Portable multi-step pipelines, task sweeps, data staging and transparent execution.",
      "boundary": "Uses existing allocations/pools; does not create another pool. Software portability is not data preservation or a substitute for operations.",
      "sources": [
        "fedpegasus",
        "fedosg",
        "fedpath"
      ],
      "capabilities": [
        "batch",
        "data"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "identity",
      "name": "CILogon / Globus",
      "category": "enabler",
      "funding": "Historical federal development/integration; current operations include subscriptions",
      "kind": "Identity, authorization and research data movement",
      "route": "Institution/provider identity configuration and endpoint support",
      "fit": "Campus login, role-based access, data transfer and cross-site workflow connections.",
      "boundary": "Basic services may be free while advanced support/sharing costs. Neither supplies a compute/storage allocation; CILogon says operations shifted to subscriptions in 2019.",
      "sources": [
        "fedcilogon",
        "fedglobus"
      ],
      "capabilities": [
        "cloud",
        "data",
        "storage"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "gateways",
      "name": "Science gateways / SGX3",
      "category": "enabler",
      "funding": "NSF-funded SGX3; substantial operations can be client-funded",
      "kind": "Gateway expertise and supported interfaces",
      "route": "Gateway consultation/community resources; project-specific gateway accounts",
      "fit": "Usable domain applications and teaching interfaces beyond raw HPC command lines.",
      "boundary": "Limited funded planning/UX/training differs from paid development/hosting/operations. A gateway catalog is not a universal free app-hosting plan.",
      "sources": [
        "fedsgx3"
      ],
      "capabilities": [
        "teach",
        "cloud"
      ],
      "parent": "",
      "status": "Documented service; approval/limits apply"
    },
    {
      "id": "idss",
      "name": "IDSS program",
      "category": "funding",
      "funding": "NSF",
      "kind": "Operator grant program, not a compute account",
      "route": "Institutional proposal / funded project collaboration",
      "fit": "National data-service development, transition to operations and planning.",
      "boundary": "Six named 2026 projects have different services/stages; the grant does not award every instructor CPU/GPU hours.",
      "sources": [
        "fedidssprogram",
        "fedidss"
      ],
      "capabilities": [
        "data",
        "fund"
      ],
      "parent": "",
      "status": "Program / awards; not end-user capacity"
    },
    {
      "id": "ccstar",
      "name": "Campus Cyberinfrastructure (CC*)",
      "category": "funding",
      "funding": "NSF",
      "kind": "Campus/regional infrastructure grants",
      "route": "Institutional funding process; actual local award/service rules",
      "fit": "Campus compute, networking, data storage/digital archives and integration.",
      "boundary": "Current page has no upcoming due dates and awaits new guidelines. Not an open national classroom account; sharing, operation and stewardship have to be funded.",
      "sources": [
        "fedccstar"
      ],
      "capabilities": [
        "cloud",
        "storage",
        "fund"
      ],
      "parent": "",
      "status": "Program; current page awaiting new publication"
    },
    {
      "id": "mri",
      "name": "Major Research Instrumentation (MRI)",
      "category": "funding",
      "funding": "NSF",
      "kind": "Multi-user research instrumentation grants",
      "route": "Institutional limited-submission/award process",
      "fit": "Appropriate shared instrumentation and computing-linked research training.",
      "boundary": "Current solicitation, instrument eligibility and campus proposal limits matter. A funding route is not a ready device/GPU account; this map does not assert an open submission window.",
      "sources": [
        "fedmri"
      ],
      "capabilities": [
        "fund"
      ],
      "parent": "",
      "status": "Program; review current published call"
    },
    {
      "id": "aihubs",
      "name": "State / Regional AI Infrastructure Hubs",
      "category": "funding",
      "funding": "NSF pays coordination/workforce/education; partners pay infrastructure",
      "kind": "Mixed-funding consortium program",
      "route": "Institution/state/regional consortium; actual award and resource terms",
      "fit": "Faculty course development, facilitators, shared AI-service coordination and regional scale.",
      "boundary": "NSF does not acquire/fund the compute infrastructure under this solicitation. Partners must sustain it; no awarded Arizona hub is verified here.",
      "sources": [
        "fedaihubs"
      ],
      "capabilities": [
        "teach",
        "fund"
      ],
      "parent": "",
      "status": "Solicitation/program; no local award assumed"
    },
    {
      "id": "workforce",
      "name": "SCIPE / CyberTraining / ACCESS facilitation",
      "category": "funding",
      "funding": "NSF professional/training programs + service support",
      "kind": "People, skills and support layer",
      "route": "Existing facilitator/training services or institutional grant pathway",
      "fit": "Support ownership, instructor onboarding, reusable course materials and train-the-trainer capacity.",
      "boundary": "Grant programs do not promise staff for every instructor. Current call status and actual support agreements must be checked; college effort is still required.",
      "sources": [
        "fedscipe",
        "fedcybertraining",
        "fedaccess"
      ],
      "capabilities": [
        "teach",
        "fund"
      ],
      "parent": "",
      "status": "Support services + funding programs"
    }
  ],
  "federal_platform_gaps": [
    {
      "title": "Many small jobs, not one big notebook",
      "body": "Add OSPool/PATh and checkpointed workflow execution for corpus processing, parameter sweeps and independent model evaluation."
    },
    {
      "title": "Managed teaching environments",
      "body": "Map CloudBank Classroom, Jetstream2 course images, NRP hubs and eligible CyVerse apps separately from raw GPU allocations."
    },
    {
      "title": "Inference as an API",
      "body": "NRP-hosted model APIs and requested NAIRR model/software access can support assignments without every student operating a GPU server."
    },
    {
      "title": "Data-first services",
      "body": "MESA, NDP, FabAID, iDLab, BRIDGE and NSDF supply discovery, metadata, reusable workflows and cross-site access; their grants are not all compute accounts."
    },
    {
      "title": "Object storage, caches and movement",
      "body": "OSN stores active data; OSDF/Pelican distributes it; Globus moves it. None automatically provides archive permanence or all operating costs."
    },
    {
      "title": "Systems, networks and specialized hardware",
      "body": "Chameleon, CloudLab and FABRIC support systems/edge/distributed experiments and specialized hardware. Use only when the testbed purpose matches."
    },
    {
      "title": "Campus delivery and staff funding",
      "body": "Open OnDemand, gateways, identity, orchestration, grant-funded facilitators and college operators make allocations teachable. Compute awards alone do not fund all of them."
    },
    {
      "title": "Domain facilities and mixed funding",
      "body": "DOE, NASA and NIH add mission-specific routes. CC*/MRI can fund campus capability; AI Hubs and CyVerse/UArizona show why state, subscription and federal support need separate labels."
    }
  ],
  "federal_extension": {
    "checked_at": "2026-10-12",
    "discovery_queries": 34,
    "requested_result_slots": 179,
    "search_areas": [
      "allocation/throughput capacity",
      "cloud/classroom/testbeds",
      "IDSS integrated data",
      "domain federal facilities",
      "data/workflow/identity products",
      "institutional grant and workforce routes"
    ],
    "new_source_keys": [
      "fedaccess",
      "fednairr",
      "fedosg",
      "fedospool",
      "fedpath",
      "fednrp",
      "fednrpllm",
      "fedjetstream",
      "fedjetstreamfund",
      "fedcloudbank",
      "fedchameleon",
      "fedcloudlab",
      "fedcloudlabfund",
      "fedfabric",
      "fedncar",
      "feddoe",
      "fednasa",
      "fedanvil",
      "fedanvilcost",
      "fedidss",
      "fedidssprogram",
      "fedmesa",
      "fedndp",
      "fedfabaid",
      "fedidlab",
      "fedbridge",
      "fedosn",
      "fedosnaccess",
      "fedosnpolicy",
      "fedosdf",
      "fedood",
      "fedoodfund",
      "fedpegasus",
      "fedcilogon",
      "fedglobus",
      "fedsgx3",
      "fedccstar",
      "fedmri",
      "fedaihubs",
      "fedscipe",
      "fedcybertraining",
      "fedcyverse"
    ],
    "platform_families": 32,
    "idss_projects": 6,
    "missing_categories": 8,
    "method": "Exa discovery and primary federal/provider documents with targeted direct-live checks. Requested slots are not independently verified source counts. No accounts, allocations, GPU calls, cloud charges, grant submissions or private-project materials were used.",
    "boundaries": [
      "Federal development funding is different from current operations or no-cost user access.",
      "ACCESS providers, NRP/Nautilus and OSG/OSPool/OSDF must not be double-counted.",
      "IDSS projects have distinct integration roles and maturity; no generic user quota is implied.",
      "Arizona TRIF is state funding; AI Infrastructure Hubs require partners to finance compute.",
      "Allocated service storage is not automatic archival preservation."
    ]
  },
  "classroom_assessment": {
    "title": "From federal resources to a classroom service",
    "checked_at": "2026-10-12",
    "status": "Documentation assessment and illustrative capacity model; not an awarded or tested classroom service",
    "decision": "Use ACCESS for the large CPU and GPU allocation and the classroom pilot. Use campus UITS/AWS only to test CPU components, and free GPU resources to benchmark workloads before piloting. Size the ACCESS request from measured demand; consider CloudBank through ACCESS only if its managed service can meet the confirmed requirements.",
    "representative_courses": [
      {
        "name": "Data science",
        "students": 40,
        "work": "Python/R data analysis, reproducible notebooks, small-model CPU labs; optional grouped GPU experiment.",
        "fallback": "Small CPU datasets and downloadable environment/materials."
      },
      {
        "name": "Library and information science",
        "students": 40,
        "work": "Metadata normalization, collection analysis, public-corpus text processing, reproducible workflow and repository export.",
        "fallback": "Local small-record workflow and institution-supported storage; no private patron or grade records on batch resources."
      }
    ],
    "providers": [
      {
        "id": "cloudbank",
        "name": "CloudBank Classroom",
        "role": "Conditional managed alternative",
        "fit": "Managed Python/R notebooks and browser IDEs for both courses.",
        "gate": "Confirm managed versus broker service, CPU/GPU availability, actual student limits, accounting, course provisioning and exports; previous CPU-only concept is conditional.",
        "limits": "No published per-student specification establishes our fit. Fall 2026 GPU pilot is full. General ACCESS route exists; NAIRR Classroom is a separate AI-course route.",
        "sources": [
          "assesscloudbank",
          "assesscbgpu",
          "assesscbscope",
          "access"
        ]
      },
      {
        "id": "jetstream",
        "name": "Jetstream2 through ACCESS",
        "role": "ACCESS implementation candidate for CPU + GPU",
        "fit": "Own course images, JupyterHub, isolated teaching web/database services and reviewed benchmark workers.",
        "gate": "Named operator and backup; CPU/GPU/storage exchange; adequate concurrent quota; tested image upgrade, shutdown, restore and end-of-term export.",
        "limits": "Always-on instances dominate credits. Allocation expiry and overdraw can delete resources after thirty days. Storage replication is not independent backup.",
        "sources": [
          "assessjetflavors",
          "assessjetcredit",
          "assessjetquota",
          "assessjetstorage",
          "assessjetexpiry"
        ]
      },
      {
        "id": "nrp",
        "name": "NRP hosted hub / private hub / API",
        "role": "Conditional GPU and API module",
        "fit": "Notebook canary, grouped GPU demonstrations, model APIs; a primary hub only after class-capacity confirmation.",
        "gate": "Confirm hosted/private hub policy, roster and quota, 20 GB home increase from default 5 GB, GPU access and storage/export agreement.",
        "limits": "Shared GPU scheduling; ordinary pods have six-hour rules with exceptions. Unused volumes may be purged after six months. APIs are inference products, not training allocations.",
        "sources": [
          "assessnrpedu",
          "assessnrphub",
          "assessnrppolicy",
          "fednrpllm"
        ]
      },
      {
        "id": "mesa",
        "name": "MESA + CyVerse",
        "role": "Data/workflow component",
        "fit": "MLIS metadata cleanup, collection analysis, reproducibility and portable outputs using public/synthetic records.",
        "gate": "Verify each UArizona account’s Pro/TRIF benefit and class approval; rehearse the exact app Save & Exit, restart and export path.",
        "limits": "MESA reads existing CyVerse quota. Basic 200 CPU core-hours/year is below this modeled 240 per student (300 with allowance); 5 GB is below modeled 20 GB. Pro is 25,000 units/4 TB/four concurrent jobs per account, not a pooled classroom entitlement.",
        "sources": [
          "assessmesaportal",
          "assessmesaapps",
          "assessmesasave",
          "fedcyverse",
          "assesscyteach"
        ]
      },
      {
        "id": "ospool",
        "name": "OSPool education program",
        "role": "Optional batch component",
        "fit": "Independent public-corpus OCR/text analyses and parameter sweeps; teach throughput with a short guest exercise first.",
        "gate": "Rehearse a workflow under four hours; retain outputs externally. Arrange full accounts and event/end dates for semester use.",
        "limits": "Guest timeout/file loss; full accounts typically expire after event. Interruptible fair share cannot promise synchronous GPU access or assignment completion times. No sensitive/proprietary inputs.",
        "sources": [
          "assessospedu",
          "assessosppolicy"
        ]
      },
      {
        "id": "path",
        "name": "PATh Facility",
        "role": "Research route to clarify",
        "fit": "MESA-aligned research ensembles where program eligibility and credits are confirmed.",
        "gate": "Ask whether IDSS/MESA is eligible and what work the award can cover; prototype before any full-credit request.",
        "limits": "IDSS is not explicitly in the published affiliated-program list. No eligibility or credits verified. Keep required teaching off this route pending confirmation.",
        "sources": [
          "assesspathelig",
          "assesspathcredits",
          "fedpath"
        ]
      },
      {
        "id": "college",
        "name": "College + Libraries operations",
        "role": "Required continuity layer",
        "fit": "Support ownership, identity, roster/grade handling, independent backups, durable hosting/databases and archival selection.",
        "gate": "Approve owners, operating budget, support coverage, data classification/retention, tested second-host restore and learner exports.",
        "limits": "Federal compute does not pay every operating cost or turn working data into preservation. A lab demonstration cannot establish semester service readiness.",
        "sources": [
          "access",
          "assessjetstorage",
          "assessnrppolicy",
          "assessosppolicy"
        ]
      }
    ],
    "assumptions": {
      "courses": 2,
      "students_per_course": 40,
      "seats": 80,
      "weeks": 15,
      "active_hours_per_week": 8,
      "cpu_per_student": 2,
      "ram_gb_per_student": 6,
      "home_gb_per_student": 20,
      "shared_gb_per_course": 200,
      "controller_vcpu": 4,
      "controller_ram_gb": 15,
      "allowance_percent": 25,
      "shared_worker_vcpu": 64,
      "shared_worker_ram_gb": 250,
      "gpu_students": 40,
      "gpu_group_size": 5,
      "gpu_labs": 6,
      "gpu_hours_per_lab": 2,
      "gpu_slot_su_per_hour": 16,
      "gpu_slot_vram_gb": 10,
      "backup_daily_change_percent": 1,
      "backup_history_days": 30
    },
    "scenarios": [
      {
        "id": "burst",
        "name": "Stopped between sessions",
        "student_su": 24000,
        "controller_su": 12600,
        "cpu_su": 36600,
        "peak_cpu_vcpu": 164,
        "peak_ram_gb": 495,
        "workers": null,
        "boundary": "Ideal lower bound for individually stopped/autoscaled 2-vCPU instances. Shared workers have rounding, idle tail, image pulls and orchestration overhead; measure actual billing."
      },
      {
        "id": "dedicated",
        "name": "Student VMs always on",
        "student_su": 504000,
        "controller_su": 12600,
        "cpu_su": 516600,
        "peak_cpu_vcpu": 164,
        "peak_ram_gb": 495,
        "workers": 80,
        "boundary": "80 m3.small student instances plus one m3.quad controller, running 24 hours/day for 15 weeks; includes 25% spending allowance."
      },
      {
        "id": "shared",
        "name": "Shared hub workers always on",
        "student_su": 604800,
        "controller_su": 12600,
        "cpu_su": 617400,
        "peak_cpu_vcpu": 196,
        "peak_ram_gb": 765,
        "workers": 3,
        "boundary": "Three m3.2xl workers sized to cover 160 student vCPU and 480 GB RAM, plus one m3.quad controller; placement and hub performance remain untested."
      }
    ],
    "gpu_model": {
      "slots": 8,
      "instance_hours": 96,
      "instance_hours_with_allowance": 120,
      "su": 1920,
      "peak_gpu_resource_vcpu": 64,
      "peak_gpu_resource_ram_gb": 240,
      "vram_per_slot_gb": 10,
      "boundary": "Eight g3.medium fractional A100 instances shared by groups of five; 120 planned fractional-instance hours is not 120 full-GPU hours. Separate GPU exchange/permission and networking required."
    },
    "storage_model": {
      "working_gb": 2000,
      "backup_gb": 2600,
      "boundary": "Decimal GB/TB. Working data = 80×20 GB homes + 2×200 GB shared. Independent backup estimate = one working copy + 30 days of 1% changed data/day; excludes compression/deduplication, root disks, images, logs and snapshots. This is not a storage quote or approved retention schedule."
    },
    "allocation_interpretation": "Jetstream2-only modeled totals including optional GPU: 38,520 (ideal burst), 518,520 (always-on student VMs), 619,320 (always-on shared workers). CPU and GPU exchanges remain separate. Explore initial ceiling is 200,000 credits (half of 400,000); Discover initial ceiling is 750,000 (half of 1,500,000). A measured small canary can start with Explore. The two always-on models fit within the Discover initial ceiling on paper; approval, actual overhead and provider capacity remain unverified. CloudBank requests use its provider-specific Explore Classroom route, not this VM sizing model.",
    "gates": [
      {
        "title": "Scope and owners",
        "when": "Before any class dependency",
        "owner": "Course lead + Greg",
        "evidence": "Choose real course/syllabus, data classification, operator and backup; fund support and durable storage for the whole term.",
        "stop": "No named owner or approved service period.",
        "status": "Not yet tested/confirmed"
      },
      {
        "title": "Provider and access",
        "when": "6–8 weeks before term (proposed)",
        "owner": "Service owner + provider liaison",
        "evidence": "Confirm approved route, course eligibility, actual roster/login, quotas, images, costs, GPU status and data/expiry terms.",
        "stop": "Unresolved 80-seat provisioning or missing account/award.",
        "status": "Not yet tested/confirmed"
      },
      {
        "title": "Component canary",
        "when": "4–6 weeks before term (proposed)",
        "owner": "One instructor + up to ten consenting volunteers",
        "evidence": "Run one representative DS assignment and one public-records MLIS workflow; use a fixed image and retain launch, save/restart/export evidence.",
        "stop": "Core software or save/export path fails.",
        "status": "Not yet tested/confirmed"
      },
      {
        "title": "Capacity rehearsal",
        "when": "2–4 weeks before term (proposed)",
        "owner": "Operator + teaching assistants",
        "evidence": "Test approved peak concurrency with provider permission; measure queue/spawn latency, CPU/RAM, storage and actual billed idle time. Suggested p95 login-to-workspace target: five minutes, to negotiate with provider.",
        "stop": "Unmeasured or insufficient class capacity; credit/storage forecast exceeds award.",
        "status": "Not yet tested/confirmed"
      },
      {
        "title": "Recovery and teach-out",
        "when": "Before course admission",
        "owner": "Primary and backup operators + Libraries liaison",
        "evidence": "Restore files and service onto a second host; verify cross-student isolation, learner export and grade reconciliation. Proposed RPO 24 hours/RTO one business day require measurement.",
        "stop": "No independent restorable backup or viable offline/CPU fallback.",
        "status": "Not yet tested/confirmed"
      },
      {
        "title": "Two-course pilot",
        "when": "One approved 15-week term",
        "owner": "Course leads + operator",
        "evidence": "80 illustrative seats; required work CPU-capable. GPU/OSPool/MESA modules only after their own gate passes; collect support time, billing and instructional outcomes.",
        "stop": "Unsafe access, recurring capacity failure or no funded support.",
        "status": "Not yet tested/confirmed"
      },
      {
        "title": "Retire or renew",
        "when": "Decision at least 30 days before expiry (proposed)",
        "owner": "Course leads + service owner + Libraries",
        "evidence": "Export students/grades, reconcile submissions, deposit approved public outputs with Libraries; confirm next-term project/renewal route and verify deletion.",
        "stop": "Assuming automatic education extension or treating grace periods as service funding.",
        "status": "Not yet tested/confirmed"
      }
    ],
    "provider_questions": {
      "CloudBank Classroom": [
        "Can the general ACCESS Classroom route support two non-AI/AI-mixed courses and 80 seats with 2 vCPU/6 GB/20 GB per seat? What are the actual limits and credit/budget terms?",
        "Which packages, version pinning, notebook distribution, grading/export and account-isolation features are supported?",
        "What are roster provisioning, CILogon/MFA, support hours, independent export/backup and shutdown dates?",
        "How does the one-year renewal text align with ACCESS education-term/no-typical-extension policy? Is next term a renewal or a new request?",
        "Please confirm current GPU pilot status and the 2027 request window; required activities will remain CPU-capable."
      ],
      "Jetstream2": [
        "Confirm CPU/GPU/storage exchanges, 164-vCPU dedicated or 196-vCPU shared peak quota, applicable flavor availability and required public/private network quotas.",
        "Can 2 TB working data plus additional root/image/log/snapshot space be approved? Which shared home/filesystem architecture fits the workload and policy?",
        "Review a hub or VM autoscaling/shutdown design and independent offsite backup/restore plan; verify classroom identity and grading service rules.",
        "What renewal/new-course request, warning and deletion process applies to the exact awarded project?"
      ],
      "NRP": [
        "For hosted versus private hubs, what class quota, GPU configuration, roster approval, software/image and support arrangements apply?",
        "Can 80 homes have 20 GB each? What session, exception, persistence and end-of-course export rules apply to this particular hub?",
        "Which model/API quotas and data-handling terms apply? What GPU fallback is acceptable when shared capacity is busy?"
      ],
      "MESA / CyVerse": [
        "Can every eligible UArizona student receive the documented Pro/TRIF benefit, and what class/workshop enrollment limits and maintenance windows apply?",
        "How are per-user CPU units, concurrency and storage charged across the selected portal app? Is GPU permission available for this specific assignment?",
        "Demonstrate saving under data-store, Save & Exit, restarting, export and independent restoration for the chosen metadata app."
      ],
      "OSPool": [
        "Does the proposed public-data workflow fit the guest four-hour session? Confirm full roster, account dates, fair-share behavior, job/I/O sizes and training-policy requirements for semester use.",
        "Which packaging, checkpointing, licensed-software or data-transfer restrictions apply? Agree on outputs retained elsewhere and a CPU/local fallback."
      ],
      "PATh / NSF program officer": [
        "Is IDSS award 2632685/MESA eligible under the affiliated-program policy, and can this particular research/teaching workload be covered?",
        "If eligible, what startup prototype and job specification are needed for a full credit request, and which program officer should receive it?"
      ],
      "College / Libraries": [
        "What institutional data/export/retention and accessibility approvals are required for the exact components?",
        "Which support/recovery tasks fit Greg’s four hours/week and separate TA/lead commitments?",
        "Which necessary paid needs fit an eligible confirmed EduCloud grant, and who provides distinct backup coverage before classroom launch?"
      ]
    },
    "operations_model": "Available cash budget is zero. Work needing paid support, storage, hosting, development or recovery must have a confirmed eligible EduCloud grant and allowable work package before spending. ACCESS is CPU/GPU resource allocation, not payroll. No grant award is asserted. Existing campus test access and free GPU resources must stay within their authorized no-purchase scope. Greg has four hours/week total. Separate potential TA effort is 102 hours and additional course-lead effort 70 hours across the modeled term; no course-lead salary. No college sponsor/finance role. Distinct backup/support is unfilled until confirmed.",
    "degree_expansion": "The first canary covers DS and MLIS. Notebook-compatible MS/BS Information Science and PhD projects can reuse the route after workload review. ETS and Information Science and Arts need public-data/browser workflows and durable exhibit hosting. Game Design/Development require a separate engine, graphics, licensing and desktop-access assessment; this notebook pilot does not establish Unreal/Unity or Windows support. Cyber degrees remain excluded.",
    "evidence_sources": [
      "assesscloudbank",
      "assesscbgpu",
      "assesscbscope",
      "assessjetflavors",
      "assessjetcredit",
      "assessjetquota",
      "assessjetstorage",
      "assessjetstoragecap",
      "assessjetexpiry",
      "assessnrpedu",
      "assessnrphub",
      "assessnrppolicy",
      "assessospedu",
      "assessosppolicy",
      "assesspathelig",
      "assesspathcredits",
      "assessmesaportal",
      "assessmesaapps",
      "assessmesasave",
      "assesscyteach",
      "access",
      "types",
      "budget",
      "fedcyverse",
      "fednrpllm"
    ],
    "method": "16 discovery queries requested 78 result slots; these are discovery counts, not independent evidence counts. Twenty new primary-source ledger records plus reused program/provider records support a qualitative fit assessment. Public documentation was read, with saved extracts and targeted HTTP access checks. No signed-in entitlement, actual compute workload, model API, cloud billing, allocation request, provider message or grant submission was executed. Current user-directed route: campus UITS/AWS is for CPU component testing only; free GPU benchmarks precede piloting; ACCESS covers the planned CPU and GPU classroom allocation. Existing capacity models remain illustrative."
  },
  "pilot_program_summary": {
    "status": "Discussion draft · no award, staffing or budget approved",
    "entrypoint": "program.html",
    "request": "access-request.html",
    "plan": "pilot-plan.html",
    "budget": "budget.html",
    "readiness": "readiness.html",
    "sources": [
      "assesscloudbank",
      "pilotaccessprepare",
      "access",
      "assesscbgpu",
      "assesscbscope",
      "pilotuahpcclass",
      "pilotuarental",
      "pilotuardas",
      "pilotuatier2",
      "pilotualibbackup",
      "fedcyverse",
      "pilotinfo521",
      "pilotlis671"
    ],
    "checks": 13,
    "course_seats": 80,
    "course_candidates": [
      "INFO 521",
      "LIS 671"
    ],
    "decision": "Use ACCESS for the large CPU and GPU allocation and the classroom pilot. Use campus UITS/AWS only to test CPU components, and free GPU resources to benchmark workloads before piloting. Size the ACCESS request from measured demand; consider CloudBank through ACCESS only if its managed service can meet the confirmed requirements.",
    "benchmark": "gpu-benchmark.html",
    "available_cash": 0,
    "greg_weekly_hours": 10,
    "hours_only": true,
    "benchmarks": "classroom-benchmarks.zip"
  },
  "classroom50_assessment": {
    "checked": "2026-10-13",
    "status": "Workable successor to assess; no signed-in canary or adoption completed",
    "verdict": "Classroom 50 is a workable successor for assignment management. It is not something we own, and it does not increase GitHub Codespaces free compute.",
    "rows": [
      [
        "Assignment workflow",
        "Individual/group assignments, starter repositories, submission tracking, feedback and autograding.",
        "Rehearse a complete DS and MLIS assignment, including manual feedback and LMS grade reconciliation."
      ],
      [
        "Ownership and control",
        "Fifty Foundation maintains the project and hosted app. Course repositories and configuration can be in our own GitHub organization.",
        "Name two organization owners; export course configuration, rosters, submissions and scores to approved destinations."
      ],
      [
        "Hosting and upkeep",
        "Hosted app + GitHub dependencies; the CLI runs locally. GPL-3.0 permits a self-hosted option.",
        "Self-hosting still needs authentication/proxy review, updates and recovery. No UArizona deployment or funded operator is assumed."
      ],
      [
        "Codespaces compute",
        "Personal Free: 120 core-hours / 15 GB-month; Pro: 180 core-hours / 20 GB-month each month.",
        "At two cores, approximately 60 or 90 active hours before storage or other limits. Organization plans have no included Codespaces quota."
      ],
      [
        "Grading compute",
        "GitHub Actions is a separate service and allowance.",
        "Confirm billing owner and zero-spend controls; test quota exhaustion and a non-Actions submission/grading fallback."
      ],
      [
        "ACCESS relationship",
        "ACCESS remains the proposed CPU + GPU classroom compute route.",
        "Use portable Git/notebook assignments on approved ACCESS environments. An automated Classroom 50-to-ACCESS grading connection remains unbuilt and unverified."
      ]
    ],
    "checks": [
      "Confirm the specific organization has Team/Enterprise coverage through an approved existing or education benefit; do not buy an upgrade.",
      "With synthetic identities and data, rehearse invitation, assignment creation, student submission, autograding, instructor override and LMS grade reconciliation.",
      "Review GitHub app permissions, browser tokens, default external proxy traffic, private repository visibility and roster/score retention before student data.",
      "Exercise Codespaces quota exhaustion and Actions allowance exhaustion separately; demonstrate a portable local/ACCESS workflow without requiring student payment.",
      "Export and restore repositories, configuration and submission/grade receipts; document distinct owners, maintainer outage and end-of-term removal.",
      "Measure setup and support time inside Greg’s existing four-hour weekly envelope, with TA/course-lead time separate. Defer if support cannot fit."
    ],
    "sources": [
      "classroom50",
      "classroom50model",
      "classroom50requirements",
      "classroom50hosting",
      "classroom50actions",
      "codespaces",
      "students"
    ]
  },
  "classroom50_extension": {
    "checked": "2026-10-13",
    "sources_added": 5,
    "source_records": 163,
    "resource_comparisons": 14,
    "scope": "Documentary assessment and visual redesign. No signed-in adoption, migration, provider benchmark or ACCESS integration performed.",
    "earlier_policy_checks": "Retained per-source dates; Classroom 50 and personal Codespaces/student benefits checked October 13.",
    "design_reference": "https://infosci.arizona.edu/",
    "design_colors": "https://marcom.arizona.edu/brand-guidelines/colors",
    "typography": "Existing bundled open-license IBM Plex Sans and Barlow Condensed; no licensed Proxima Nova fonts redistributed."
  },
  "serverless_assessment": {
    "checked": "2026-10-16",
    "verdict": "Modal is a promising conditional instructor benchmark option, but its payment requirement and three-seat Starter workspace do not fit a no-card, zero-cash class default. Keep Kaggle/free Colab as the existing pre-pilot GPU routes, then replay on ACCESS CPU + GPU.",
    "status": "Documentation reviewed; no account, card, cloud workload, credit redemption, grant application or provider message performed.",
    "platforms": [
      {
        "id": "modal",
        "name": "Modal",
        "kind": "Conditional recurring credit",
        "allowance": "$30/workspace/month; three Starter seats",
        "work": "Python/container GPU jobs, controlled inference, fine-tuning and notebooks",
        "fit": "DS: a small pinned training/inference run. MLIS: public-corpus OCR, embeddings or retrieval experiments.",
        "limits": "Payment method required; GPU, CPU and memory share credits. Set explicit usage and net-spend limits. Shared Endpoints tokens cost extra. Academic grant is an application, not funding in hand.",
        "sources": [
          "modalpricing",
          "modalbilling",
          "modalbudgets",
          "modalacademic"
        ]
      },
      {
        "id": "beam",
        "name": "Beam",
        "kind": "Paid / historical free claim",
        "allowance": "$20/month Developer includes $20 credits; one seat",
        "work": "Python serverless GPU jobs, sandboxes and endpoints",
        "fit": "DS/MLIS component hosting if funded; open-source runtime may warrant later engineering assessment.",
        "limits": "June free-$30 comparison is stale against current direct plan table. Prepaid deployments need credits; warm/idle settings can bill. BYOC is not free compute.",
        "sources": [
          "beampricing",
          "beambilling",
          "beamoldoffer"
        ]
      },
      {
        "id": "cerebrium",
        "name": "Cerebrium",
        "kind": "Paid usage / possible trial",
        "allowance": "Free Hobby subscription; no recurring compute credit verified",
        "work": "Containerized CPU/GPU inference and batch processing",
        "fit": "DS model serving; MLIS public-corpus embeddings or transcription.",
        "limits": "Free plan fee and included storage do not make execution free. Trials are discretionary/time-limited and may transition to paid billing.",
        "sources": [
          "cerebriumpricing",
          "cerebriumtrial"
        ]
      },
      {
        "id": "paperspace",
        "name": "Paperspace Gradient",
        "kind": "Bounded free machines",
        "allowance": "Free CPU / M4000 GPU subject to availability; 5 GB",
        "work": "Browser notebook experiments on an older GPU",
        "fit": "Small DS training and public/synthetic MLIS corpus notebooks.",
        "limits": "Six-hour free-session maximum, one-hour idle stop, one free notebook at once; free notebooks are public. Check old GPU/runtime fit and actual signup/payment requirements.",
        "sources": [
          "paperspacefree",
          "paperspacefeatures",
          "paperspacevisibility"
        ]
      },
      {
        "id": "lightning",
        "name": "Lightning AI",
        "kind": "Promotional / account-dependent",
        "allowance": "One free CPU Studio; GPU credit amount and expiry vary",
        "work": "CPU development followed by a short credited GPU run",
        "fit": "DS/MLIS notebook preparation and small tests within actual credit balance.",
        "limits": "Four-hour CPU restart boundary; first 10 GB storage free. Do not promise a fixed monthly GPU grant or count paid academic discounts as free compute.",
        "sources": [
          "lightningbilling",
          "lightningstudents"
        ]
      },
      {
        "id": "saturn",
        "name": "Saturn Cloud",
        "kind": "Unconfirmed free lead",
        "allowance": "Landing page advertises 150 compute hours/month, no card",
        "work": "Notebook/GPU environment if current free eligibility is confirmed",
        "fit": "Potential DS and MLIS notebook alternative, pending an authorized account check.",
        "limits": "150 compute hours is not verified as 150 GPU-hours. Current pricing emphasizes paid hosted resources; reconcile device allowance, storage, inactivity and new-account access.",
        "sources": [
          "saturntry",
          "saturnpricing"
        ]
      },
      {
        "id": "runpod",
        "name": "Runpod",
        "kind": "Paid comparison",
        "allowance": "Prepaid compute; no recurring free allocation verified",
        "work": "GPU Pods, containers and serverless endpoints",
        "fit": "Funded DS/MLIS jobs with explicit checkpoint and external export.",
        "limits": "Pod launch needs credit; stopped storage still bills and can be deleted when funds run out. Not a zero-cash fallback or preservation repository.",
        "sources": [
          "runpodbilling"
        ]
      },
      {
        "id": "replicate",
        "name": "Replicate",
        "kind": "Limited model trial",
        "allowance": "Select-model demonstrations, then billing",
        "work": "Managed model inference rather than a general GPU notebook",
        "fit": "DS model-behavior comparison; MLIS controlled metadata/transcription demonstrations.",
        "limits": "No stable free monthly grant verified. Private deployments can bill setup and idle time. A model API does not replace arbitrary CUDA training.",
        "sources": [
          "replicatebilling"
        ]
      },
      {
        "id": "hfinference",
        "name": "Hugging Face Inference Providers",
        "kind": "Paid API on Free accounts",
        "allowance": "No included monthly API credits for Free users",
        "work": "Routed model APIs; paid credits/subscriptions",
        "fit": "DS inference evaluation and MLIS embeddings/metadata tasks when funded.",
        "limits": "Separate from ZeroGPU/Spaces. Current API pricing overrides older free-credit snippets; no historical change date established.",
        "sources": [
          "hfinferencepricing"
        ]
      }
    ],
    "modal_rates": {
      "credit": 30,
      "t4_per_second": 0.000164,
      "h100_per_second": 0.001097,
      "cpu_physical_core_per_second": 1.31e-05,
      "memory_gib_per_second": 2.22e-06,
      "physical_cores": 2,
      "memory_gib": 8
    },
    "checks": [
      "Use only an approved institutional payment arrangement or explicitly confirmed grant exception; require no personal/student card. No spending is authorized.",
      "Confirm current grant/credit eligibility, duration, three-seat workspace fit, allowed products, data destinations and provider-reviewed class/account terms. Never multiply one workspace allowance by 80 seats.",
      "Before any authorized run, review usage budget and net-charge spend limit separately; disable excluded paid APIs, unneeded schedules, warm containers and automatic purchasing. Verify the actual stop behavior.",
      "Pin code/image/data; measure build/start/warm time, CPU, GPU, memory, device/VRAM, preemption, checkpoints, outputs and charged units. API results do not measure a custom CUDA training workload.",
      "Export code, environments and results outside the vendor; retain authoritative grades/rosters in approved institutional systems. Replay representative CPU/GPU workloads on awarded ACCESS resources before class.",
      "Keep all added setup/support inside Greg’s four-hour weekly envelope, with TA/lead effort separate. Defer the option if funding, support or privacy conditions fail."
    ],
    "methods": "Eight Exa searches requested 55 result slots across serverless credits, notebook alternatives and inference billing. These are not 55 independent validated sources. Direct primary pages were checked; extraction omissions and conflicting older marketing are retained in the local audit."
  },
  "serverless_extension": {
    "checked": "2026-10-16",
    "new_sources": 18,
    "source_records": 181,
    "resource_comparisons": 22,
    "scope": "Documentation and current-account eligibility boundaries, not a provider benchmark or cloud adoption."
  },
  "report_overview": {
    "updated": "2026-10-20",
    "core_statement": "What we have previously relied on can no longer be guaranteed",
    "interpretation": "Free resources still support useful teaching. The selected history shows repeated withdrawal of classroom tools, shorter free-use windows, tighter team/storage limits and more metered or conditional access. A previous semester’s setup is no longer a sufficient continuity plan.",
    "boundary": "This is an interpretation of selected documented changes, not a census of providers or a measured decline in total free compute. GitHub Free repositories and base free Colab remain available. New and surviving options coexist with the losses.",
    "readiness": "Provider availability is not classroom readiness. All 13 admission checks remain planned; no provider benchmark, allocation award or classroom deployment is established here.",
    "available": [
      {
        "id": "cpu",
        "title": "CPU notebooks and development",
        "status": "Available with limits",
        "status_key": "bounded",
        "names": "GitHub Codespaces · Binder",
        "fit": "Code, data cleaning, small analyses and reproducible notebook exercises.",
        "boundary": "Codespaces has monthly personal-account compute/storage limits; Binder uses shared, temporary sessions. Neither reserves a class.",
        "sources": [
          "codespaces",
          "binder"
        ],
        "detail": "classroom-resources.html"
      },
      {
        "id": "gpu",
        "title": "Free GPU experiments",
        "status": "Available with limits",
        "status_key": "bounded",
        "names": "Kaggle · free Colab · Paperspace · ZeroGPU",
        "fit": "Small DS/MLIS GPU benchmarks or short model demonstrations, matched to each platform.",
        "boundary": "Quotas, queues and hardware vary. Paperspace free notebooks are public; ZeroGPU is for bounded demos. Provider runs remain pending.",
        "sources": [
          "kaggle",
          "colab",
          "paperspacevisibility",
          "zerogpu"
        ],
        "detail": "gpu-benchmark.html"
      },
      {
        "id": "workflow",
        "title": "Assignments and evaluation",
        "status": "Available; adoption untested",
        "status_key": "bounded",
        "names": "Classroom 50 · Codabench",
        "fit": "Assignment distribution, submissions, scoring and benchmark leaderboards.",
        "boundary": "Classroom 50 is externally maintained and adds no Codespaces hours. Codabench GPU/code workers need separately supplied compute.",
        "sources": [
          "classroom50",
          "classroom50requirements",
          "codabench"
        ],
        "detail": "classroom50.html"
      },
      {
        "id": "credits",
        "title": "Commercial compute credits",
        "status": "Conditional / promotional",
        "status_key": "conditional",
        "names": "Modal · Lightning AI",
        "fit": "Controlled instructor experiments within confirmed credits and billing arrangements.",
        "boundary": "Modal requires a payment method and limits Starter to three seats. Lightning GPU credits vary. Neither is an approved zero-cash class default.",
        "sources": [
          "modalpricing",
          "modalbilling",
          "lightningbilling"
        ],
        "detail": "serverless-compute.html"
      },
      {
        "id": "allocation",
        "title": "The proposed classroom baseline",
        "status": "Request / award pending",
        "status_key": "proposed",
        "names": "ACCESS CPU + GPU · NAIRR Classroom",
        "fit": "A large measured ACCESS request; additional eligible instructor-led AI pilots through NAIRR.",
        "boundary": "No award or class capacity is secured. CloudBank is conditional through ACCESS; campus AWS is only for CPU component testing.",
        "sources": [
          "access",
          "nairr",
          "assesscloudbank"
        ],
        "detail": "access-request.html"
      },
      {
        "id": "shared",
        "title": "Other federally supported routes",
        "status": "Eligibility and fit to confirm",
        "status_key": "conditional",
        "names": "OSPool / OSG · NRP / Nautilus · MESA / CyVerse",
        "fit": "High-throughput jobs, shared notebooks/GPUs and domain data services, depending on the platform.",
        "boundary": "Shared scheduling, onboarding and operating duties differ. MESA funding does not establish PATh eligibility or a new GPU entitlement.",
        "sources": [
          "fedospool",
          "assessnrpedu",
          "fedmesa",
          "assesspathelig"
        ],
        "detail": "federal-compute.html"
      },
      {
        "id": "repositories",
        "title": "Repositories and scholarly outputs",
        "status": "Surviving routes; distinct roles",
        "status_key": "bounded",
        "names": "GitHub Free · GitLab Education · Campus Repository · Zenodo",
        "fit": "Versioned course code, eligible education collaboration, or rights-cleared scholarly deposits.",
        "boundary": "GitHub retains unlimited repository counts; features/storage remain bounded. Education eligibility and public-deposit rules apply. A live Git repo is not independent preservation.",
        "sources": [
          "githubfree",
          "gitlabedu",
          "campusrepository",
          "zenodoquota"
        ],
        "detail": "repository-plan.html"
      },
      {
        "id": "hosting",
        "title": "Hosting and small databases",
        "status": "Available with limits",
        "status_key": "bounded",
        "names": "GitHub / Cloudflare Pages · D1 · Neon · Supabase",
        "fit": "Static course sites, digital exhibits and bounded database/web assignments.",
        "boundary": "Static hosting does not supply a general backend. Database quotas, idle behavior, recovery windows and exports need review; working storage is not an archive.",
        "sources": [
          "pageslimits",
          "cloudflarepages",
          "d1limits",
          "neonfree",
          "supabasefree"
        ],
        "detail": "evidence.html#options"
      }
    ],
    "paid_note": "Beam, Cerebrium, Runpod, Replicate and Hugging Face Inference Providers have paid-usage or limited-trial boundaries; they are not a dependable free baseline. Saturn’s advertised free offer remains unconfirmed against current account access.",
    "years": [
      {
        "year": "2022",
        "events": [
          {
            "date": "Nov 28",
            "title": "Heroku free hosting and databases end",
            "before": "Free Dynos / Postgres / Redis",
            "after": "Free plans withdrawn",
            "sources": [
              "heroku"
            ]
          },
          {
            "date": "Dec 28 · new private groups",
            "title": "GitLab constrains private Free groups",
            "before": "Private class collaboration",
            "after": "Five-user namespace limit; education exceptions",
            "sources": [
              "gitlabrollout",
              "gitlablimits"
            ]
          }
        ]
      },
      {
        "year": "2023",
        "events": [
          {
            "date": "Nov 15",
            "title": "Replit stops new education teams",
            "before": "Create a new classroom team",
            "after": "New Teams for Education blocked",
            "sources": [
              "replit"
            ]
          }
        ]
      },
      {
        "year": "2024",
        "events": [
          {
            "date": "May 20 · new free databases",
            "title": "Render shortens free Postgres lifetime",
            "before": "90 days",
            "after": "30 days",
            "sources": [
              "renderexpiry"
            ]
          },
          {
            "date": "June 17 · new customers",
            "title": "Google source hosting closes onboarding",
            "before": "New Cloud Source Repositories customers",
            "after": "New access closed; existing customers retained",
            "sources": [
              "cloudsource"
            ]
          },
          {
            "date": "Aug 1",
            "title": "Replit removes Teams for Education",
            "before": "Existing education product",
            "after": "Education product withdrawn",
            "sources": [
              "replit"
            ]
          }
        ]
      },
      {
        "year": "2025",
        "events": [
          {
            "date": "May 29 · revised enforcement",
            "title": "Bitbucket limits Free workspace storage",
            "before": "Free workspace Git storage",
            "after": "1 GB aggregate; over-limit read-only",
            "sources": [
              "bitbucket",
              "bitbucketpolicy"
            ]
          },
          {
            "date": "July 8",
            "title": "Glitch ends project hosting",
            "before": "Hosted student apps",
            "after": "Hosting withdrawn",
            "sources": [
              "glitch"
            ]
          },
          {
            "date": "July 15 · new general Free Tier",
            "title": "AWS changes the free-plan window",
            "before": "Legacy 12-month limited benefits",
            "after": "Credit-based free plan: at most six months",
            "sources": [
              "aws",
              "awsfaq"
            ]
          }
        ]
      },
      {
        "year": "2026",
        "events": [
          {
            "date": "Aug 28",
            "title": "GitHub Classroom is decommissioned",
            "before": "Classroom website, APIs and automation",
            "after": "Classroom service ended; Git repos remain",
            "sources": [
              "github"
            ]
          }
        ]
      }
    ],
    "observation": {
      "title": "Colab Pro for Education: new sign-ups closed",
      "label": "Closed by September 21, 2026 · user-reported boundary",
      "body": "Greg Chism reports that new sign-ups were already closed by September 21, 2026 (update received October 20). The provider FAQ independently confirms the closed offer but does not date the change. Existing verified subscriptions can continue to their one-year mark. Base free Colab remains; education accounts were not deleted.",
      "sources": [
        "colab"
      ]
    },
    "upcoming": {
      "title": "OSF Projects: announced future restrictions",
      "label": "Upcoming · not yet effective on Oct 19, 2026",
      "body": "New project/component creation is scheduled to stop November 16, 2026; projects are scheduled to become read-only after February 19, 2027. OSF Registries and community preprints are distinct; existing public projects remain accessible.",
      "sources": [
        "osfprojects"
      ]
    },
    "next_step": "Draft a bounded ORAI AI-native classroom proposal to showcase ORAI tools alongside Greg’s infrastructure components. Greg has four hours/week total. The larger ACCESS CPU/GPU two-course illustration requires rescoping or confirmed distinct support; benchmark, provider replay, recovery and class-readiness checks remain pending.",
    "rechecked_source_keys": [
      "github",
      "colab",
      "aws",
      "heroku",
      "renderexpiry",
      "osfprojects",
      "codespaces",
      "githubfree",
      "modalpricing",
      "modalbilling",
      "access",
      "campusrepository"
    ]
  },
  "capacity_revision": {
    "date": "2026-10-20",
    "source": "Greg Chism correction",
    "weekly_hours": 4,
    "scope": "Greg’s total capacity across this work and EduCloud; TA/course-lead effort separate",
    "earlier_workload_status": "230-hour two-course illustration exceeds the 92-hour upper bound over 23 weeks by 138 hours; rescope or confirm distinct support",
    "history": "Supersedes the earlier ten-hour owner-capacity assumption; provider source records retain their original dates."
  }
}
