Repository navigation
Expand file tree
/
Copy pathMANIFEST.in
More file actions
140 lines (135 loc) · 8.22 KB
/
Copy pathMANIFEST.in
File metadata and controls
140 lines (135 loc) · 8.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
# MANIFEST.in — controls what goes into the source distribution (sdist).
#
# The wheel gets its package data from setup.cfg [options.package_data] plus the
# custom BuildWithFrontend step in setup.py (which copies the pre-built
# src/kiro_crew/static/dist tree into build_lib). The sdist, however, is built
# from this file's rules, so we must explicitly ship the same data here —
# especially the built dashboard under static/dist/, which is .gitignored and
# deliberately excluded from the package_data globs (Vite emits content-hashed
# filenames, so it cannot be globbed by a stable pattern in setup.cfg).
# --- Project metadata / docs at the repo root --------------------------------
include README.md
include CHANGELOG.md
include LICENSE
include pyproject.toml
include setup.cfg
include setup.py
# --- Top-level package data files (mirror [options.package_data]) ------------
include src/kiro_crew/py.typed
include src/kiro_crew/BUILD_VERSION
include src/kiro_crew/slack-manifest.yaml
include src/kiro_crew/crewmate_prompts.json
# --- The built dashboard SPA --------------------------------------------------
# Excluded from package_data globs and .gitignored, but it MUST ship so that a
# `pip install .` / sdist install serves the dashboard with no npm/node present.
recursive-include src/kiro_crew/static *
# ...but not the immutable copies staging keeps beside it: static/dist links
# to one of them and ships through the link.
prune src/kiro_crew/static/.dist.*
# --- Other package_data directories ------------------------------------------
recursive-include src/kiro_crew/config *
# Crew webview templates. The sdist is built from THIS file, so an entry in
# setup.cfg alone would still ship a wheel-only fix: `python -m build` builds the
# wheel from the sdist, so a template missing here is missing everywhere.
recursive-include src/kiro_crew/agent_panel_templates *.html
# Derived-card pages (e.g. the pipeline board), for the same reason: a page missing
# from the sdist is missing from the wheel built out of it, and a page that never
# shipped renders an empty card with every gate green. Kept out of dashboard_templates
# on purpose -- that is the TemplateSpec registry package, and a card page that does not
# use that framework must not sit under the gate that requires a registry row.
recursive-include src/kiro_crew/dashboard_card_pages *.html
# Dashboard-template pages, for the same reason: a page missing from the sdist is
# missing from the wheel built out of it, and a page that never shipped renders an
# empty card with every gate green.
recursive-include src/kiro_crew/dashboard_templates *.html
# The run-time templates' manifests. The recursive include above already reaches their
# pages; a template directory is its page AND its manifest, and `load_template` refuses
# one without the other -- so without this line the sdist ships half-templates and the
# registry discovers none of them.
recursive-include src/kiro_crew/dashboard_templates/builtin *.json
# A template's upkeep helpers (`helpers/*.py`): not a package, so only these lines ship
# them, and `load_template` refuses a manifest whose helper is missing.
recursive-include src/kiro_crew/dashboard_templates/builtin *.py
recursive-include src/kiro_crew/connections *.json
recursive-include src/kiro_crew/data *.json
recursive-include src/kiro_crew/decisions/local_servers *.py *.txt
recursive-include src/kiro_crew/apps *.json
# ATTRIBUTION.md / README.md under a builtin app carry the upstream-author credit
# for apps ported from third-party work; Apache-2.0 attribution must ship.
recursive-include src/kiro_crew/apps *.md
recursive-include src/kiro_crew/eval/scenarios *.json
recursive-include src/kiro_crew/eval/bench/data *.json
recursive-include src/kiro_crew/docs *.md
# The generated settings registry beside those docs (see settings-deeplink.md).
# `[options.package_data]`'s `docs/*.json` covers the WHEEL only; the sdist is
# built from this file, and `python -m build` builds the wheel FROM the sdist, so
# a missing line here drops the file from every published artifact.
recursive-include src/kiro_crew/docs *.json
recursive-include src/kiro_crew/tests_fixtures *
# Gate extensions loaded into a harness at spawn (see [options.package_data]).
recursive-include src/kiro_crew/agent_sdk/gate_extensions *.ts
recursive-include src/kiro_crew/agent_sdk/gate_extensions *.mjs
# --- Pruning: never ship test trees, vendored node deps, or build cruft ------
prune test
prune tests
# In-package `tests/` is deliberately NOT pruned: `code_review_sage` (16 files) and
# `issue_radar` (11) ship theirs, so that is the established convention for a builtin app and
# changing it belongs in its own change.
prune website/node_modules
prune build
prune dist
prune .hypothesis
prune temp-screenshots
prune bench_baselines
global-exclude __pycache__
global-exclude *.py[cod]
global-exclude *.so
global-exclude .DS_Store
recursive-include src/kiro_crew/deploy/skills *
# Re-include the vendored llama.cpp runtime AFTER the excludes: the
# `global-exclude *.so` above strips exactly `libllama.so` (the Linux libs whose
# names end in `.so.0` and the macOS/Windows libs escape the glob), and
# `python -m build` builds the wheel FROM the sdist, so without this line every
# published Linux wheel ships a vendored llama_cpp that cannot load its own
# shared library and in-process embeddings fail at gateway startup.
recursive-include src/kiro_crew/_vendor/llama_cpp_libs *
# The AWS Control crew container image's build context, re-included AFTER the excludes
# for the same reason as the block above, and it is the ORDERING that does the work here.
# `python -m build` builds the wheel from the SDIST, so a file absent from this file is
# absent from every published wheel whatever `package_data` in setup.cfg says. The tree
# holds Dockerfiles, `requirements*.txt`, CONTRACT.md and a vendor placeholder, none of
# which any pattern above reaches: `*` does not cross a path separator, so
# `recursive-include src/kiro_crew/apps *.md` matches nothing under `crew/runtime/`
# beyond `.md`, and the Dockerfiles have no extension at all.
#
# Without these lines the image builds from a source checkout and silently cannot build
# from an installed copy, with nothing raising at install time to say so.
#
# Four rules naming what the image needs, not one `recursive-include <runtime> *`. That
# one also carried `container_tests/` -- a 4,000 line suite of the image's own tests --
# into every sdist and so into every wheel and DMG, where nothing can run it: those
# tests exercise a Linux container's supervisor, and the machine that installed the app
# never runs that container. Written as an allowlist rather than the broad rule plus a
# `prune`, because a `prune` here would be the last exclude in the file and would put
# every rule above it back out of scope -- distutils applies these in file order, which
# is the same reason this block sits at the end.
#
# `.dockerignore` needs its own rule: it starts with a dot, so `Dockerfile*` does not
# reach it, and it is part of the build context's definition rather than an optional
# extra -- without it a build from an installed copy uploads a different context than a
# build from a checkout does.
recursive-include src/kiro_crew/apps/builtins/aws_control/crew/runtime Dockerfile*
recursive-include src/kiro_crew/apps/builtins/aws_control/crew/runtime .dockerignore
# The guest's SSM agent configuration. Two settings in it are load-bearing
# (the hybrid-activation identity pin and credential sharing), it is read FROM
# DISK when the MicroVM recipe is assembled, and its suffix is matched by no
# other rule here.
recursive-include src/kiro_crew/apps/builtins/aws_control/crew/runtime microvm-ssm-agent.json
recursive-include src/kiro_crew/apps/builtins/aws_control/crew/runtime/container *
# The placeholder ONLY, so the directory exists in an installed copy. Named rather
# than globbed because a wheel is STAGED into this directory to build a MicroVM
# image: a rule reaching it packages that wheel inside the next one, which adds
# ~36 MB and puts the following build past the 64 MiB recipe ceiling. `*` here is
# not harmless even for a wheel-only build -- `include_package_data` reads this
# file through the egg-info manifest, so a pattern here lands in the wheel too.
recursive-include src/kiro_crew/apps/builtins/aws_control/crew/runtime/vendor .gitkeep