Resolve relative internal imports #23
No reviewers
Labels
No labels
domain:agents
domain:ci
domain:docs
domain:forgejo
domain:infra
domain:memory
domain:runtime
domain:signal
domain:ux
mode:operator-only
mode:patchwarden-iskra-approved
mode:safe-auto
priority:p0
priority:p1
priority:p2
priority:p3
review:claude-reviewed
review:codex-reviewed
review:dziadek-reviewed
review:needs-human
safety:external-write
safety:no-prod-mutation
safety:prod-impact
safety:secret-touch
status:blocked
status:codex-ready
status:merged:pending-evidence
status:needs-evidence
status:operator-needed
status:parked
tier:0-platform-substrate
tier:1-iskra-value-layer
tier:2-tools-products-modules
type:bug
type:chore
type:docs
type:feat
type:policy
type:research
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
pdurlej/fallow-ts!23
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "codex/wave2-relative-resolver"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Canary Context Pack
Product story
Wave 2 starts the conservative graph. Agents need to know which relative imports point to local files and which relative imports are unresolved, without pretending to emulate bundlers or frameworks.
What changed
graph.internalEdgesandgraph.unresolvedInternalEdgesto the report.index.*files..js/.mjs/.cjsimports to same-basename TS source files when present.Why it changed
This implements Wave 2 issue #7 and gives later Wave 2 work a deterministic graph foundation.
Files touched
src/analyze.tssrc/types.tssrc/index.tstests/analyze.test.mjstests/golden/basic-report.jsontests/fixtures/module-syntax/src/lazy.tsdocs/report-schema-v0.mdREADME.mdRelevant context
Roadmap:
docs/roadmap.mdWave 2. Stacked on the Wave 1 integration branchcodex/prewave-deterministic-contract.Runtime evidence
npm run buildnpm testnode dist/cli.js analyze --root . --format json --output /tmp/fallow-ts-report.jsongit diff --checkKnown constraints
The graph resolves only relative internal imports. It does not handle package imports, TypeScript
paths, packageexports, bundler aliases, framework virtual modules, or reachability.Explicit out-of-scope
No new findings, no dependency policy, no cycle detection, no agent-context format, no MCP server.
Requested decision
Review and approve as Wave 2 PR 1.
Merge blockers
Any false claim that this emulates bundler/package resolution, or a case where a supported relative import form is nondeterministic.
Closes #7.