devtime-ei 0.1.2__tar.gz → 0.1.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/PKG-INFO +4 -4
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/README.md +2 -2
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/pyproject.toml +2 -2
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/__init__.py +1 -1
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/extractors/nextjs.py +74 -1
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/extractors/typescript.py +15 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime_ei.egg-info/PKG-INFO +4 -4
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/LICENSE +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/setup.cfg +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/ai/__init__.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/ai/local.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/ai/prompts.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/ai/providers.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/assets/devtimeignore.starter +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/cli.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/config.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/db/__init__.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/db/connection.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/db/migrations.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/db/repository.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/db/schema.sql +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/demo.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/fixtures/__init__.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/fixtures/assertions.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/fixtures/loader.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/fixtures/runner.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/intelligence/__init__.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/intelligence/claims.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/intelligence/concepts.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/intelligence/context_pack.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/intelligence/evidence.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/intelligence/lineage.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/intelligence/risk.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/intelligence/scoring.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/mcp/__init__.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/mcp/schemas.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/mcp/server.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/mcp/tools.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/mcp/transport.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/output/__init__.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/output/json_export.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/output/markdown.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/output/terminal.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/paths.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/privacy.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/.devtimeignore +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/README.md +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/docs/decisions/0001-use-jwt.md +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/package.json +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/admin/permissions.ts +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/auth/login.ts +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/auth/middleware.ts +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/auth/tokens.ts +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/billing/stripe-webhook.ts +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/billing/subscription-service.ts +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/export/export-csv.ts +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/jobs/email-worker.ts +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/jobs/queues.ts +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/tests/auth-login.test.ts +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/tests/stripe-signature.test.ts +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/__init__.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/extractors/__init__.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/extractors/base.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/extractors/config_files.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/extractors/docs.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/extractors/python.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/extractors/tests.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/file_walker.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/ignore.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/language.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/scanner/signals.py +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime_ei.egg-info/SOURCES.txt +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime_ei.egg-info/dependency_links.txt +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime_ei.egg-info/entry_points.txt +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime_ei.egg-info/requires.txt +0 -0
- {devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime_ei.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: devtime-ei
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.3
|
|
4
4
|
Summary: Local-first Engineering Intelligence for software repositories
|
|
5
5
|
Author-email: Aviad Shakargi <aviad94@gmail.com>
|
|
6
6
|
Maintainer-email: Aviad Shakargi <aviad94@gmail.com>
|
|
@@ -8,7 +8,7 @@ License: Apache-2.0
|
|
|
8
8
|
Project-URL: Homepage, https://github.com/Shakargy/devtime
|
|
9
9
|
Project-URL: Repository, https://github.com/Shakargy/devtime
|
|
10
10
|
Project-URL: Issues, https://github.com/Shakargy/devtime/issues
|
|
11
|
-
Project-URL: Release Notes, https://github.com/Shakargy/devtime/releases/tag/v0.1.
|
|
11
|
+
Project-URL: Release Notes, https://github.com/Shakargy/devtime/releases/tag/v0.1.3
|
|
12
12
|
Project-URL: Demo, https://youtu.be/1Hiu3Y9J_SI
|
|
13
13
|
Keywords: devtools,cli,static-analysis,repository-analysis,engineering-intelligence,local-first
|
|
14
14
|
Classifier: Development Status :: 3 - Alpha
|
|
@@ -251,9 +251,9 @@ The agent gets three read-only tools: `list_concepts`, `explain_concept`, and
|
|
|
251
251
|
to run, and agent guidance). Local stdio only - no network listener, no write tools,
|
|
252
252
|
no source code returned, only evidence file paths.
|
|
253
253
|
|
|
254
|
-
DevTime is listed in the official MCP Registry as `io.github.
|
|
254
|
+
DevTime is listed in the official MCP Registry as `io.github.Shakargy/devtime`.
|
|
255
255
|
|
|
256
|
-
<!-- mcp-name: io.github.
|
|
256
|
+
<!-- mcp-name: io.github.Shakargy/devtime -->
|
|
257
257
|
|
|
258
258
|
## Installation
|
|
259
259
|
|
|
@@ -212,9 +212,9 @@ The agent gets three read-only tools: `list_concepts`, `explain_concept`, and
|
|
|
212
212
|
to run, and agent guidance). Local stdio only - no network listener, no write tools,
|
|
213
213
|
no source code returned, only evidence file paths.
|
|
214
214
|
|
|
215
|
-
DevTime is listed in the official MCP Registry as `io.github.
|
|
215
|
+
DevTime is listed in the official MCP Registry as `io.github.Shakargy/devtime`.
|
|
216
216
|
|
|
217
|
-
<!-- mcp-name: io.github.
|
|
217
|
+
<!-- mcp-name: io.github.Shakargy/devtime -->
|
|
218
218
|
|
|
219
219
|
## Installation
|
|
220
220
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "devtime-ei"
|
|
3
|
-
version = "0.1.
|
|
3
|
+
version = "0.1.3"
|
|
4
4
|
description = "Local-first Engineering Intelligence for software repositories"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.11"
|
|
@@ -50,7 +50,7 @@ dev = [
|
|
|
50
50
|
Homepage = "https://github.com/Shakargy/devtime"
|
|
51
51
|
Repository = "https://github.com/Shakargy/devtime"
|
|
52
52
|
Issues = "https://github.com/Shakargy/devtime/issues"
|
|
53
|
-
"Release Notes" = "https://github.com/Shakargy/devtime/releases/tag/v0.1.
|
|
53
|
+
"Release Notes" = "https://github.com/Shakargy/devtime/releases/tag/v0.1.3"
|
|
54
54
|
Demo = "https://youtu.be/1Hiu3Y9J_SI"
|
|
55
55
|
|
|
56
56
|
[project.scripts]
|
|
@@ -1,10 +1,16 @@
|
|
|
1
|
-
"""Next.js App Router signal extractor.
|
|
1
|
+
"""Next.js App Router and Pages Router API signal extractor.
|
|
2
2
|
|
|
3
3
|
Added during V0 Reality Validation: Snapilio and SaaSVoice are Next.js App Router
|
|
4
4
|
apps whose API surface is file-based (`app/api/**/route.ts` exporting HTTP method
|
|
5
5
|
handlers). The Express/FastAPI extractors saw none of it, so every concept
|
|
6
6
|
degraded to weak dependency evidence. This extractor parses route handlers and
|
|
7
7
|
derives the route path from the directory structure.
|
|
8
|
+
|
|
9
|
+
v0.1.3 (Cal.com proof run): Pages Router API files (`pages/api/**/*.ts`) are also
|
|
10
|
+
routes; without them, admin/trpc surfaces were invisible. Disabled-endpoint stubs
|
|
11
|
+
(handlers whose only behavior is a 404/501 response, e.g. features stripped from a
|
|
12
|
+
community edition) are NOT route behavior and are skipped - a permanently-404
|
|
13
|
+
endpoint must not confirm a concept.
|
|
8
14
|
"""
|
|
9
15
|
|
|
10
16
|
from __future__ import annotations
|
|
@@ -57,7 +63,74 @@ def derive_route_path(rel_path: str) -> str:
|
|
|
57
63
|
return "/" + "/".join(cleaned)
|
|
58
64
|
|
|
59
65
|
|
|
66
|
+
_PAGES_API_EXTS = (".ts", ".js", ".tsx", ".jsx")
|
|
67
|
+
|
|
68
|
+
# Pages Router handlers: export default function handler(...) / export default handler
|
|
69
|
+
_PAGES_HANDLER_RE = re.compile(r"export\s+default\s+(?:async\s+)?(?:function\b|\w+)")
|
|
70
|
+
|
|
71
|
+
_STATUS_RE = re.compile(r"(?:res\.status|new\s+Response\s*\([^)]*status\s*:)\s*\(?\s*(\d{3})")
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
def is_pages_api_route(rel_path: str) -> bool:
|
|
75
|
+
if not rel_path.endswith(_PAGES_API_EXTS):
|
|
76
|
+
return False
|
|
77
|
+
return "pages/api/" in rel_path or rel_path.startswith("pages/api/")
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
def derive_pages_route_path(rel_path: str) -> str:
|
|
81
|
+
"""Turn apps/web/pages/api/trpc/admin/[trpc].ts -> /api/trpc/admin/[trpc]."""
|
|
82
|
+
marker = "pages/api/"
|
|
83
|
+
idx = rel_path.find(marker)
|
|
84
|
+
tail = rel_path[idx + len(marker):]
|
|
85
|
+
# Strip the extension; index files map to their directory.
|
|
86
|
+
for ext in _PAGES_API_EXTS:
|
|
87
|
+
if tail.endswith(ext):
|
|
88
|
+
tail = tail[: -len(ext)]
|
|
89
|
+
break
|
|
90
|
+
if tail.endswith("/index") or tail == "index":
|
|
91
|
+
tail = tail[: -len("index")].rstrip("/")
|
|
92
|
+
return "/api/" + tail if tail else "/api"
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
def _is_disabled_stub(text: str) -> bool:
|
|
96
|
+
"""A handler whose only responses are 404/501 is a disabled-endpoint stub.
|
|
97
|
+
|
|
98
|
+
Cal.com's community edition ships pages/api/stripe/webhook.ts as a handler
|
|
99
|
+
that always returns 404 ("not available in community edition"). A route that
|
|
100
|
+
can never do anything is not behavior evidence for any concept.
|
|
101
|
+
"""
|
|
102
|
+
statuses = _STATUS_RE.findall(text)
|
|
103
|
+
if not statuses:
|
|
104
|
+
return False
|
|
105
|
+
if not set(statuses) <= {"404", "501"}:
|
|
106
|
+
return False
|
|
107
|
+
# Real handlers verify, branch, or delegate; stubs are tiny and self-contained.
|
|
108
|
+
if len(text) > 800:
|
|
109
|
+
return False
|
|
110
|
+
return "constructEvent" not in text
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
def _extract_pages_api(file: WalkedFile) -> list[Signal]:
|
|
114
|
+
text = read_text(file)
|
|
115
|
+
if not _PAGES_HANDLER_RE.search(text):
|
|
116
|
+
return []
|
|
117
|
+
if _is_disabled_stub(text):
|
|
118
|
+
return []
|
|
119
|
+
route_path = derive_pages_route_path(file.rel_path)
|
|
120
|
+
return [
|
|
121
|
+
signal(
|
|
122
|
+
"route",
|
|
123
|
+
name=f"ANY {route_path}",
|
|
124
|
+
file=file,
|
|
125
|
+
confidence=0.78,
|
|
126
|
+
metadata={"method": "ANY", "path": route_path, "framework": "nextjs-pages"},
|
|
127
|
+
)
|
|
128
|
+
]
|
|
129
|
+
|
|
130
|
+
|
|
60
131
|
def extract_nextjs_signals(file: WalkedFile) -> list[Signal]:
|
|
132
|
+
if is_pages_api_route(file.rel_path):
|
|
133
|
+
return _extract_pages_api(file)
|
|
61
134
|
if not is_app_router_route(file.rel_path):
|
|
62
135
|
return []
|
|
63
136
|
text = read_text(file)
|
|
@@ -23,6 +23,16 @@ _MIDDLEWARE_RE = re.compile(
|
|
|
23
23
|
)
|
|
24
24
|
_BULLMQ_WORKER_RE = re.compile(r"""new\s+Worker\(\s*['"]([^'"]+)['"]""")
|
|
25
25
|
_BULLMQ_QUEUE_RE = re.compile(r"""new\s+Queue\(\s*['"]([^'"]+)['"]""")
|
|
26
|
+
# Custom task-runner infrastructure (v0.1.3, Cal.com proof run): Cal.com's Tasker
|
|
27
|
+
# (InternalTasker / RedisTasker / task-processor) is real background-job behavior
|
|
28
|
+
# that the BullMQ-only patterns above cannot see. Matches task-runner classes and
|
|
29
|
+
# enqueue/task-processing verbs - NOT bare "task"/"job" words (todo apps,
|
|
30
|
+
# employment taxonomy) and NOT service workers.
|
|
31
|
+
# NOTE: no `\w*` prefixes here - `\w*Tasker` backtracks catastrophically on long
|
|
32
|
+
# identifiers in bundled/minified files (took a 4s Cal.com scan to 135s).
|
|
33
|
+
_TASK_RUNNER_RE = re.compile(
|
|
34
|
+
r"Tasker|task[-_]processor|\btask_queue\b|\.enqueue\s*\(|\bprocessTasks?\s*\("
|
|
35
|
+
)
|
|
26
36
|
|
|
27
37
|
|
|
28
38
|
def extract_typescript_signals(file: WalkedFile) -> list[Signal]:
|
|
@@ -96,4 +106,9 @@ def extract_typescript_signals(file: WalkedFile) -> list[Signal]:
|
|
|
96
106
|
signal("queue", name=f"queue:{match.group(1)}", file=file, confidence=0.8)
|
|
97
107
|
)
|
|
98
108
|
|
|
109
|
+
if _TASK_RUNNER_RE.search(text):
|
|
110
|
+
signals.append(
|
|
111
|
+
signal("background_job", name="task-runner", file=file, confidence=0.75)
|
|
112
|
+
)
|
|
113
|
+
|
|
99
114
|
return signals
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: devtime-ei
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.3
|
|
4
4
|
Summary: Local-first Engineering Intelligence for software repositories
|
|
5
5
|
Author-email: Aviad Shakargi <aviad94@gmail.com>
|
|
6
6
|
Maintainer-email: Aviad Shakargi <aviad94@gmail.com>
|
|
@@ -8,7 +8,7 @@ License: Apache-2.0
|
|
|
8
8
|
Project-URL: Homepage, https://github.com/Shakargy/devtime
|
|
9
9
|
Project-URL: Repository, https://github.com/Shakargy/devtime
|
|
10
10
|
Project-URL: Issues, https://github.com/Shakargy/devtime/issues
|
|
11
|
-
Project-URL: Release Notes, https://github.com/Shakargy/devtime/releases/tag/v0.1.
|
|
11
|
+
Project-URL: Release Notes, https://github.com/Shakargy/devtime/releases/tag/v0.1.3
|
|
12
12
|
Project-URL: Demo, https://youtu.be/1Hiu3Y9J_SI
|
|
13
13
|
Keywords: devtools,cli,static-analysis,repository-analysis,engineering-intelligence,local-first
|
|
14
14
|
Classifier: Development Status :: 3 - Alpha
|
|
@@ -251,9 +251,9 @@ The agent gets three read-only tools: `list_concepts`, `explain_concept`, and
|
|
|
251
251
|
to run, and agent guidance). Local stdio only - no network listener, no write tools,
|
|
252
252
|
no source code returned, only evidence file paths.
|
|
253
253
|
|
|
254
|
-
DevTime is listed in the official MCP Registry as `io.github.
|
|
254
|
+
DevTime is listed in the official MCP Registry as `io.github.Shakargy/devtime`.
|
|
255
255
|
|
|
256
|
-
<!-- mcp-name: io.github.
|
|
256
|
+
<!-- mcp-name: io.github.Shakargy/devtime -->
|
|
257
257
|
|
|
258
258
|
## Installation
|
|
259
259
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/docs/decisions/0001-use-jwt.md
RENAMED
|
File without changes
|
|
File without changes
|
{devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/admin/permissions.ts
RENAMED
|
File without changes
|
|
File without changes
|
{devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/auth/middleware.ts
RENAMED
|
File without changes
|
|
File without changes
|
{devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/billing/stripe-webhook.ts
RENAMED
|
File without changes
|
|
File without changes
|
{devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/export/export-csv.ts
RENAMED
|
File without changes
|
{devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/src/jobs/email-worker.ts
RENAMED
|
File without changes
|
|
File without changes
|
{devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/tests/auth-login.test.ts
RENAMED
|
File without changes
|
{devtime_ei-0.1.2 → devtime_ei-0.1.3}/src/devtime/resources/demo-saas/tests/stripe-signature.test.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|