Foundation

Foundation is Apple’s “base layer” framework — it provides date/time handling, URL parsing, JSON encoding, data buffers, networking (URLSession / URLRequest / URLError), filesystem access, and more. tswift measures Foundation coverage through generated .swiftinterface inventories and per-type runtime registries.

Legend: ✅ Implemented · 🟡 Partial · ⬜ Missing · 🚫 Out of scope. Types marked 🛡️ elsewhere on this site were hardened by ground-truthing against the real Swift 6.3 Foundation (probe programs run on the Apple toolchain, outputs matched byte-for-byte in golden fixtures).

Member counts below are generated by python3 tools/framework-inventory/coverage.py --framework foundation --emit-json — nothing on this page is hand-typed.

Foundation65%–70%

399 implemented · 32 partial · 184 missing (615 total)

Data (35)

  • ==funcImplemented
  • advancedfuncMissing
  • appendfuncImplemented
  • base64EncodedDatafuncImplemented
  • base64EncodedStringfuncImplemented
  • bytesvarMissing
  • copyBytesfuncMissing
  • countvarImplemented
  • customMirrorvarMissing
  • debugDescriptionvarImplemented
  • descriptionvarImplemented
  • encodefuncMissing
  • endIndexvarImplemented
  • enumerateBytesfuncMissing
  • hashfuncMissing
  • hashValuevarImplemented
  • indexfuncImplemented
  • indicesvarImplemented
  • initinitImplemented
  • makeIteratorfuncImplemented
  • mutableBytesvarMissing
  • mutableSpanvarMissing
  • rangefuncImplemented
  • regionsvarMissing
  • replaceSubrangefuncImplemented
  • reserveCapacityfuncImplemented
  • resetBytesfuncImplemented
  • spanvarMissing
  • startIndexvarImplemented
  • subdatafuncImplemented
  • subscriptsubscriptMissing
  • withContiguousStorageIfAvailablefuncMissing
  • withUnsafeBytesfuncMissing
  • withUnsafeMutableBytesfuncMissing
  • writefuncImplemented

UUID (11)

  • <funcImplemented
  • ==funcImplemented
  • customMirrorvarMissing
  • debugDescriptionvarImplemented
  • descriptionvarImplemented
  • encodefuncMissing
  • hashfuncMissing
  • hashValuevarImplemented
  • initinitImplemented
  • uuidvarImplemented
  • uuidStringvarImplemented

IndexPath (24)

  • +funcImplemented
  • +=funcImplemented
  • <funcImplemented
  • <=funcImplemented
  • ==funcImplemented
  • >funcImplemented
  • >=funcImplemented
  • appendfuncImplemented
  • appendingfuncImplemented
  • comparefuncImplemented
  • countvarImplemented
  • customMirrorvarMissing
  • debugDescriptionvarImplemented
  • descriptionvarImplemented
  • dropLastfuncImplemented
  • encodefuncMissing
  • endIndexvarImplemented
  • hashfuncMissing
  • hashValuevarImplemented
  • indexfuncImplemented
  • initinitImplemented
  • makeIteratorfuncImplemented
  • startIndexvarImplemented
  • subscriptsubscriptImplemented

IndexSet (42)

  • <funcMissing
  • <=funcMissing
  • ==funcImplemented
  • >funcMissing
  • >=funcMissing
  • containsfuncImplemented
  • countfuncImplemented
  • customMirrorvarMissing
  • debugDescriptionvarImplemented
  • descriptionvarImplemented
  • encodefuncMissing
  • endIndexvarMissing
  • filteredIndexSetfuncImplemented
  • firstvarImplemented
  • formIndexfuncMissing
  • formIntersectionfuncImplemented
  • formSymmetricDifferencefuncPartial
  • formUnionfuncImplemented
  • hashfuncMissing
  • hashValuevarImplemented
  • indexfuncMissing
  • indexRangefuncMissing
  • initinitImplemented
  • insertfuncImplemented
  • integerGreaterThanfuncImplemented
  • integerGreaterThanOrEqualTofuncImplemented
  • integerLessThanfuncImplemented
  • integerLessThanOrEqualTofuncImplemented
  • intersectionfuncImplemented
  • intersectsfuncImplemented
  • isEmptyvarImplemented
  • lastvarImplemented
  • makeIteratorfuncImplemented
  • rangeViewfuncImplemented
  • removefuncImplemented
  • removeAllfuncImplemented
  • shiftfuncImplemented
  • startIndexvarMissing
  • subscriptsubscriptMissing
  • symmetricDifferencefuncImplemented
  • unionfuncImplemented
  • updatefuncImplemented

URL (81)

  • ==funcImplemented
  • absoluteStringvarImplemented
  • absoluteURLvarImplemented
  • appendfuncImplemented
  • appendPathComponentfuncImplemented
  • appendPathExtensionfuncImplemented
  • appendingfuncImplemented
  • appendingPathComponentfuncImplemented
  • appendingPathExtensionfuncImplemented
  • applicationDirectoryvarMissing
  • applicationSupportDirectoryvarMissing
  • associativeListfuncMissing
  • baseURLvarImplemented
  • bookmarkDatafuncMissing
  • cachesDirectoryvarMissing
  • checkPromisedItemIsReachablefuncMissing
  • checkResourceIsReachablefuncMissing
  • consumingfuncMissing
  • currentDirectoryfuncMissing
  • customPlaygroundQuickLookvarMissing
  • dataRepresentationvarMissing
  • debugDescriptionvarImplemented
  • deleteLastPathComponentfuncImplemented
  • deletePathExtensionfuncImplemented
  • deletingLastPathComponentfuncImplemented
  • deletingPathExtensionfuncImplemented
  • descriptionvarImplemented
  • desktopDirectoryvarMissing
  • documentsDirectoryvarMissing
  • downloadsDirectoryvarMissing
  • encodefuncMissing
  • formatfuncMissing
  • formattedfuncMissing
  • fragmentfuncImplemented
  • hasDirectoryPathvarImplemented
  • hashfuncMissing
  • hashValuevarImplemented
  • homeDirectoryfuncMissing
  • hostfuncImplemented
  • initinitImplemented
  • isFileURLvarImplemented
  • lastPathComponentvarImplemented
  • libraryDirectoryvarMissing
  • linesvarMissing
  • listfuncMissing
  • moviesDirectoryvarMissing
  • musicDirectoryvarMissing
  • parsefuncMissing
  • parseStrategyvarMissing
  • passwordfuncImplemented
  • pathfuncImplemented
  • pathComponentsvarImplemented
  • pathExtensionvarImplemented
  • picturesDirectoryvarMissing
  • portfuncImplemented
  • promisedItemResourceValuesfuncMissing
  • queryfuncImplemented
  • relativePathvarImplemented
  • relativeStringvarImplemented
  • removeAllCachedResourceValuesfuncMissing
  • removeCachedResourceValuefuncMissing
  • resolveSymlinksInPathfuncImplemented
  • resolvingSymlinksInPathfuncImplemented
  • resourceBytesvarMissing
  • resourceValuesfuncMissing
  • schemefuncImplemented
  • setResourceValuesfuncMissing
  • setTemporaryResourceValuefuncMissing
  • sharedPublicDirectoryvarMissing
  • standardizefuncImplemented
  • standardizedvarImplemented
  • standardizedFileURLvarMissing
  • startAccessingSecurityScopedResourcefuncMissing
  • stopAccessingSecurityScopedResourcefuncMissing
  • temporaryDirectoryvarMissing
  • textfuncMissing
  • trashDirectoryvarMissing
  • userfuncImplemented
  • userDirectoryvarMissing
  • withUnsafeFileSystemRepresentationfuncMissing
  • writeBookmarkDatafuncMissing

URLComponents (35)

  • ==funcImplemented
  • customMirrorvarMissing
  • debugDescriptionvarImplemented
  • descriptionvarImplemented
  • encodefuncMissing
  • encodedHostvarImplemented
  • fragmentvarImplemented
  • hashfuncMissing
  • hashValuevarImplemented
  • hostvarImplemented
  • initinitImplemented
  • passwordvarImplemented
  • pathvarImplemented
  • percentEncodedFragmentvarImplemented
  • percentEncodedHostvarImplemented
  • percentEncodedPasswordvarImplemented
  • percentEncodedPathvarImplemented
  • percentEncodedQueryvarImplemented
  • percentEncodedQueryItemsvarImplemented
  • percentEncodedUservarImplemented
  • portvarImplemented
  • queryvarImplemented
  • queryItemsvarImplemented
  • rangeOfFragmentvarMissing
  • rangeOfHostvarMissing
  • rangeOfPasswordvarMissing
  • rangeOfPathvarMissing
  • rangeOfPortvarMissing
  • rangeOfQueryvarMissing
  • rangeOfSchemevarMissing
  • rangeOfUservarMissing
  • schemevarImplemented
  • stringvarImplemented
  • urlfuncImplemented
  • uservarImplemented

URLQueryItem (8)

  • ==funcImplemented
  • customMirrorvarMissing
  • debugDescriptionvarMissing
  • descriptionvarImplemented
  • hashfuncMissing
  • hashValuevarImplemented
  • namevarImplemented
  • valuevarImplemented

Date (87)

  • +funcImplemented
  • +=funcImplemented
  • -funcImplemented
  • -=funcImplemented
  • <funcImplemented
  • ==funcImplemented
  • >funcImplemented
  • abbreviatedvarImplemented
  • addTimeIntervalfuncImplemented
  • addingTimeIntervalfuncImplemented
  • advancedfuncImplemented
  • attributedStylevarMissing
  • comparefuncImplemented
  • consumingfuncMissing
  • conversationalfuncMissing
  • conversationalDefaultDigitsfuncMissing
  • conversationalTwoDigitsfuncMissing
  • customMirrorvarMissing
  • customPlaygroundQuickLookvarMissing
  • dateSeparatorfuncMissing
  • dateTimeSeparatorfuncMissing
  • dayfuncImplemented
  • dayOfYearfuncMissing
  • debugDescriptionvarImplemented
  • defaultDigitsfuncMissing
  • defaultDigitsNoAMPMvarMissing
  • descriptionfuncImplemented
  • discreteInputfuncMissing
  • distancefuncImplemented
  • distantFutureletImplemented
  • distantPastletImplemented
  • encodefuncMissing
  • erafuncMissing
  • exemplarLocationvarMissing
  • extendedfuncMissing
  • formatfuncImplemented
  • formattedfuncImplemented
  • fractionalfuncMissing
  • genericLocationvarMissing
  • genericNamefuncMissing
  • hashfuncMissing
  • hashValuevarImplemented
  • hourfuncImplemented
  • identifierfuncMissing
  • initinitImplemented
  • inputfuncMissing
  • iso8601funcImplemented
  • julianModifiedfuncMissing
  • localefuncMissing
  • localizedGMTfuncMissing
  • millisecondsfuncMissing
  • minutefuncImplemented
  • monthfuncImplemented
  • narrowvarMissing
  • nowvarPartial
  • omittedletImplemented
  • oneDigitvarMissing
  • ordinalOfDayInMonthvarMissing
  • paddedfuncMissing
  • parsefuncMissing
  • parseStrategyvarMissing
  • quarterfuncMissing
  • relatedGregorianfuncMissing
  • secondfuncImplemented
  • secondFractionfuncMissing
  • shortvarMissing
  • specificNamefuncMissing
  • standardfuncImplemented
  • threeDigitsvarMissing
  • timefuncMissing
  • timeIntervalBetween1970AndReferenceDateletImplemented
  • timeIntervalSincefuncImplemented
  • timeIntervalSince1970varImplemented
  • timeIntervalSinceNowvarPartial
  • timeIntervalSinceReferenceDatevarImplemented
  • timeSeparatorfuncMissing
  • timeZonefuncMissing
  • timeZoneSeparatorfuncMissing
  • twoDigitsfuncMissing
  • twoDigitsNoAMPMvarMissing
  • weekfuncMissing
  • weekOfMonthvarMissing
  • weekOfYearfuncMissing
  • weekdayfuncMissing
  • widevarMissing
  • with12sfuncMissing
  • yearfuncImplemented

Calendar (55)

  • ==funcImplemented
  • amSymbolvarImplemented
  • autoupdatingCurrentvarImplemented
  • comparefuncImplemented
  • componentfuncImplemented
  • currentvarImplemented
  • customMirrorvarMissing
  • datefuncImplemented
  • dateComponentsfuncImplemented
  • dateIntervalfuncImplemented
  • dateIntervalOfWeekendfuncImplemented
  • datesfuncMissing
  • debugDescriptionvarImplemented
  • descriptionvarImplemented
  • encodefuncMissing
  • enumerateDatesfuncMissing
  • eraSymbolsvarImplemented
  • firstWeekdayvarImplemented
  • hashfuncMissing
  • hashValuevarImplemented
  • identifiervarImplemented
  • initinitImplemented
  • isDatefuncImplemented
  • isDateInTodayfuncPartial
  • isDateInTomorrowfuncPartial
  • isDateInWeekendfuncImplemented
  • isDateInYesterdayfuncPartial
  • localevarImplemented
  • longEraSymbolsvarImplemented
  • maximumRangefuncImplemented
  • minimumDaysInFirstWeekvarImplemented
  • minimumRangefuncImplemented
  • monthSymbolsvarImplemented
  • nextDatefuncImplemented
  • nextWeekendfuncImplemented
  • ordinalityfuncImplemented
  • pmSymbolvarImplemented
  • quarterSymbolsvarImplemented
  • rangefuncImplemented
  • shortMonthSymbolsvarImplemented
  • shortQuarterSymbolsvarImplemented
  • shortStandaloneMonthSymbolsvarPartial
  • shortStandaloneQuarterSymbolsvarPartial
  • shortStandaloneWeekdaySymbolsvarPartial
  • shortWeekdaySymbolsvarImplemented
  • standaloneMonthSymbolsvarImplemented
  • standaloneQuarterSymbolsvarPartial
  • standaloneWeekdaySymbolsvarPartial
  • startOfDayfuncImplemented
  • timeZonevarImplemented
  • veryShortMonthSymbolsvarImplemented
  • veryShortStandaloneMonthSymbolsvarPartial
  • veryShortStandaloneWeekdaySymbolsvarPartial
  • veryShortWeekdaySymbolsvarImplemented
  • weekdaySymbolsvarImplemented

DateComponents (41)

  • ==funcImplemented
  • calendarvarImplemented
  • consumingfuncMissing
  • customMirrorvarMissing
  • datevarImplemented
  • dateSeparatorfuncMissing
  • dateTimeSeparatorfuncMissing
  • dayfuncImplemented
  • dayOfYearvarImplemented
  • debugDescriptionvarImplemented
  • descriptionvarImplemented
  • encodefuncMissing
  • eravarImplemented
  • formatfuncMissing
  • formattedfuncMissing
  • hashfuncMissing
  • hashValuevarImplemented
  • hourvarImplemented
  • initinitImplemented
  • isLeapMonthvarImplemented
  • isRepeatedDayvarImplemented
  • isValidDatefuncImplemented
  • minutevarImplemented
  • monthfuncImplemented
  • nanosecondvarImplemented
  • parsefuncMissing
  • parseStrategyvarMissing
  • quartervarImplemented
  • secondvarImplemented
  • setValuefuncImplemented
  • timefuncMissing
  • timeSeparatorfuncMissing
  • timeZonefuncImplemented
  • timeZoneSeparatorfuncMissing
  • valuefuncImplemented
  • weekOfMonthvarImplemented
  • weekOfYearfuncImplemented
  • weekdayvarImplemented
  • weekdayOrdinalvarImplemented
  • yearfuncImplemented
  • yearForWeekOfYearvarImplemented

Decimal (59)

  • *funcImplemented
  • *=funcImplemented
  • +funcImplemented
  • +=funcImplemented
  • -funcImplemented
  • -=funcImplemented
  • /funcImplemented
  • /=funcPartial
  • <funcImplemented
  • ==funcImplemented
  • addfuncImplemented
  • advancedfuncImplemented
  • consumingfuncMissing
  • descriptionvarImplemented
  • distancefuncImplemented
  • dividefuncImplemented
  • encodefuncMissing
  • exponentvarImplemented
  • floatingPointClassvarImplemented
  • formTruncatingRemainderfuncMissing
  • formattedfuncImplemented
  • greatestFiniteMagnitudeletImplemented
  • hashfuncMissing
  • hashValuevarImplemented
  • infinityvarMissing
  • initinitImplemented
  • isCanonicalvarImplemented
  • isEqualfuncImplemented
  • isFinitevarImplemented
  • isInfinitevarImplemented
  • isLessfuncImplemented
  • isLessThanOrEqualTofuncImplemented
  • isNaNvarImplemented
  • isNormalvarImplemented
  • isSignMinusvarImplemented
  • isSignalingvarPartial
  • isSignalingNaNvarImplemented
  • isSubnormalvarImplemented
  • isTotallyOrderedfuncImplemented
  • isZerovarImplemented
  • leastFiniteMagnitudeletImplemented
  • leastNonzeroMagnitudeletImplemented
  • leastNormalMagnitudeletImplemented
  • magnitudevarImplemented
  • multiplyfuncImplemented
  • nanvarImplemented
  • negatefuncImplemented
  • nextDownvarImplemented
  • nextUpvarImplemented
  • parsefuncMissing
  • parseStrategyvarMissing
  • piletImplemented
  • quietNaNvarImplemented
  • radixvarImplemented
  • signvarImplemented
  • signalingNaNvarMissing
  • significandvarImplemented
  • subtractfuncImplemented
  • ulpvarImplemented

Measurement (20)

  • *funcImplemented
  • +funcImplemented
  • -funcImplemented
  • /funcImplemented
  • <funcImplemented
  • ==funcImplemented
  • convertfuncImplemented
  • convertedfuncImplemented
  • customMirrorvarMissing
  • debugDescriptionvarImplemented
  • descriptionvarImplemented
  • encodefuncImplemented
  • formattedfuncMissing
  • hashfuncMissing
  • hashValuevarImplemented
  • hidesScaleNamevarMissing
  • initinitImplemented
  • subscriptsubscriptMissing
  • unitletImplemented
  • valuevarImplemented

JSONEncoder (8)

  • dataEncodingStrategyvarImplemented
  • dateEncodingStrategyvarImplemented
  • encodefuncImplemented
  • initinitImplemented
  • keyEncodingStrategyvarImplemented
  • nonConformingFloatEncodingStrategyvarImplemented
  • outputFormattingvarImplemented
  • userInfovarImplemented

JSONDecoder (9)

  • allowsJSON5varMissing
  • assumesTopLevelDictionaryvarImplemented
  • dataDecodingStrategyvarImplemented
  • dateDecodingStrategyvarImplemented
  • decodefuncImplemented
  • initinitImplemented
  • keyDecodingStrategyvarImplemented
  • nonConformingFloatDecodingStrategyvarImplemented
  • userInfovarImplemented

PropertyListEncoder (4)

  • encodefuncImplemented
  • initinitImplemented
  • outputFormatvarImplemented
  • userInfovarImplemented

URLRequest (30)

  • ==funcImplemented
  • addValuefuncImplemented
  • allHTTPHeaderFieldsvarImplemented
  • allowsCellularAccessvarImplemented
  • allowsConstrainedNetworkAccessvarImplemented
  • allowsExpensiveNetworkAccessvarImplemented
  • allowsPersistentDNSvarImplemented
  • allowsUltraConstrainedNetworkAccessvarImplemented
  • assumesHTTP3CapablevarImplemented
  • attributionvarImplemented
  • cachePolicyvarImplemented
  • cookiePartitionIdentifiervarImplemented
  • customMirrorvarMissing
  • debugDescriptionvarImplemented
  • descriptionvarImplemented
  • hashfuncMissing
  • hashValuevarImplemented
  • httpBodyvarImplemented
  • httpBodyStreamvarMissing
  • httpMethodvarImplemented
  • httpShouldHandleCookiesvarImplemented
  • httpShouldUsePipeliningvarImplemented
  • initinitImplemented
  • mainDocumentURLvarImplemented
  • networkServiceTypevarImplemented
  • requiresDNSSECValidationvarImplemented
  • setValuefuncImplemented
  • timeoutIntervalvarImplemented
  • urlvarImplemented
  • valuefuncImplemented

URLError (58)

  • appTransportSecurityRequiresSecureConnectionvarImplemented
  • backgroundSessionInUseByAnotherProcessvarImplemented
  • backgroundSessionRequiresSharedContainervarImplemented
  • backgroundSessionWasDisconnectedvarImplemented
  • backgroundTaskCancelledReasonvarImplemented
  • badServerResponsevarPartial
  • badURLvarImplemented
  • callIsActivevarImplemented
  • cancelledvarImplemented
  • cannotCloseFilevarImplemented
  • cannotConnectToHostvarPartial
  • cannotCreateFilevarImplemented
  • cannotDecodeContentDatavarPartial
  • cannotDecodeRawDatavarPartial
  • cannotFindHostvarImplemented
  • cannotLoadFromNetworkvarImplemented
  • cannotMoveFilevarImplemented
  • cannotOpenFilevarImplemented
  • cannotParseResponsevarPartial
  • cannotRemoveFilevarImplemented
  • cannotWriteToFilevarImplemented
  • clientCertificateRejectedvarImplemented
  • clientCertificateRequiredvarImplemented
  • dataLengthExceedsMaximumvarImplemented
  • dataNotAllowedvarPartial
  • dnsLookupFailedvarPartial
  • downloadDecodingFailedMidStreamvarImplemented
  • downloadDecodingFailedToCompletevarImplemented
  • downloadTaskResumeDatavarImplemented
  • errorDomainvarImplemented
  • failingURLvarPartial
  • failureURLPeerTrustvarImplemented
  • failureURLStringvarImplemented
  • fileDoesNotExistvarImplemented
  • fileIsDirectoryvarImplemented
  • hashValuevarImplemented
  • httpTooManyRedirectsvarPartial
  • initinitImplemented
  • internationalRoamingOffvarImplemented
  • networkConnectionLostvarPartial
  • networkUnavailableReasonvarImplemented
  • noPermissionsToReadFilevarImplemented
  • notConnectedToInternetvarImplemented
  • redirectToNonExistentLocationvarImplemented
  • requestBodyStreamExhaustedvarImplemented
  • resourceUnavailablevarPartial
  • secureConnectionFailedvarPartial
  • serverCertificateHasBadDatevarImplemented
  • serverCertificateHasUnknownRootvarImplemented
  • serverCertificateNotYetValidvarImplemented
  • serverCertificateUntrustedvarImplemented
  • timedOutvarImplemented
  • unknownvarImplemented
  • unsupportedURLvarPartial
  • uploadTaskResumeDatavarImplemented
  • userAuthenticationRequiredvarPartial
  • userCancelledAuthenticationvarPartial
  • zeroByteResourcevarPartial

URLSession (5)

  • bytesfuncMissing
  • datafuncImplemented
  • dataTaskPublisherfuncMissing
  • downloadfuncMissing
  • uploadfuncPartial

FileManager (3)

  • enumeratorfuncMissing
  • replaceItemAtfuncMissing
  • replaceItemAtURLfuncMissing

How it renders

    
flowchart LR
  src["Swift source"]
  interp["Interpreter\n+ tswift-foundation\nbuiltins"]
  host["Host services\n(defaults / fs / network)"]

  src --> interp --> host

  style src   fill:#1a0d2e,stroke:#a855f7,color:#eeeef5
  style host  fill:#0d2e1a,stroke:#34c759,color:#eeeef5

  
Foundation call path

Out of scope

Platform- and device-specific APIs are intentionally excluded (see frameworks/foundation/scope.toml): FileManager, FileHandle, NSObject, Bundle, and friends. Remaining unimplemented members are largely locale-dependent format styles, rangeOf* string-range APIs, and resource/bookmark filesystem members.

A 2026-07 coverage pass (59.8% → 70.3% implemented) closed the mechanical gaps and re-confirmed, member by member, why the rest are intentionally out of scope rather than simply missing:

Hardening

Types marked 🛡️ were validated in dedicated hardening passes: small probe programs were run on the real Apple Swift toolchain to capture ground-truth outputs, then encoded as golden fixtures (harden_foundation_*.swift, harden_json.swift). This process found and fixed real divergences — ISO8601 leap-year/fractional-second validation, standardized path edge cases, percent-encoding charset rules, Decimal precision boundaries, and JSON strategy-enum API surface.

Roadmap

Next coverage pushes (daily-use weighted):

  1. Calendar.dates / enumerateDates sequence APIs (needs closure stop-flag write-back + a lazy Sequence<Date> primitive)
  2. URLComponents.rangeOf* members (needs Range<String.Index> bridging)
  3. URLSession bytes(for:) async streaming and downloadTask support
  4. Remaining Data / URL member gaps (byte-buffer and filesystem APIs, scoped down per the Out-of-scope notes above)

Locale-aware FormatStyle DSLs, filesystem/bookmark APIs, and reflection (customMirror) are tracked as permanent out-of-scope items (see above), not roadmap items.