refactor: update namespaces for L1 package convention

- Core\Mod\Tenant -> Core\Tenant
- Core\Mod\Agentic -> Core\Agentic

Part of namespace restructure to align with L1/L2 module conventions.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Snider 2026-01-27 17:34:38 +00:00
parent afc03418eb
commit 087d0ad557
38 changed files with 94 additions and 94 deletions

View file

@ -96,8 +96,8 @@ class CdnPurge extends Command
// Purge by workspace
if (empty($workspaceArg)) {
$workspaceOptions = ['all', 'Select specific URLs'];
if (class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
$workspaceOptions = array_merge($workspaceOptions, \Core\Mod\Tenant\Models\Workspace::pluck('slug')->toArray());
if (class_exists(\Core\Tenant\Models\Workspace::class)) {
$workspaceOptions = array_merge($workspaceOptions, \Core\Tenant\Models\Workspace::pluck('slug')->toArray());
}
$workspaceArg = $this->choice(
'What would you like to purge?',
@ -218,13 +218,13 @@ class CdnPurge extends Command
protected function purgeAllWorkspaces(bool $dryRun): int
{
if (! class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
if (! class_exists(\Core\Tenant\Models\Workspace::class)) {
$this->error('Workspace purge requires Tenant module to be installed.');
return self::FAILURE;
}
$workspaces = \Core\Mod\Tenant\Models\Workspace::all();
$workspaces = \Core\Tenant\Models\Workspace::all();
if ($workspaces->isEmpty()) {
$this->error('No workspaces found');
@ -276,19 +276,19 @@ class CdnPurge extends Command
protected function purgeWorkspace(string $slug, bool $dryRun): int
{
if (! class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
if (! class_exists(\Core\Tenant\Models\Workspace::class)) {
$this->error('Workspace purge requires Tenant module to be installed.');
return self::FAILURE;
}
$workspace = \Core\Mod\Tenant\Models\Workspace::where('slug', $slug)->first();
$workspace = \Core\Tenant\Models\Workspace::where('slug', $slug)->first();
if (! $workspace) {
$this->error("Workspace not found: {$slug}");
$this->newLine();
$this->info('Available workspaces:');
\Core\Mod\Tenant\Models\Workspace::pluck('slug')->each(fn ($s) => $this->line(" - {$s}"));
\Core\Tenant\Models\Workspace::pluck('slug')->each(fn ($s) => $this->line(" - {$s}"));
return self::FAILURE;
}

View file

@ -601,8 +601,8 @@ class ConfigService
// Re-compute this key for the affected scope
$workspace = null;
if ($workspaceId !== null && class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
$workspace = \Core\Mod\Tenant\Models\Workspace::find($workspaceId);
if ($workspaceId !== null && class_exists(\Core\Tenant\Models\Workspace::class)) {
$workspace = \Core\Tenant\Models\Workspace::find($workspaceId);
}
$channel = $channelId ? Channel::find($channelId) : null;
@ -629,7 +629,7 @@ class ConfigService
* Prime cache for all workspaces.
*
* Run this from a scheduled command or queue job.
* Requires Core\Mod\Tenant module to prime workspace-level config.
* Requires Core\Tenant module to prime workspace-level config.
*/
public function primeAll(): void
{
@ -637,8 +637,8 @@ class ConfigService
$this->prime(null);
// Prime each workspace (requires Tenant module)
if (class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
\Core\Mod\Tenant\Models\Workspace::chunk(100, function ($workspaces) {
if (class_exists(\Core\Tenant\Models\Workspace::class)) {
\Core\Tenant\Models\Workspace::chunk(100, function ($workspaces) {
foreach ($workspaces as $workspace) {
$this->prime($workspace);
}

View file

@ -45,13 +45,13 @@ class ConfigExportCommand extends Command
// Resolve workspace
$workspace = null;
if ($workspaceSlug) {
if (! class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
if (! class_exists(\Core\Tenant\Models\Workspace::class)) {
$this->components->error('Tenant module not installed. Cannot export workspace config.');
return self::FAILURE;
}
$workspace = \Core\Mod\Tenant\Models\Workspace::where('slug', $workspaceSlug)->first();
$workspace = \Core\Tenant\Models\Workspace::where('slug', $workspaceSlug)->first();
if (! $workspace) {
$this->components->error("Workspace not found: {$workspaceSlug}");
@ -99,8 +99,8 @@ class ConfigExportCommand extends Command
public function complete(CompletionInput $input, \Symfony\Component\Console\Completion\CompletionSuggestions $suggestions): void
{
if ($input->mustSuggestOptionValuesFor('workspace')) {
if (class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
$suggestions->suggestValues(\Core\Mod\Tenant\Models\Workspace::pluck('slug')->toArray());
if (class_exists(\Core\Tenant\Models\Workspace::class)) {
$suggestions->suggestValues(\Core\Tenant\Models\Workspace::pluck('slug')->toArray());
}
}

View file

@ -53,13 +53,13 @@ class ConfigImportCommand extends Command
// Resolve workspace
$workspace = null;
if ($workspaceSlug) {
if (! class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
if (! class_exists(\Core\Tenant\Models\Workspace::class)) {
$this->components->error('Tenant module not installed. Cannot import workspace config.');
return self::FAILURE;
}
$workspace = \Core\Mod\Tenant\Models\Workspace::where('slug', $workspaceSlug)->first();
$workspace = \Core\Tenant\Models\Workspace::where('slug', $workspaceSlug)->first();
if (! $workspace) {
$this->components->error("Workspace not found: {$workspaceSlug}");
@ -177,8 +177,8 @@ class ConfigImportCommand extends Command
public function complete(CompletionInput $input, \Symfony\Component\Console\Completion\CompletionSuggestions $suggestions): void
{
if ($input->mustSuggestOptionValuesFor('workspace')) {
if (class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
$suggestions->suggestValues(\Core\Mod\Tenant\Models\Workspace::pluck('slug')->toArray());
if (class_exists(\Core\Tenant\Models\Workspace::class)) {
$suggestions->suggestValues(\Core\Tenant\Models\Workspace::pluck('slug')->toArray());
}
}
}

View file

@ -33,13 +33,13 @@ class ConfigListCommand extends Command
$workspace = null;
if ($workspaceSlug) {
if (! class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
if (! class_exists(\Core\Tenant\Models\Workspace::class)) {
$this->error('Tenant module not installed. Cannot filter by workspace.');
return self::FAILURE;
}
$workspace = \Core\Mod\Tenant\Models\Workspace::where('slug', $workspaceSlug)->first();
$workspace = \Core\Tenant\Models\Workspace::where('slug', $workspaceSlug)->first();
if (! $workspace) {
$this->error("Workspace not found: {$workspaceSlug}");

View file

@ -36,13 +36,13 @@ class ConfigPrimeCommand extends Command
}
if ($workspaceSlug) {
if (! class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
if (! class_exists(\Core\Tenant\Models\Workspace::class)) {
$this->error('Tenant module not installed. Cannot prime workspace config.');
return self::FAILURE;
}
$workspace = \Core\Mod\Tenant\Models\Workspace::where('slug', $workspaceSlug)->first();
$workspace = \Core\Tenant\Models\Workspace::where('slug', $workspaceSlug)->first();
if (! $workspace) {
$this->error("Workspace not found: {$workspaceSlug}");
@ -59,7 +59,7 @@ class ConfigPrimeCommand extends Command
$this->info('Priming config cache for all workspaces...');
if (! class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
if (! class_exists(\Core\Tenant\Models\Workspace::class)) {
$this->warn('Tenant module not installed. Only priming system config.');
$config->prime(null);
$this->info('System config cached.');
@ -67,7 +67,7 @@ class ConfigPrimeCommand extends Command
return self::SUCCESS;
}
$this->withProgressBar(\Core\Mod\Tenant\Models\Workspace::all(), function ($workspace) use ($config) {
$this->withProgressBar(\Core\Tenant\Models\Workspace::all(), function ($workspace) use ($config) {
$config->prime($workspace);
});

View file

@ -50,13 +50,13 @@ class ConfigVersionCommand extends Command
// Resolve workspace
$workspace = null;
if ($workspaceSlug) {
if (! class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
if (! class_exists(\Core\Tenant\Models\Workspace::class)) {
$this->components->error('Tenant module not installed. Cannot manage workspace versions.');
return self::FAILURE;
}
$workspace = \Core\Mod\Tenant\Models\Workspace::where('slug', $workspaceSlug)->first();
$workspace = \Core\Tenant\Models\Workspace::where('slug', $workspaceSlug)->first();
if (! $workspace) {
$this->components->error("Workspace not found: {$workspaceSlug}");
@ -409,8 +409,8 @@ class ConfigVersionCommand extends Command
}
if ($input->mustSuggestOptionValuesFor('workspace')) {
if (class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
$suggestions->suggestValues(\Core\Mod\Tenant\Models\Workspace::pluck('slug')->toArray());
if (class_exists(\Core\Tenant\Models\Workspace::class)) {
$suggestions->suggestValues(\Core\Tenant\Models\Workspace::pluck('slug')->toArray());
}
}
}

View file

@ -72,12 +72,12 @@ class Channel extends Model
/**
* Workspace this channel belongs to (null = system channel).
*
* Requires Core\Mod\Tenant module to be installed.
* Requires Core\Tenant module to be installed.
*/
public function workspace(): BelongsTo
{
if (class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
return $this->belongsTo(\Core\Mod\Tenant\Models\Workspace::class);
if (class_exists(\Core\Tenant\Models\Workspace::class)) {
return $this->belongsTo(\Core\Tenant\Models\Workspace::class);
}
// Return a null relationship when Tenant module is not installed

View file

@ -67,12 +67,12 @@ class ConfigResolved extends Model
/**
* Workspace this resolution is for (null = system).
*
* Requires Core\Mod\Tenant module to be installed.
* Requires Core\Tenant module to be installed.
*/
public function workspace(): BelongsTo
{
if (class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
return $this->belongsTo(\Core\Mod\Tenant\Models\Workspace::class);
if (class_exists(\Core\Tenant\Models\Workspace::class)) {
return $this->belongsTo(\Core\Tenant\Models\Workspace::class);
}
// Return a null relationship when Tenant module is not installed

View file

@ -61,12 +61,12 @@ class ConfigVersion extends Model
/**
* Workspace this version is for (null = system).
*
* Requires Core\Mod\Tenant module to be installed.
* Requires Core\Tenant module to be installed.
*/
public function workspace(): BelongsTo
{
if (class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
return $this->belongsTo(\Core\Mod\Tenant\Models\Workspace::class);
if (class_exists(\Core\Tenant\Models\Workspace::class)) {
return $this->belongsTo(\Core\Tenant\Models\Workspace::class);
}
// Return a null relationship when Tenant module is not installed

View file

@ -18,7 +18,7 @@ use Core\Config\Models\ConfigKey;
use Core\Config\Models\ConfigProfile;
use Core\Config\Models\ConfigResolved;
use Core\Config\Models\ConfigValue;
use Core\Mod\Tenant\Models\Workspace;
use Core\Tenant\Models\Workspace;
uses(\Illuminate\Foundation\Testing\RefreshDatabase::class);

View file

@ -74,11 +74,11 @@ class ConfigPanel extends Component
#[Computed]
public function workspaces(): \Illuminate\Database\Eloquent\Collection
{
if (! class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
if (! class_exists(\Core\Tenant\Models\Workspace::class)) {
return new \Illuminate\Database\Eloquent\Collection;
}
return \Core\Mod\Tenant\Models\Workspace::orderBy('name')->get();
return \Core\Tenant\Models\Workspace::orderBy('name')->get();
}
#[Computed]
@ -112,8 +112,8 @@ class ConfigPanel extends Component
#[Computed]
public function selectedWorkspace(): ?object
{
if ($this->workspaceId && class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
return \Core\Mod\Tenant\Models\Workspace::find($this->workspaceId);
if ($this->workspaceId && class_exists(\Core\Tenant\Models\Workspace::class)) {
return \Core\Tenant\Models\Workspace::find($this->workspaceId);
}
return null;

View file

@ -35,8 +35,8 @@ class WorkspaceConfig extends Component
$this->config = $config;
// Try to resolve WorkspaceService if Tenant module is installed
if (class_exists(\Core\Mod\Tenant\Services\WorkspaceService::class)) {
$this->workspaceService = app(\Core\Mod\Tenant\Services\WorkspaceService::class);
if (class_exists(\Core\Tenant\Services\WorkspaceService::class)) {
$this->workspaceService = app(\Core\Tenant\Services\WorkspaceService::class);
}
}

View file

@ -22,7 +22,7 @@ use Attribute;
* ## Example
*
* ```php
* use Core\Mod\Tenant\Database\Seeders\FeatureSeeder;
* use Core\Tenant\Database\Seeders\FeatureSeeder;
*
* #[SeederAfter(FeatureSeeder::class)]
* class PackageSeeder extends Seeder

View file

@ -23,7 +23,7 @@ use Attribute;
* ## Example
*
* ```php
* use Core\Mod\Tenant\Database\Seeders\PackageSeeder;
* use Core\Tenant\Database\Seeders\PackageSeeder;
*
* #[SeederBefore(PackageSeeder::class)]
* class FeatureSeeder extends Seeder

View file

@ -292,7 +292,7 @@ class CoreDatabaseSeeder extends Seeder
* Check if a seeder matches a pattern.
*
* Patterns can be:
* - Full class name: Core\Mod\Tenant\Database\Seeders\FeatureSeeder
* - Full class name: Core\Tenant\Database\Seeders\FeatureSeeder
* - Short name: FeatureSeeder
* - Partial match: Feature (matches FeatureSeeder)
*

View file

@ -92,7 +92,7 @@ class AdminMenuRegistry
protected int $cacheTtl;
/**
* EntitlementService instance (Core\Mod\Tenant\Services\EntitlementService when available).
* EntitlementService instance (Core\Tenant\Services\EntitlementService when available).
*/
protected ?object $entitlements = null;
@ -108,8 +108,8 @@ class AdminMenuRegistry
public function __construct(?object $entitlements = null, ?IconValidator $iconValidator = null)
{
if ($entitlements === null && class_exists(\Core\Mod\Tenant\Services\EntitlementService::class)) {
$this->entitlements = app(\Core\Mod\Tenant\Services\EntitlementService::class);
if ($entitlements === null && class_exists(\Core\Tenant\Services\EntitlementService::class)) {
$this->entitlements = app(\Core\Tenant\Services\EntitlementService::class);
} else {
$this->entitlements = $entitlements;
}

View file

@ -39,12 +39,12 @@ class Sidemenu extends Component
// Use current workspace from session, not default
$workspace = null;
if (class_exists(\Core\Mod\Tenant\Services\WorkspaceService::class)) {
$workspace = app(\Core\Mod\Tenant\Services\WorkspaceService::class)->currentModel();
if (class_exists(\Core\Tenant\Services\WorkspaceService::class)) {
$workspace = app(\Core\Tenant\Services\WorkspaceService::class)->currentModel();
}
$isAdmin = false;
if (class_exists(\Core\Mod\Tenant\Models\User::class) && $user instanceof \Core\Mod\Tenant\Models\User) {
if (class_exists(\Core\Tenant\Models\User::class) && $user instanceof \Core\Tenant\Models\User) {
$isAdmin = $user->isHades();
}

View file

@ -77,19 +77,19 @@ class FindDomainRecord
/**
* Resolve workspace from the domain.
*
* Requires Core\Mod\Tenant module to be installed.
* Requires Core\Tenant module to be installed.
*
* @return object|null Workspace model instance or null
*/
protected function resolveWorkspaceFromDomain(string $host): ?object
{
// Check if Tenant module is installed
if (! class_exists(\Core\Mod\Tenant\Models\Workspace::class)) {
if (! class_exists(\Core\Tenant\Models\Workspace::class)) {
return null;
}
// Check for custom domain first
$workspace = \Core\Mod\Tenant\Models\Workspace::where('domain', $host)->first();
$workspace = \Core\Tenant\Models\Workspace::where('domain', $host)->first();
if ($workspace) {
return $workspace;
}
@ -104,7 +104,7 @@ class FindDomainRecord
if (count($parts) >= 1) {
$workspaceSlug = $parts[0];
return \Core\Mod\Tenant\Models\Workspace::where('slug', $workspaceSlug)
return \Core\Tenant\Models\Workspace::where('slug', $workspaceSlug)
->where('is_active', true)
->first();
}

View file

@ -16,9 +16,9 @@ declare(strict_types=1);
* No manual route lists to maintain - new routes are tested automatically.
*/
use Core\Mod\Tenant\Enums\UserTier;
use Core\Mod\Tenant\Models\User;
use Core\Mod\Tenant\Models\Workspace;
use Core\Tenant\Enums\UserTier;
use Core\Tenant\Models\User;
use Core\Tenant\Models\Workspace;
use Illuminate\Support\Facades\Route;
uses()->group('admin-smoke');

View file

@ -91,7 +91,7 @@ describe('Database Migrations', function () {
it('critical seeder classes exist in modules', function () {
// Check for module seeders - these live in Mod namespaces
$moduleSeederClasses = [
\Core\Mod\Tenant\Database\Seeders\PackageSeeder::class,
\Core\Tenant\Database\Seeders\PackageSeeder::class,
\Core\Mod\Commerce\Database\Seeders\TaxRateSeeder::class,
];

View file

@ -87,7 +87,7 @@ describe('404 Error Page', function () {
describe('403 Error Page', function () {
it('returns 403 for forbidden access', function () {
// Create a regular user (not hades)
$user = \Core\Mod\Tenant\Models\User::factory()->create([
$user = \Core\Tenant\Models\User::factory()->create([
'account_type' => 'apollo',
]);

View file

@ -12,8 +12,8 @@ pest()->group('slow');
use Core\Media\Image\ImageOptimization;
use Core\Media\Image\ImageOptimizer;
use Core\Media\Image\OptimizationResult;
use Core\Mod\Tenant\Models\User;
use Core\Mod\Tenant\Models\Workspace;
use Core\Tenant\Models\User;
use Core\Tenant\Models\Workspace;
use Illuminate\Http\UploadedFile;
use Illuminate\Support\Facades\Storage;

View file

@ -22,7 +22,7 @@ declare(strict_types=1);
* - Social: <600ms (acceptable: <1000ms)
*/
use Core\Mod\Tenant\Models\User;
use Core\Tenant\Models\User;
use Illuminate\Support\Facades\DB;
beforeEach(function () {

View file

@ -19,10 +19,10 @@ use Core\Mod\Analytics\Models\AnalyticsGoal;
use Core\Mod\Analytics\Models\AnalyticsWebsite;
use Core\Mod\Commerce\Models\Order;
use Core\Mod\Commerce\Models\Payment;
use Core\Mod\Tenant\Models\Package;
use Core\Mod\Tenant\Models\User;
use Core\Mod\Tenant\Models\Workspace;
use Core\Mod\Tenant\Services\EntitlementService;
use Core\Tenant\Models\Package;
use Core\Tenant\Models\User;
use Core\Tenant\Models\Workspace;
use Core\Tenant\Services\EntitlementService;
uses(\Illuminate\Foundation\Testing\RefreshDatabase::class);

View file

@ -74,7 +74,7 @@ describe('Security Headers on Public Routes', function () {
describe('Security Headers on Authenticated Routes', function () {
beforeEach(function () {
$this->user = \Core\Mod\Tenant\Models\User::factory()->create();
$this->user = \Core\Tenant\Models\User::factory()->create();
});
it('has security headers on hub routes', function () {
@ -98,7 +98,7 @@ describe('Security Headers on Authenticated Routes', function () {
describe('Security Headers on API Routes', function () {
beforeEach(function () {
$this->user = \Core\Mod\Tenant\Models\User::factory()->create([
$this->user = \Core\Tenant\Models\User::factory()->create([
'account_type' => 'hades',
]);
});

View file

@ -11,9 +11,9 @@ declare(strict_types=1);
use Core\Helpers\Rules\HexRule;
use Core\Mod\Social\Enums\ResourceStatus;
use Core\Mod\Tenant\Models\User;
use Core\Mod\Tenant\Rules\CheckUserPasswordRule;
use Core\Mod\Tenant\Rules\ResourceStatusRule;
use Core\Tenant\Models\User;
use Core\Tenant\Rules\CheckUserPasswordRule;
use Core\Tenant\Rules\ResourceStatusRule;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Validator;

View file

@ -256,7 +256,7 @@ return [
],
// Seeder classes to exclude (fully qualified class names)
// Example: [Core\Mod\Tenant\Database\Seeders\DemoWorkspaceSeeder::class]
// Example: [Core\Tenant\Database\Seeders\DemoWorkspaceSeeder::class]
'exclude' => [],
],
];

View file

@ -5,8 +5,8 @@ declare(strict_types=1);
namespace Core\Mod\Trees\Listeners;
use Core\Helpers\PrivacyHelper;
use Core\Mod\Tenant\Controllers\ReferralController;
use Core\Mod\Tenant\Models\AgentReferralBonus;
use Core\Tenant\Controllers\ReferralController;
use Core\Tenant\Models\AgentReferralBonus;
use Core\Mod\Trees\Models\TreePlanting;
use Illuminate\Auth\Events\Registered;
use Illuminate\Support\Facades\Log;

View file

@ -5,8 +5,8 @@ declare(strict_types=1);
namespace Core\Mod\Trees\Middleware;
use Closure;
use Core\Mod\Agentic\Services\AgentDetection;
use Core\Mod\Agentic\Support\AgentIdentity;
use Core\Agentic\Services\AgentDetection;
use Core\Agentic\Support\AgentIdentity;
use Core\Mod\Trees\Models\TreePlanting;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;

View file

@ -4,7 +4,7 @@ declare(strict_types=1);
namespace Core\Mod\Trees\Models;
use Core\Mod\Tenant\Concerns\BelongsToWorkspace;
use Core\Tenant\Concerns\BelongsToWorkspace;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

View file

@ -14,6 +14,6 @@ Route::middleware(['web'])->group(function () {
Route::get('/trees', TreesIndex::class)->name('trees');
// Agent referral tracking (Trees for Agents)
Route::get('/ref/{provider}/{model?}', [\Core\Mod\Tenant\Controllers\ReferralController::class, 'track'])
Route::get('/ref/{provider}/{model?}', [\Core\Tenant\Controllers\ReferralController::class, 'track'])
->name('referral.agent');
});

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
use Core\Mod\Tenant\Models\AgentReferralBonus;
use Core\Tenant\Models\AgentReferralBonus;
use Core\Mod\Trees\Models\TreePlanting;
use Core\Mod\Trees\Models\TreeReserve;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
use Core\Mod\Tenant\Models\User;
use Core\Tenant\Models\User;
use Core\Mod\Trees\Listeners\PlantTreeForAgentReferral;
use Core\Mod\Trees\Models\TreePlanting;
use Core\Mod\Trees\Models\TreeReserve;

View file

@ -3,10 +3,10 @@
declare(strict_types=1);
use Core\Mod\Commerce\Models\Subscription;
use Core\Mod\Tenant\Models\Package;
use Core\Mod\Tenant\Models\User;
use Core\Mod\Tenant\Models\Workspace;
use Core\Mod\Tenant\Models\WorkspacePackage;
use Core\Tenant\Models\Package;
use Core\Tenant\Models\User;
use Core\Tenant\Models\Workspace;
use Core\Tenant\Models\WorkspacePackage;
use Core\Mod\Trees\Models\TreePlanting;
use Core\Mod\Trees\Models\TreeReserve;

View file

@ -2,8 +2,8 @@
declare(strict_types=1);
use Core\Mod\Tenant\Models\User;
use Core\Mod\Tenant\Models\Workspace;
use Core\Tenant\Models\User;
use Core\Tenant\Models\Workspace;
use Core\Mod\Trees\Models\TreePlanting;
use Core\Mod\Trees\Models\TreePlantingStats;
use Core\Mod\Trees\Models\TreeReserve;

View file

@ -2,8 +2,8 @@
declare(strict_types=1);
use Core\Mod\Agentic\Services\AgentDetection;
use Core\Mod\Agentic\Support\AgentIdentity;
use Core\Agentic\Services\AgentDetection;
use Core\Agentic\Support\AgentIdentity;
use Illuminate\Http\Request;
describe('AgentDetection Service', function () {

View file

@ -7,7 +7,7 @@ namespace Core\Tests\Feature;
use Core\Front\Admin\AdminMenuRegistry;
use Core\Front\Admin\Concerns\HasMenuPermissions;
use Core\Front\Admin\Contracts\AdminMenuProvider;
use Core\Mod\Tenant\Services\EntitlementService;
use Core\Tenant\Services\EntitlementService;
use Core\Tests\TestCase;
use Mockery;