DNventory

What is new in DNventory

Product updates

Release notes grouped by date and change type, covering new features, improvements, and fixes.

Stronger protection for public messages

v0.39.8

Added

  • Signed submission attemptsThe Contact page now uses FormBastion Enhanced Protection to prepare expiring, single-use browser attempts and provider-generated abuse-detection fields.
  • Restricted browser accessThe marketing security policy permits scripts only from FormBastion’s CDN and background connections only to its submission host.

Compatibility

  • Contact behaviorThe same visible fields, native validation, external delivery destination, responsive layout, and standalone Thank you page remain in place. Enhanced submissions require JavaScript.
  • Application boundaryNo DNventory endpoint, database table, mail worker, authenticated workflow, or public API contract changed.

A simpler contact form

v0.39.7

Removed

  • Hidden contact fieldThe _gotcha honeypot and its contact-specific styling have been removed from the public form.

Unchanged

  • Form deliveryThe exact approved FormBastion HTTPS destination, native validation, responsive layout, restrictive security policy, and standalone Thank you page remain intact.
  • Application boundaryNo DNventory handler, database table, worker, authenticated workflow, or public API contract changed.

A working contact route with quiet spam resistance

v0.39.6

Changed

  • FormBastion deliveryThe public Contact form now submits directly to the approved HTTPS form endpoint while preserving native validation and the existing responsive layout.
  • Restricted destinationThe marketing security policy permits form navigation only to DNventory and the FormBastion host.

Added

  • Honeypot protectionAn off-screen _gotcha field gives the delivery service a basic automated-submission signal without adding a visible challenge.

Compatibility

  • No application or API changeNo DNventory handler, database table, mail worker, authenticated workflow, or public API contract was added. The no-index Thank you page remains available for a later redirect configuration.

A clear place to start a conversation

v0.39.5

Added

  • Public Contact pageA focused, accessible contact form now matches the Registry Noir marketing experience and is linked from the public header and footer.
  • Future Thank you destinationA dedicated no-index confirmation page is ready to become the post-submission destination when message delivery is connected.

Changed

  • Deployment-ready public routesContact and Thank you are included in the static marketing bundle, clean-route rules, responsive styling, accessibility checks, and release validation.
  • Intentionally inert formThe form posts only to its placeholder # action and has no handler, storage, email delivery, JavaScript submission, or API dependency.

The desk fits the records

v0.39.4

Changed

  • Content-aware workbenchesPortfolio and Watchlist now allocate the complete desktop result panel only among visible columns, with useful room for domain identity, decisions, organization, and actions.
  • Earlier organization reflowThe folder navigator moves above results on constrained desktop layouts so it no longer competes with the records table.

Fixed

  • No reserved hidden columnsDisabled Watchlist columns no longer leave an unused block beside Actions or force visible headings and controls into narrow vertical fragments.
  • Clearer confirmation dialogThe stray punctuation marker is replaced by a descriptive Review change label while the existing accessible confirmation flow remains intact.

Deadlines and desks stay in context

v0.39.3

Changed

  • Contained desktop workbenchesPortfolio and Watchlist columns now proportionally fit the available result panel instead of widening the page.
  • Clearer renewal languageOverview runway counts now say domains rather than names.

Fixed

  • Correct auction countdownsRemaining time now uses the stored UTC deadline while the exact date and time remain localized to the workspace.
  • Preserved Watchlist contextActions return to the same view, filters, sorting, page size, and page. Archiving also stops monitoring, reminders, pending watch email, and active watch alerts without deleting history.

Decisions that read at a glance

v0.39.2

Changed

  • Signal-first mobile ticketsPortfolio and Watchlist records now have clear separation and one reading order: identity, the renewal or watch decision, aligned supporting facts, then optional details.
  • Contextual Watchlist hierarchyUpcoming auctions, required outcomes, missing deadlines, change monitoring, and unclassified records each surface the action-relevant state without repeated empty facts or Normal-priority labels.

Fixed

  • Stable live searchDesktop rows and phone tickets are matched by domain ID instead of display position, preventing conditional content from hiding the wrong record.
  • Readable interaction statesTicket focus, selection, urgency, long domains, disclosures, and 44px selection controls remain contained and distinct at phone widths.

Mobile layout correction

v0.39.1

Changed

  • Compact registry ledgersPortfolio and Watchlist phone listings prioritize identity, status, timing, money, and monitoring facts without oversized repeated controls.
  • Full-width mobile workspacesSettings panels and every owned-domain section use the available phone width with single-column forms and deliberate internal table scrolling.

Fixed

  • Narrow panelsAccount, record editors, timelines, payment plans, locks, valuation evidence, research, and At a glance no longer inherit desktop minimum widths.
  • Mobile scanningLong domains, numerous folders and tags, missing values, and active auctions remain readable without document-level horizontal overflow.

A faster portfolio in your hand

v0.39.0

Changed

  • Hierarchical mobile foldersPortfolio and Watchlist now use compact folder disclosures with one clearly indented parent-and-child tree.
  • Scan-first domain cardsPhone cards surface registrar, expiration, invested amount, estimate, taxonomy, and relevant Watchlist opportunity facts in a consistent ledger.
  • Task-focused records and settingsSettings has direct section navigation, while owned-domain records start with key facts and a compact section picker.

Fixed

  • Mobile action sprawlOverview intake actions are centered and crowded page actions move into an accessible overflow menu.
  • Desktop regressionsThe new workflow composition is isolated below 768px; desktop rails, tables, tabs, and sidebars retain their established layout.

A Watchlist that uses the desk

v0.38.4

Changed

  • Proportional Watchlist columnsWide desktop tables now distribute the complete results panel across domain identity, watching state, observations, opportunities, organization, and actions.

Fixed

  • Unused listing spaceThe Watchlist table no longer settles at its minimum width while leaving a large empty area beside the Actions column.
  • Cramped row actionsView record and More share a stable action row, with classification actions placed clearly beneath them when required.

A workspace that fits the decision

v0.38.3

Added

  • Persistent navigation railMembers can expand or collapse the left navigation from its divider, with an accessible state and a browser-local preference.

Changed

  • Responsive Watchlist recordsThe sortable desktop table now yields to polished two-column and single-column cards based on the space the workbench actually has.

Fixed

  • Cramped watch recordsLong domains, actions, organization controls, alerts, and editors remain contained when the rail is expanded or the screen narrows.

Responsive workbenches for every desk

v0.38.2

Changed

  • Earlier rail compactionThe member navigation becomes compact before it competes with the active workbench.
  • Adaptive organizationPortfolio and Watchlist folder structures move above results on narrower desktops and distribute folders into readable columns.
  • Responsive data viewsDesktop tables remain available when they fit, while tablets use two-column record cards and smaller screens use one column.

Fixed

  • Filter and table collisionsSearch, selects, actions, and financial headers no longer compress into overlapping labels or create document-level horizontal overflow.

Contained editing and resilient appraisals

v0.38.1

Added

  • Actionable appraisal failuresFailed runs now close with a safe reference for retry or support, while the appraisal worker recovers interrupted stale runs and safely reclaims an abandoned worker lock.

Changed

  • Full-width Watchlist editingReasons & auction opens beneath its watched record with room for marketplace, deadline, timezone, pricing, reminders, and monitoring controls.
  • Bounded provider handlingOnly transient provider failures retry once; terminal outcomes remain visible without leaving work running indefinitely.

Fixed

  • Editor containmentRow highlighting and table columns no longer clip or overpaint the expanded Watchlist form.
  • Numeric market keywordsNumeric-looking aggregate keywords no longer interrupt Internal Model matching.
  • Value safetyFailed and generated runs never change approved values without explicit user acceptance and approval.

A calmer, organized opportunity desk

v0.38.0

Added

  • Independent Watchlist foldersCreate nested opportunity folders without changing owned Portfolio organization.
  • Saved Watchlist viewsPreserve folder, filters, sorting, columns, density, and page size for repeatable scans.

Changed

  • Predictable auction orderingTimed auctions sort from soonest to latest, followed by untimed auctions alphabetically, then non-auction records alphabetically.
  • Compact appraisalAutomatic appraisal remains on the domain record but now behaves as a secondary valuation workflow.

Fixed

  • Stable workbench statesCorrected tooltip placement, hover-exit flashing, search metadata alignment, pagination chrome, and Watchlist filter alignment.
  • Bulk reconciliationSelected provider differences now carry an explicit action and complete together without an unnecessary desktop list scroller.

Faster portfolio decisions

v0.37.0

Added

  • Practical paginationPortfolio and Watchlist now provide server-backed page controls and selectable row counts for large collections.
  • Inline appraisalAutomatic appraisal can be started and reviewed without leaving an owned-domain record.
  • Bulk reconciliationSelected connection differences can accept provider evidence or retain DNventory values together.

Changed

  • Watchlist workbenchSearch, reason and state filters, sortable columns, auction-end ordering, mobile cards, and clearer opportunities make watched records easier to scan.
  • Connection deskProvider marks, health, capabilities, schedules, and reconciliation actions now use a clearer operational hierarchy.
  • Payment remindersThirty-day installments join daily digests, seven-day and overdue items are urgent, and weekly summaries include the due count.

Fixed

  • Registry Desk detailsCorrected dashboard help placement, rail chrome, dark field states, form and filter alignment, report navigation affordance, and portfolio/footer spacing.
  • Readable rowsPortfolio hover no longer flashes white, long content remains contained, and toolbars have deliberate breathing room.

Registry Desk corrective application pass

v0.36.1

Changed

  • Clearer application hierarchyThe authenticated workspace now uses one stable page gutter, quieter surfaces, tighter typography, and more deliberate spacing across dense workbenches.
  • Tablet compositionPortfolio, Watchlist, rails, filters, tables, and forms now reflow intentionally at 768px and 1024px instead of behaving like squeezed desktop layouts.

Fixed

  • Consistent dark statesLegacy light-theme values and competing cascade paths no longer produce white controls, mismatched borders, or inconsistent text contrast inside the member application.
  • Workbench containmentLong domain, provider, folder, and tag labels, sticky controls, menus, and narrow tables remain within their intended surface.

Compatibility

  • Presentation-only releaseNo route, authentication rule, stored preference, database behavior, workspace boundary, or public API contract changed.

Registry Noir 4.0 — Registry Desk

v0.36.0

Added

  • Task-based navigationMember and administration destinations are regrouped around daily decisions, with one account menu and a complete mobile More sheet.
  • Expressive interaction systemMenus, drawers, tabs, dialogs, entrances, saved rows, live results, and page transitions share accessible motion and feedback contracts.

Changed

  • Registry Desk compositionOverview, portfolio workbenches, records, forms, public pages, authentication, and privileged operations now share one balanced, information-dense visual system.
  • Smaller frontend payloadFive overlapping runtime stylesheets are consolidated into one fingerprinted asset with more than 20% lower compressed transfer size.

Fixed

  • Responsive containmentLong labels, folders, tables, sticky controls, editors, popovers, and action menus remain inside mobile and desktop viewports.
  • Accessible motionReduced-motion and forced-colors modes preserve content, focus, status meaning, and complete non-JavaScript fallbacks.

Internal valuation model 2.0

v0.35.0

Added

  • Name classificationResults identify exact keywords, compounds, brandables, acronyms, numeric names, and unsupported international forms.
  • Liquidity guidanceA separate relative score, label, and broad holding horizon help rank names without pretending to predict a sale.

Changed

  • Robust evidence blendTLD and keyword periods now combine in logarithmic space with outlier resistance, evidence reliability, and sparse-keyword shrinkage.
  • Wholesale integrityWholesale remains anchored to direct wholesale TLD evidence instead of applying a fixed discount to retail.

Fixed

  • Morphology matchingPlural keyword surfaces and Unicode-aware name lengths improve segmentation and placement decisions.
  • UncertaintyUnsupported and stale segments widen ranges and lower confidence rather than producing overconfident numbers.

Porkbun workspace connections

v0.34.0

Added

  • Porkbun connectorWorkspace managers can connect multiple Porkbun accounts with separate production API-key and secret-key pairs and synchronize API v3 evidence into the existing reconciliation desk.
  • Access-aware evidenceExternally managed domains, per-domain API-access limits, account labels, registration facts, and permitted nameservers remain visible without overstating provider authority.

Security

  • GET-only boundaryPorkbun credentials are encrypted per workspace, sent only in request headers over verified TLS and forced IPv4, and restricted by DNventory to documented domain-list and nameserver GET operations.

Dynadot workspace connections

v0.33.0

Added

  • Dynadot connectorWorkspace managers can connect multiple Dynadot accounts with separate production API keys and secrets and synchronize signed REST v2 domain evidence into the reconciliation desk.
  • Rich source evidenceDates, renewal option, locks, holds, privacy, status, for-sale state, nameservers, DNS mode, provider folder, note, and transfer-lock date remain traceable without importing sensitive contact records.

Security

  • GET-only boundaryDynadot requests are HMAC-SHA256 signed, forced through the allowlisted production IPv4 address, encrypted per workspace, and restricted by DNventory to the domain-list GET endpoint.

Canonical provider reconciliation

v0.32.1

Changed

  • Identity-aware comparisonRegistrar and DNS evidence now compares canonical provider identities and aliases instead of requiring identical display text.

Fixed

  • Label-only proposalsGoDaddy DNS and GoDaddy no longer appear as a meaningful difference. Existing alias-only proposals are closed automatically while source evidence remains intact.

GoDaddy workspace connections

v0.32.0

Added

  • GoDaddy connectorWorkspace managers can connect multiple GoDaddy accounts with read-only Personal Access Tokens and synchronize Domains v3 facts into the existing reconciliation desk.
  • Nameserver evidenceDomain status, dates, auto-renew, lock, privacy, and nameservers remain traceable; GoDaddy DNS is inferred only from recognized domaincontrol.com nameservers.

Changed

  • Provider-neutral ConnectionsCloudflare and GoDaddy now share the same tenant-safe sync, provider-only import, missing-record, scheduling, and decision workflows.

Security

  • Workspace-owned PATsGoDaddy credentials are verified, encrypted at rest, never redisplayed, optionally tracked by expiration, and replaceable without losing history.

Cloudflare reconciliation actions

v0.31.8

Fixed

  • Reconciliation decisionsUse provider and Keep DNventory now retain the active connection context instead of resolving to a false Connection not found page.
  • Complete action coverageSync, provider-only import, ignore, settings, credential replacement, and disconnect use the same explicit tenant-scoped POST contract.

Cloudflare connection completion

v0.31.7

Fixed

  • Account confirmationThe selected Cloudflare account can now be connected without losing the one-time authorization state during the confirmation POST.
  • Expired-state accuracyThe final form uses an explicit canonical endpoint and carries the short-lived state in its protected submission instead of relying on the browser to retain a query string.

Cloudflare account discovery

v0.31.6

Fixed

  • Authorized account returnAfter successful Cloudflare consent, DNventory now lists accounts from accepted user memberships instead of calling an account-management endpoint outside the granted permission.
  • Membership paginationEvery accepted membership page is read with bounded pagination and duplicate-safe account normalization.

Changed

  • Credential-aware discoveryOAuth uses Memberships Read while the advanced API-token fallback retains its existing account lookup behavior.

Cloudflare permission consent

v0.31.5

Fixed

  • Usable Cloudflare consentThe consent screen now receives Memberships Read plus the selected Registrar Domains Read and/or Zone Read permissions instead of showing zero permissions.
  • Configuration guardOAuth readiness now requires every permission used by DNventory's Cloudflare adapter, preventing an incomplete client configuration from appearing ready.

Changed

  • Capability-aware accessRegistrar-only and DNS-only connections request only their corresponding provider permission; selecting both requests both read permissions.

Cloudflare consent completion

v0.31.4

Changed

  • Consent-stage diagnosticsRemoved the protocol-only scope that caused Cloudflare's consent submission to fail, revealing that this provider also requires explicit resource scopes in the authorization request.
  • Callback reachability evidenceProduction diagnostics distinguish a consent-page failure from a callback or token-exchange failure without exposing authorization data.

Cloudflare consent compatibility

v0.31.3

Fixed

  • Valid scope requestDNventory no longer requests OpenID from a Cloudflare client configured for Authorization Code access, preventing an immediate invalid_scope rejection.
  • Provider-side verificationThe production OAuth probe now asks Cloudflare to validate the generated request before reporting the connection path healthy.

Changed

  • Actionable authorization errorsSafe provider error codes now distinguish cancelled consent from invalid permissions or callback configuration.

Cloudflare connection routing

v0.31.2

Fixed

  • OAuth launch routeThe Cloudflare authorization button now preserves nested clean-route separators instead of encoding them into one invalid path.
  • Live deployment probeProduction verification now confirms OAuth readiness and a secret-free Authorization Code + PKCE redirect before rollout is accepted.

Changed

  • Reliable connection startWorkspace managers can proceed from Connections to Cloudflare consent using the configured production client.

Cloudflare authorization correction

v0.31.1

Added

  • OAuth-first connectionWorkspace managers now continue to Cloudflare, review consent, select an authorized account, and return to finish setup.
  • Renewable accessShort-lived access tokens refresh through encrypted, rotatable credentials without asking members to copy secrets.

Changed

  • Token setup is advancedManual API tokens remain available only as a fallback for Cloudflare accounts where OAuth cannot be used.
  • Safer reconnectExisting token connections can upgrade in place without losing snapshots, decisions, or imported records.

Security

  • Bound authorization stateOne-time OAuth state is hashed, session-bound, short-lived, and scrubbed after use.
  • Revocation and cleanupDisconnect attempts provider revocation, while expired setup credentials are removed by the connection worker.

Connected portfolio evidence

v0.31.0

Added

  • Workspace ConnectionsAdd multiple provider accounts and manage Cloudflare Registrar and DNS capabilities independently.
  • Reconciliation deskReview provider differences, deliberately import provider-only domains, and inspect immutable snapshots and sync history.
  • Connection operationsAdministrators can control availability and inspect aggregate health, redacted failures, and worker freshness.

Changed

  • Manual data remains authoritativeConnected data is source-attributed evidence and never silently overwrites a workspace field.
  • Non-destructive absenceA domain missing from a provider response is flagged for review rather than deleted or closed.

Security

  • Encrypted credentialsProvider tokens use authenticated encryption and are never returned after save.
  • Tenant-safe reviewEvery connection, snapshot, decision, and import is scoped to its workspace.

Clear notification triage

v0.30.1

Changed

  • Notification InboxDismissed notifications now leave the default Inbox while remaining available through the Dismissed filter.
  • Timezone readabilityThe selected auction timezone uses the full width of an existing-domain editor instead of being clipped inside a narrow half-column.

Fixed

  • Dismiss feedbackRead and dismiss actions now confirm their result, and already-dismissed history no longer presents another Dismiss button.

Reliable auction intake

v0.30.0

Added

  • Auction timezone entryEnter a marketplace-local deadline with any supported IANA timezone; DNventory converts it to UTC with daylight-saving rules and displays the saved result in the workspace timezone.
  • URL-assisted auction setupAn existing Watch URL fills an empty Auction URL, and recognized auction hosts can suggest the marketplace and its usual timezone without scraping.

Changed

  • Durable auction provenanceEach auction episode retains the timezone used when its deadline was entered.

Fixed

  • Notification statusMark read, dismiss, and mark-all-read no longer fail because of a database collation comparison.
  • Auction savesExisting and unchanged auction details save reliably through native PDO.
  • Long domain containmentPortfolio domain labels no longer cross into the Status column.

Faster portfolio navigation

v0.29.0

Added

  • Live Portfolio and Watchlist searchResults narrow immediately while typing, announce the match count, update the URL, and retain normal server-side submission as a fallback.

Changed

  • Watchlist workbenchLifecycle, reason, search, state, tag, opportunity, and actions now form a clearer desktop table and labeled mobile-card workflow.

Fixed

  • Portfolio folder visibilityThe rightmost folder column now fits at large desktop widths and remains locally scrollable at narrower breakpoints instead of being cut off.
  • Email preference renderingProfile now renders every category delivery choice correctly instead of failing while selecting the saved option.

Quieter watchlist email

v0.28.1

Added

  • Run-aware watch summariesRelated state, registrar, expiration, nameserver, and monitoring-failure changes now share one concise email after a short quiet period.

Changed

  • Calmer immediate deliveryEvery domain still receives its own in-app notification and record link, while email avoids sending one message per changed domain.

Fixed

  • First-run burstsA newly scheduled monitor can discover many changes without flooding a member's inbox.

Email delivery and scheduled communications

v0.28.0

Added

  • Verified account deliveryNew registrations require a 24-hour email verification link; invitations, password resets, security notices, and welcome mail use the same durable outbox.
  • Digests and summariesRoutine activity is grouped by workspace-local day while a weekly portfolio summary highlights renewal, payment, restriction, review, and data-quality exposure.
  • Email operationsAdministration exposes relay settings, queue depth, worker freshness, redacted attempts, tests, retries, and cancellation.

Changed

  • Shared notification pipelineMonitoring, auction, payment, restriction, review, appraisal, provider, invitation, and security workflows now route consistently to in-app and optional email delivery.
  • Private preferencesEach workspace member controls immediate, digest, weekly, and category delivery without weakening required security mail.

Fixed

  • Durable retriesEncrypted queued payloads survive requests, reject duplicates, retry bounded transient failures, and retain redacted operational evidence.
  • Timezone-safe schedulesDaily and weekly email follows each workspace timezone and daylight-saving rules while production cron remains UTC.

Auction and change watchlists

v0.27.0

Added

  • Overlapping watch reasonsClassify a domain for Auctions, Domain changes, or both and filter each view without duplicating its record.
  • Durable auction deskTrack marketplace, URL, deadline, current price, maximum bid, reminders, outcomes, and prior auction episodes.

Changed

  • Contextual WatchlistAuction rows prioritize ended and upcoming opportunities while change records retain RDAP state and history.
  • Canonical marketplacesAdministrators govern marketplace names alongside registrar, DNS, and parking providers; Other remains immediately usable.

Fixed

  • Lossless outcomesWon, Lost, Extended, and Cancelled actions preserve auction history, reschedule or cancel derived reminders correctly, and keep Changes records active when appropriate.
  • Responsive auction controlsReason selection, auction forms, outcome prompts, and history remain keyboard accessible and contained on mobile.

Portable portfolio views

v0.26.0

Added

  • Direct Portfolio exportDownload a CSV from the Portfolio header without detouring through Reports.
  • Complete organization contextFolder paths and flat tags travel with each exported domain.

Changed

  • View-aware outputExports preserve the current search, lifecycle, registrar, folder, tag, and sort selections while including every matching result across pagination.
  • Richer portable recordsInfrastructure, dates, costs, values, plans, restrictions, reviews, and notes share one stable column contract.

Fixed

  • Spreadsheet safetyExported text that resembles a spreadsheet formula is neutralized before download.
  • Private cachingPortfolio downloads are explicitly marked private and non-cacheable.

First-class portfolio tags

v0.25.0

Added

  • Dedicated Tags workspaceCreate, rename, recolor, archive, restore, and inspect usage for reusable workspace labels.
  • Bulk tag actionsAdd, remove, replace, or clear tags across selected Portfolio records.

Changed

  • Clear taxonomy rolesFolders remain hierarchical locations while tags are presented as flat cross-portfolio labels.
  • Direct assignmentOwned and watched records, intake, and Portfolio organization expose tag controls and management links.

Fixed

  • Tag discoverabilityTags are now a primary Inventory destination instead of a hidden Settings control.
  • Consistent navigationVisible tag chips open the matching filtered Portfolio or Watchlist view.

Reliable Watchlist actions

v0.24.2

Fixed

  • Visible More menuThe Watchlist action menu now renders above clipped table and card surfaces at every row position.
  • Predictable dismissalThe menu closes on outside click, action selection, or Escape and restores keyboard focus when dismissed.

Reliable folder rail controls

v0.24.1

Fixed

  • Expand after collapseThe folder rail now keeps its toggle visible in the collapsed state, allowing the full folder tree to be restored immediately.
  • Accessible stateThe toggle continues to update its label and expanded state for keyboard and assistive-technology users.

Faster decisions on every screen

v0.24.0

Added

  • Saved Portfolio viewsPreserve filters, folder scope, visible and ordered columns, density, and an optional personal default.
  • Review triageSnooze, dismiss with a reason, resolve, restore, or bulk-triage current decision signals.

Changed

  • Focused Watchlist actionsView record is primary while edit, alerts, acquisition, and archive actions live in a clear overflow menu.
  • Report wayfindingReports are grouped by decision type, use a mobile selector, and remember the current session\'s last report.

Fixed

  • Responsive containmentThe renewal runway, record tabs, wide tables, sticky actions, and mobile navigation no longer widen or hide the working area.
  • Visual consistencyRecord notes, intake mode labels, tag selection, table density, and overflow affordances now match Registry Noir.

Reliable in-place organization

v0.23.2

Fixed

  • Correct folder-save destinationPortfolio folder changes now post to the canonical authenticated Portfolio route instead of interpreting the hidden action field as a URL.
  • Alternate page statesIn-place saves remain reliable from filtered, paginated, and otherwise parameterized Portfolio views.

Changed

  • Explicit form contractBoth desktop and mobile organizers declare their save endpoint and retain the ordinary no-JavaScript fallback.

Faster portfolio organization

v0.23.1

Changed

  • In-place folder savesPer-domain organization now updates folder labels and counts without refreshing Portfolio or losing scroll position.
  • Bidirectional ancestryClearing a child clears ancestors that no other selected branch requires.

Fixed

  • Filtered folder viewsA domain that no longer belongs in the active folder view exits smoothly while result and folder counts remain accurate.
  • Save resilienceBusy, success, error, keyboard and no-JavaScript fallback states preserve a reliable organization workflow.

Canonical providers and stronger folders

v0.23.0

Added

  • Canonical provider directoryRegistrar, DNS, and parking choices now use a platform-managed catalog with exact aliases and service-specific capabilities.
  • Other-provider reviewUnlisted services can still be saved and are placed in an administrator queue for mapping or addition.

Changed

  • Complete folder ancestrySelecting a nested folder automatically includes every parent, across single entry, batch review, imports, watch records, bulk organization, and existing assignments.
  • Consistent reporting labelsKnown spelling and legal-name variants resolve to one canonical provider.

Fixed

  • Bottom-row organizationThe Portfolio folder editor is now positioned against the viewport and can no longer be clipped by a long scrolling domain table.
  • Accessible overlay behaviorThe organizer closes outside or with Escape, restores focus, and stays inside the available viewport.

Official market-data compatibility

v0.22.1

Changed

  • Complete NameBio coverageThe snapshot importer now recognizes official value headers, safe Unicode keyword rows, and compound suffixes such as .co.uk.
  • Relevant statistics onlyZero-sale groups are omitted from the immutable snapshot while every positive-sale aggregate remains strictly validated.

Fixed

  • Snapshot activationComplementary official rows such as NameBio's padded .bot entry no longer create false duplicate-period failures.
  • Retry recoveryAn inactive failed preview can be safely discarded before corrected files are uploaded again.
  • Compound-domain valuationThe internal model uses the longest matching imported suffix when selecting TLD evidence.

Zero-cost internal valuation model

v0.22.0

Added

  • DNventory Internal ModelGenerate point or low/base/high retail and wholesale estimates locally from administrator-imported NameBio aggregate statistics.
  • Immutable market snapshotsAdministrators can validate, preview, activate, and roll back monthly CSV or gzip snapshots with checksum protection and required attribution.
  • Separate evidenceInternal results can be accepted and explicitly approved without being blended into provider estimates.

Changed

  • Automatic appraisal availabilityUSD workspaces can use the internal model when the active snapshot is current even when no paid provider is configured.
  • Transparent uncertaintyConfidence is capped at Medium, stale data forces Low, expired data produces Insufficient, and broad minimum ranges prevent false precision.

Fixed

  • No circular valuation inputsAcquisition cost, asking price, approved values, prior appraisals, provider estimates, and tenant outcomes cannot affect internal calculations.
  • No runtime market dependencyInternal estimates make no external market-data request and wholesale is never fabricated from a retail discount.

Explainable automatic appraisals

v0.21.0

Added

  • Retail and wholesale estimatesRequest a point or low/base/high appraisal for owned and watched domains, with confidence, sources, comparables, RDAP facts, and missing-source explanations.
  • Batch operationsQueue up to 50 selected records, follow worker progress, review partial failures, and retry without losing usable results.
  • Administrative controlsPlatform administrators can manage availability, quotas, provider circuit breakers, credential readiness, cache usage, failures, and worker freshness.

Changed

  • Evidence governanceGenerated results stay separate until accepted; approval is always explicit, retail and wholesale evidence never mix, and historical runs remain immutable.
  • Valuation provenanceEvidence and working-value snapshots now record market basis, origin, model version, and linked automatic run.

Fixed

  • Marketing presentationThe standalone homepage bundle now includes and verifies its complete Registry Noir stylesheet set, preventing a partially styled public page.
  • No fabricated fallbackDNventory shows Insufficient with a reason when no real market source is available instead of producing a structural guess.
  • Outlier resistanceThe versioned deterministic ensemble uses logarithmic prices, weighted medians, calibrated quantiles, source agreement, and comparable quality.

Readable appraisal forms

v0.20.5

Added

  • Clear entry cuesValuation controls now identify workspace currency and required or optional inputs.

Changed

  • Responsive form measureAppraisal entry uses a readable desktop width and stacks before tablet columns become cramped.

Fixed

  • Spacing and alignmentRestored gutters, stable selector width, and equal control heights in both estimate modes.

Aligned valuation entry

v0.20.4

Added

  • Purpose-built valuation gridPoint and range inputs now use a layout designed for their conditional states.

Changed

  • Coherent range rowLow, Base, and High appear together at equal widths, with a clear single-column order on smaller screens.

Fixed

  • Uneven form alignmentConditional fields no longer alternate awkwardly through the generic two-column form grid.

Valuation visibility correction

v0.20.3

Added

  • Computed-layout coverageValuation tests now verify that inactive fields occupy no visual layout space.

Changed

  • Reliable hidden statesHidden application controls now consistently resolve to display:none even when a component has its own display rule.

Fixed

  • Relevant valuation fieldsPoint mode now visibly removes Low/Base/High, while range mode visibly removes Point Value.

Focused valuation entry

v0.20.2

Added

  • Contextual guidanceThe estimate selector explains whether one value or an ordered range is required.

Changed

  • Relevant fields onlyPoint estimates show Point Value; range estimates show Low, Base, and High across owned, watched, and evidence-editing workflows.

Fixed

  • Stale value submissionHidden fields are disabled so values from an inactive estimate type are not submitted.

Resilient batch lookups

v0.20.1

Added

  • Automatic recoveryA transient RDAP failure receives one automatic retry before DNventory asks you to retry manually.

Changed

  • Gentler lookup queueMultiple intake staggers requests and limits simultaneous public lookups to reduce upstream bursts.

Fixed

  • Initial batch reliabilityAutomatic per-domain checks no longer fail immediately when the public RDAP service has a brief busy response.

Per-domain RDAP review

v0.20.0

Added

  • Suggestion provenanceHover or keyboard-focus an RDAP result to see each field and exact value DNventory filled.
  • Progressive row checksEvery valid pasted domain receives its own public-data check and visible progress state.

Changed

  • Domain-only first stepMultiple entry now begins with names only instead of asking for misleading shared details.
  • Independent editorsRegistrar, registration, expiration, DNS, acquisition, renewal, folders, and tags are reviewed per domain.

Fixed

  • Release chronologyThe August 25 access-and-navigation release is correctly identified as v0.17.1 rather than duplicating v0.17.0.
  • Responsive reviewThe wide batch table is replaced by accessible cards that do not require horizontal scrolling.

Overview metric guidance

v0.19.1

Added

  • Eight summary explanationsEvery top-level Overview metric now has concise question-mark guidance explaining its scope and calculation.

Changed

  • Overflow-safe placementMetric guidance opens inward from the card edge so it remains readable on compact and wide screens.

Fixed

  • Complete Overview guidanceThe eight summary cards now match the contextual help already available on the eight detailed Overview sections.

Rapid Domain Intake

v0.19.0

Added

  • Single and Multiple entryCapture one domain quickly or paste and review up to 50 names at once.
  • Public RDAP suggestionsEmpty registration details can be suggested without replacing information you entered.
  • Reusable defaultsWorkspace and current-session values reduce repetitive entry.

Changed

  • Quick-first formAcquisition and renewal essentials stay visible while secondary detail is grouped into clear optional sections.
  • Editable batch reviewEvery valid row can be corrected, organized, included, or removed before an atomic save.

Fixed

  • Faster repeated entryRecent reusable values remain available only for the current login session and can be reset instantly.
  • Safer pasted URLsHTTP and HTTPS URLs are reduced to hostnames without accepting email addresses or unsafe paths.

Prior release

v0.18.3

Added

  • Overview guidanceContextual question-mark help now explains every major Overview panel.
  • Historical renewal basisMonthly or annual renewal costs can accrue on completed acquisition anniversaries.
  • Existing-domain cost correctionAcquisition date, acquisition cost and renewal history can be previewed and recalculated together.

Changed

  • Production release identityVersions 0.18.0 through 0.18.2 were local development builds; 0.18.3 was the promoted production release and removed the local-build suffix.
  • Changelog organizationUpdates are grouped by release day and change type for faster scanning.
  • Investment reportingActual cash and calculated renewal basis remain visibly separated throughout the portfolio.

Fixed

  • Portfolio compositionTLD and purpose counts no longer include watchlist targets.
  • Acquisition correctionsReplacing an active acquisition basis retains prior entries without double counting.

Access and navigation

v0.17.1

Added

  • Trusted-device accessStandard users can stay signed in for 30 days by default and opt out on shared devices.

Changed

  • Cleaner routesApplication pages use readable paths such as /dashboard, /portfolio and /watchlist.
  • Resource navigationHelp, API, Updates and Status links are consistently available.

Fixed

  • Account accessRegistration alignment, exact password handling and sign-out behavior were corrected.
  • Session boundariesMember and administrator identities use separate sessions and login surfaces.

Platform completion

v0.17.0

Added

  • Complete watch recordsSource URLs, editing, reminders, notification rules, folders, tags, research and retained acquisition history.
  • Richer domain recordsDomain age, DNS, parking, payment plans, lease-to-own arrangements and transfer restrictions.
  • Expanded reportingRenewal exposure, performance, portfolio ranges, closed results, plans, restrictions and data quality.

Changed

  • Premium dark workspaceThe refreshed interface brought clearer hierarchy, responsive navigation, accessible confirmations and focused motion.

Fixed

  • Portfolio organizationNested folders, direct cell organization and watchlist actions were refined across desktop and mobile.